Skip to main content
CODE 98214
ACADEMIC YEAR 2023/2024
CREDITS
SCIENTIFIC DISCIPLINARY SECTOR ING-INF/01
LANGUAGE English
TEACHING LOCATION
  • GENOVA
SEMESTER 1° Semester
TEACHING MATERIALS AULAWEB

OVERVIEW

Modeling and simulation are fundamental tools for design, training and learning in general. Video games are a particular type of simulation, where additional rules and strategies can be introduced to improve performance in the above-mentioned application areas. In addition, video games require great computing performance, normally achieved through the joint use of optimized hardware / processor architectures and high-level software development tools. The teaching therefore addresses the development of simulations through state-of-the-art 2D and 3D game development  platforms

AIMS AND CONTENT

LEARNING OUTCOMES

The course covers the elements of programming for videogames. Students will learn the basics of both 2D and 3D programming along with the techniques used by the newest CAD tools for videogame design. After an introduction about the various types of simulation, a basic game engine for attaching the components of 2D games programming is presented. The basic of the 3D graphics and 3D videogame through the usage of a CAD graphics tool and an AAA game engine is also provided. One fifth of the credit is obtained through a final project.

AIMS AND LEARNING OUTCOMES

The aim of the course is to provide the basis for the design and development of software simulation. The student is introduced to different concepts of computer graphics (rendering, collision detection, illumination models, etc.) and event-based programming (game loop, co-routines, etc.) and he is supported through extensive exercises during lectures. The course aims to train a professional figure capable of designing and implementing complex software simulation using video game technologies.

PREREQUISITES

The student should have some programming knowledge.

TEACHING METHODS

The course is composed of a set of frontal lessons and a set of practice sessions. During the frontal lesson, the teacher presents the topics providing also examples of live code that are tested on a real game engine (e.g. Unity 3D). Students can use their own laptops during the lecture in order to reproduce what is proposed by the teacher. During the practice sessions, the students have to face up with real problems that they should solve by applying the techniques learnied during the lectures.

SYLLABUS/CONTENT

The course is divided into two parts: the first deals mainly with 2D graphics using graphics engines of reduced computational load (for example, they can also be used on microcontrollers). The second part of the course deals with the design of simulations and 3D games mainly using the Unity3D platform, along with advanced I/O devices such as Azure Kinect, Hololens 2, sensors and actuators in general

The various examples developed in class address among others:

• Installation and configuration of tools and development environments (visual studio, monogame and components)

• Classes, constructors, initializations, updates from asynchronous events, arrays of elements

• Lists of objects, sound effects, collision management, examples

• Sprite, graphic screens

• Level / switch case management

• Game logic

• Management of movements and controls

• Tracking algorithms

• The Xamarin platform and Visual studio

• Management of sensor data

• Unity environment, main functions, views, packages

• Creation, use and removal of objects

• Spawn manager

• Sound and effects

• Game play mechanics

• User interface

• Project optimization and improvement

• Export / import project

• Data persistence

• Visual scripting

• Visual scripting application

 

RECOMMENDED READING/BIBLIOGRAPHY

Lecture notes (from AulaWeb)

Books (as references):


B. Tristem,‎ M. Geig. Unity Game Development in 24 Hours. Sams Teach Yourself

J. Hocking. Unity in Action: Multiplatform Game Development in C# with Unity 5. Manning

J. Gregory. Game Engine Architecture CRC Press, 3rd ed.

TEACHERS AND EXAM BOARD

Exam Board

MARCO RAGGIO (President)

RICCARDO BERTA

FRANCESCO BELLOTTI (President Substitute)

LESSONS

Class schedule

L'orario di tutti gli insegnamenti è consultabile all'indirizzo EasyAcademy.

EXAMS

EXAM DESCRIPTION

Exam consists in developing of an application project addressing interactive simulation, to be agreed with the teacher and oral discussion. In the commitment required for the project, specific needs for working students will be taken into account.

ASSESSMENT METHODS

During the oral exam the student, on the basis of the developed project, will have to show understanding of the topics covered in the course, discuss the design choices, with the aid of the computer analyze the results obtained.

Exam schedule

Data Ora Luogo Degree type Note
18/12/2023 15:00 GENOVA Orale
08/01/2024 15:00 GENOVA Orale
26/01/2024 15:00 GENOVA Orale
15/02/2024 15:00 GENOVA Orale
11/06/2024 15:00 GENOVA Orale
27/06/2024 15:00 GENOVA Orale
11/07/2024 15:00 GENOVA Orale
24/07/2024 15:00 GENOVA Orale
07/08/2024 15:00 GENOVA Orale
26/08/2024 15:00 GENOVA Orale
13/09/2024 15:00 GENOVA Orale

FURTHER INFORMATION

Students with learning disorders ("disturbi specifici di apprendimento", DSA) will be allowed to use specific modalities and supports that will be determined on a case-by-case basis in agreement with the delegate of the Engineering courses in the Committee for the Inclusion of Students with Disabilities.

Agenda 2030 - Sustainable Development Goals

Agenda 2030 - Sustainable Development Goals
Good health and well being
Good health and well being
Industry, innovation and infrastructure
Industry, innovation and infrastructure
Sustainable cities and communities
Sustainable cities and communities