CODE 98214 ACADEMIC YEAR 2025/2026 CREDITS 5 cfu anno 2 ENGINEERING TECHNOLOGY FOR STRATEGY (AND SECURITY) 10728 (LM/DS) - GENOVA 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 Il modulo copre gli elementi di programmazione per videogiochi. Gli studenti apprenderanno le basi della programmazione sia 2D che 3D insieme alle tecniche utilizzate dai più recenti strumenti CAD per la progettazione di videogiochi. Dopo un'introduzione sui vari tipi di simulazione, un motore di gioco di base per allegare i componenti della programmazione di giochi 2D Vengono inoltre fornite le basi della grafica 3D e del videogioco 3D attraverso l'utilizzo di uno strumento grafico CAD e di un motore di gioco AAA. Un quinto del credito è ottenuto attraverso un progetto finale. 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. LESSONS LESSONS START https://corsi.unige.it/10728/p/studenti-orario Class schedule The timetable for this course is available here: Portale 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. 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 Good health and well being Industry, innovation and infrastructure Sustainable cities and communities