How to make a cutscene and / or replay function

I’ve been browsing the web for quite some time, searching for a good solution to this, but I can’t really find what I want.

(I’m using Blender for my models and animations)

So, here’s my problem:

I’ve never tried making a cutscene before, and I’m not that good with animations either. I’ve been thinking about showing a “pre rendered” animation as a videotexture, but what if the animation has to change, depending on the player’s clothes or surroundings?

I then thought I’d just cut the player’s character control, and just play an animation. But then another problem occured. I can move my my player around with his transform properties, but that won’t activate his walk animation. I could of course do that manually, but I was wondering if there was an easier approach?

Or is there another solution?

I then looked at a replay function (as in cod or Overwatch), and found 2 solutions:

  1. Make a script save position, transform and animation, and then recreate the scenario. This seems like an overwhelmingly huge task, and it will probably take a lot of space?

  2. Making a deterministic replay. I seemed like I had to make A LOT of changes to my game, to make that work. (My own collision system, the player control, for example).

  3. I was wondering, if you could make the camera record while playing, and then simply show the last part when you die?

I don’t want to use any assets for this, as I want to learn how to make it myself, and I’ve had a lot of problems with them. First reason is the most important, though.

A 3rd option, alternate to pre-rendered is to animate the entire cut-scene in a 3D app, then import the entire scene into Unity and play the entire scene in Unity. One special note - The camera will have to be animated from position to position over one keyframe.