My Journey to Make Game with Unity
Games are exciting and many people like playing games. Unity is one of the most famous game engines in the world. Unity is a 2D/3D engine and framework that gives you a system for designing game or app scenes for 2D, 2.5D and 3D, allowing you to interact with them via not only code, but also visual components, and export them to every major mobile platform and a whole lot more.
In this spring semester, I had a chance to take one game course which I learned how to make game with Unity and Unreal Engine. In this course, I had a wonderful experience in making small games by myself, enjoying both making and playing the game.
Here is a game called “Dare Course” on the Internet, which inspired me a lot for my final project.
This is an adventure game above water I made with Unity. Player can control the ball to get through the obstacle with traps in this line. Player will fail once fall into water and will win after triggering the last pink cube in the boat.
This is the default Unity window. You will see:
Project: All the files in your project. You can drag and drop from Explorer into Unity to add files to your project.
Scene: The currently open scene.
Hierarchy: All the game objects in the scene. Note the use of the term GameObjects and the GameObjects dropdown menu.
Inspector: The components (properties) of the selected object in the scene.
Toolbar: To the far left are Pan, Move, Rotate, Scale and in the center Play, Pause, Advance Frame. Clicking Play plays the game near instantly without having to perform separate builds. Pause pauses the game, and advance frame runs it one frame at a time, giving you very tight debugging control.
Console: This window can become somewhat hidden, but it shows output from your compile, errors, warnings and so forth. It also shows debug messages from code; for example, Debug.Log will show its output here.
All the game objects are in the hierarchy window.A GameObject is pretty simple as it pertains to the Inspector window. A GameObject has a Name, a Tag (similar to a text tag you’d assign via a FrameworkElement.Tag in XAML or a tag in Windows Forms), a Layer and the Transform (probably the most important property of all).
In my game, my objects have shaders, particle effects and animation which I learned from the game course.
The figure above is a shader graph for water.
This is another shader to quiz which can adjust color, opacity and texture. I create some shaders added to material for my game using shader graph like this. Shader Graph opens up the field for artists and other team members by making it easy to create shaders. Simply connect nodes in a graph network and you can see your changes instantly. It can be used with the the Universal Render Pipeline and High Definition Render Pipeline.
Let’s go to particle effects. The particle effects in Unity is an effect we can simulate moving liquids, smoke, clouds, flames etc. To add a particle system to an existing GameObject, select the GameObject and in the inspector window, select the Add Component button, and type particle system in the. search field.
In addition, we can talk about animation. I create some animations in this game using this by adjusting the position in different time and reduce samples to reduce speed of a cycle. I add this kind of animation to make some traps moving back and forward, up and down.
In another assignment in my game course, I create Sprite Sheet Animation and cycle animation.
All of above is what I learned from my game course this semester. Mastering the basic knowledge of using Unity and C# programming language to control the GameObjects are enough to start making a small game. This progress is really attractive and interesting. The improvement of different kinds of skills is ongoing, can’t wait a new journey with Unity and Unreal Engine!