A game engine is a software framework that simplifies game development by providing tools, libraries, and functionalities for tasks like graphics rendering, audio management, physics handling, and AI implementation. While building an engine from scratch is an option, existing game engines offer advantages such as time savings, cross-platform compatibility, and support from active developer communities.
In our course, we've chosen Unity as the game engine for its user-friendly interface, versatility in covering 2D and 3D development, and extensive community support and documentation. By leveraging Unity, we aim to provide a practical and efficient learning environment, empowering students to transition smoothly from course projects to independent game development ventures.
Unity can be installed on your preferred platform, be it Windows, Mac, or Linux, by following the instructions provided on Unity's webpage. For efficient project management and version control, it is advisable to utilize Unity Hub. In this course, we exclusively employ the latest LTS - meaning Long Term Support - version of Unity, specifically version 2022.3.18f1 at the time of recording, but feel free to choose any version suitable for your own needs.
It is also advisable to install your chosen Integrated Development Environment (IDE for short) before initiating a new project. In this tutorial, we utilize Microsoft's lightweight open-source code editor, Visual Studio Code, which we also highly recommend. However, there are alternative options available based on your preferences. If you opt for Visual Studio Code, ensure that you have the requisite extensions for Unity development installed, readily accessible in the Visual Studio Code marketplace.
Unity can be found from: https://unity.com/download
Visual Studio Code can be accessed from for example: https://code.visualstudio.com/download
An integral part of game development is prototyping. A prototype is like a computational sketch in artwork.
Before starting to develop your new massive multiplayer online role-playing action shooter game, which you hope will be the next big hit for decades to come, it's wise to take small steps and test some core concepts in these preliminary project prototypes.
Try to come up with a simple game idea that you can work on while following this course. A good rule of thumb is that you should be able to explain the core concept of the game in a single sentence. For example, "It's a top-down game where you fly a spaceship, avoiding and shooting asteroids." This sentence should explain the entire game mechanism without referencing other games. For instance, a poor description would be "Like Minecraft but better."
Set up your development environment as instructed above, and create your first empty game project. Give it a working title and come up with one sentence to describe it.