Showing a gameplay sample in a tutorial modal window

Say you are teaching a player an enemy mechanic by just showing it in action within a modal window. How would you go about accomplishing that? Would you play a recorded video or would you add a scene within the modal with the enemy doing its thing? Or is there a better way?

Showing a recorded video is the simplest way to implement it.

Been done this way in many games. Devil May Cry 5 did that, for exxample.

Adding a scene is a problem, because you cannot have “Parallel worlds”, as far as I know. Meaning you cannot load SceneA, then SceneB into the same coordinates but in such way that each one of them will remain in their own “World” and will be unable to interact with each other. All scenes exist in the same space, and while you can separate them with layers, layers have their limits.

Meaning your tutorial scene will have to be loaded into the same level where the player is located, but at a location far away from the player, so he won’t be able to see, hear or interfere with it.

And even in this scenario it will likely run at slower framerate than prerendered video.

So I think the video is the way to go, unless you have some specific requirements.

2 Likes

I have absolutely no idea why you even think a scene would need to be loaded to the same coordinates. What would be the purpose of doing so? What do you mean layers have their limits, they don’t even apply here? All you’d need to do is spawn a small room with the enemy somewhere out of sight and put a render texture into the UI. And you’d have a real-time ‘video’ without having to record anything.

It is not a good idea to open your response with a combative statement. For example, if you have no idea why that would be necessary, that’s not my problem, it is yours.

What I said is that you cannot completely isolate environments from each other. Ideally, you’d really want to. You can’t.

And speaking of render textures, the performance is certainly going to be worse than video stream. And of course, if the video fragment must show the environment the player is already in, or something that is present on another level, then it is significantly easer to just slap the video in. And you can just record gameplay element yourself without wasting time trying to make scripted sequence play in exact way you need. Because you won’t need to script anything.