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.
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.