20810525 - GAME DEVELOPMENT

The course aims to illustrate the modern architectures of game engines and to provide technical and methodological solutions for the design and development of video games. The mathematical and physical foundations upon which game engines are based will be presented, followed by a study of the anatomy of a game engine. During the course, game engines that have been established as industrial standards will be used, and technical aspects such as programming, scripting, hardware rendering, user interfaces, and backend services will be studied. The course will also cover fundamental themes essential for the effective development of a video game, such as narrative, storytelling, animation, and gameplay. It seeks to couple methodological aspects with technological aspects through the development of specific software projects.
teacher profile | teaching materials

Programme

The Game Development course, aimed at undergraduate students, seeks to provide a multidisciplinary foundation in the principles, technologies, and methodologies underlying modern video game development. The course begins with an introduction to the field and its historical evolution, followed by the mathematical foundations required for developing interactive applications and an overview of the architecture of modern game engines. A central part of the course is devoted to the use of the most widely adopted development platforms, including Unreal Engine, Unity, and Godot, with particular emphasis on visual programming through Blueprints, game mechanics and design, interactive storytelling, and gameplay development. The course also explores user interface (UI) design, player engagement and retention techniques, backend services, and privacy-related issues. The syllabus further covers the fundamentals of performance-oriented programming, efficient data structures, GPU architectures and shader development, as well as the principles of digital animation and physics simulation applied to video games. A distinctive feature of the course is the inclusion of lectures delivered by internationally renowned industry professionals and guest speakers, coming from the video game, technology, and creative industries. These sessions give students the opportunity to engage directly with experts who have extensive professional experience at leading companies and institutions, gaining insight into the skills, technologies, and methodologies employed in real-world production environments. Previous editions have featured professionals from major international organizations such as Rocksteady Studios, Ubisoft, and AMD, as well as prestigious institutions such as the Santa Cecilia Conservatory in Rome. The curriculum also includes the study of networking architectures and multiplayer systems, covering both the fundamentals of network communication and more advanced challenges related to synchronization and performance. Finally, students are introduced to the principles of artificial intelligence applied to video games. Overall, the course aims to provide students with a solid theoretical and practical foundation for understanding and addressing the different stages of video game development, fostering technical, creative, and design skills that can support both further academic studies and future professional careers in the video game industry.

Prerequisiti

Programming, basic mathematics.

Core Documentation

- Game Engine Architecture, di Jason Gregory
- The Game Narrative Toolbox, di Heussner, Finley, Brandes Hepler, Lemay


Attendance

Not obligatory.

Type of evaluation

Individual or group project. Student assessment is based on the Dublin Descriptors and takes into account the level of knowledge, understanding, and critical processing of the topics covered in the course. Students who demonstrate that they have acquired the fundamental concepts and are able to apply them in simple contexts will receive a passing grade. Average grades will be awarded to those who, in addition to mastering the basics, show the ability to analyze and independently elaborate on more complex concepts. The highest grades are reserved for students who demonstrate in-depth understanding, synthesis skills, critical thinking, and autonomy in solving problems, including new ones or those not explicitly addressed during the course.