Intro Scene videos

This page describes the creation of introduction videos which show the player how to interact with the game.

Problem

At the current state of the game, my teammate has created a dialogue box telling the player how to proceed with the game.

Dialogue box

However, the dialogue consists a lot of text and to a new player who has not seen the simulation game yet, the instructions might be considered not understandable or as too much text.

Question: How can I make the dialogue more understandable to players who have no experience with the look of the game?

Answer: By adding short instructional videos along with the text instructions in the Dialogue box in order to help the player take a glance of how the game is played before he has started the simulation himself.

Solution and Methodology

#1 Technical research (Library~Literatury research)arrow-up-right

I researched on how to add a gif like video to the game, ad it turned out two solutions are possible: (resource)arrow-up-right

  • frames to the Unity animator

  • video looping file

Becuase of time restrictions the short videos seemed the faster way for me to go with.

#2 Prototyping (Workshop~Prototyping)arrow-up-right

So I created short gameplay videos representing the steps we have added to the Dialogue box.

First, I created a placeholder for the video (A Raw Image which would be our canvas display). Then, a VideoPlayer to hold the video file. I added the same Render texture to both objects.

Explanation of Video Player setup
The video Being displayed in the Game screen

In order to have multiple videos I created all the other needed VideoPlayer objects, all of which are also having the same renderTexture. In that way whenever I activate the VideoPlayer object it would show on the same "screen". (resource)arrow-up-right

Switching on and off different textures (concept)

In order to do that I created a List<GameObject> which is holding the needed video player at the exact same index as the message, I want to display the video to. In case there is no video I leave it empty.

Inspector Video List setup

From the Script which controls the change of the messages, we also iterate through the Videos list and if the Object is not null we display to activate the video player to be shown on the screen. If no video is needed we deactivate the "screen" (Raw Image with the video as a texture).

Last but not least I adjusted the render texture size to make the resolution of the videos better. (resource)arrow-up-right

Making the render texture with higher resulution

Result

Some of the video tutorials in the final version

Quality of the result

The video tutorials ended up having good enough quality and speed to be understandable. Testing is needed to decide if the user needs any other video to be added to the introduction dialogue.

Next steps

One of the major next steps I need to perform is adjusting the video setup to be working with WebJL builds because currently, they are not playing. A possible solution I have reserached into can be found here.arrow-up-right

Last updated