CODE 72317 ACADEMIC YEAR 2021/2022 CREDITS 10 cfu anno 1 INGEGNERIA ELETTRONICA 8732 (LM-29) - GENOVA SCIENTIFIC DISCIPLINARY SECTOR ING-INF/01 LANGUAGE Italian (English on demand) TEACHING LOCATION GENOVA SEMESTER Annual TEACHING MATERIALS AULAWEB OVERVIEW Modeling and simulation are one of the most powerful tools for design and simulation. Video games are a transposition of the simulation, where instead of simulating real elements, imaginary realities are simulated with imaginary rules. The course presents computer graphics and simulations implementation using state-of-the-art development tools for 2D and 3D games AIMS AND CONTENT LEARNING OUTCOMES The course provides algorithms and tools to develop simulations using a game engine. AIMS AND LEARNING OUTCOMES The aim of the course is to provide the basis for the design and development of software simulatoin. 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 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 students should have advanced knowledge of programming. 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 with 2D graphics using a simple open source graphics engine. The engine is also suitable for applications on microcontrollers. The second part of the course deals with the design of simulations and 3D games using the Unity3D platform. The titles of the main contents discussed during frontal lessons are provided in the following list. Each title is associated with a relevatn link where it is possible to obtain the lecture notes: Lecture 01 - Unity Concepts, GUI and Models [LINK] Lecture 02 - Terrain and Environment [LINK] Lecture 03 - Lights and Cameras [LINK] Lecture 04 - First complete game (Amazing Racer) [LINK] Lecture 05 - Scripting [LINK] Lecture 06 - Second complete game (Chaos Ball) [LINK] Lecture 07 - Character Controller [LINK] Lecture 08 - 2D Games and UI [LINK] Lecture 09 - Third Game (Captain Blaster) [LINK] Lecture 10 - Animations [LINK] Lecture 11 - Fourth complete game (The Runner) [LINK] Lecture 12 - Mobile and Deploy [LINK] RECOMMENDED READING/BIBLIOGRAPHY Lecture notes (from AulaWeb) Books (as references): 01 - B. Tristem, M. Geig. Unity Game Development in 24 Hours. Sams Teach Yourself 02 - J. Hocking. Unity in Action: Multiplatform Game Development in C# with Unity 5. Manning 03 - M. Buckland. Programming Game AI By Example. Jones & Bartlett Learning. TEACHERS AND EXAM BOARD ALESSANDRO DE GLORIA Ricevimento: The student reception takes place in the days and hours established from time to time with the students via email. MARCO RAGGIO Exam Board RICCARDO BERTA (President) ALESSANDRO DE GLORIA (President) MARCO RAGGIO (President Substitute) LESSONS LESSONS START https://corsi.unige.it/8732/p/studenti-orario Class schedule The timetable for this course is available here: Portale EasyAcademy EXAMS EXAM DESCRIPTION The exam is an oral examination on the theoretical topics covered during lectures. In particular, the student has to provide fluency in the description of the main concept of interactive simulations. In particular, to prepare the oral examination, the student can decide to elaborate on a particular topic or to create a working game demonstrator. ASSESSMENT METHODS During the oral exam, the teacher asks the student to illustrate some concepts learned in class. For each concept, the student has to present the definition, the conditions of applicability and pros/cons in relation to other approaches. During the examination, the teacher verifies that the concepts have been learned at a level of knowledge that allows the student to apply them in real cases. Exam schedule Data appello Orario Luogo Degree type Note 17/02/2022 10:00 GENOVA Esame su appuntamento 16/09/2022 10:00 GENOVA Esame su appuntamento