IT-Universitetet i København
 
  Tilbage Kursusoversigt
Kursusbeskrivelse
Kursusnavn (dansk):Engine-programmering 
Kursusnavn (engelsk):Engine Programming 
Semester:Efterår 2008 
Udbydes under:cand.it., medieteknologi og spil (mtg) 
Omfang i ECTS:15,00 
Kursussprog:Engelsk 
Kursushjemmeside:https://learnit.itu.dk 
Min. antal deltagere:15 
Forventet antal deltagere:25 
Maks. antal deltagere:40 
Formelle forudsætninger:You must have passed the course Basic Programming (Danish : "Grundlæggende programmering"), the course Introduction to Programming - Concepts and Tools or equivalent. This implies the following:

JAVA itself is not essential. The essential skills are:
- Knowledge of simple data structures.
- Ability to construct simple programs.
- Ability to assess on the efficiency and the correctness of a program.
- A structured approach to testing of small programs.

You must have passed a project with some programming content (you should at least have written 100+ lines of code).

If you have previously followed either the old Game Programming or Computer Graphics course or equivalent, please contact the responsible teacher for counselling.
 
Læringsmål:The course objective is to give you a practical introduction to the relevant theories behind game engine technologies. The focus of the course is on the design and implementation of game engines and not on the actual design and implementation of games.

After the course you can:
- implement visualization of computer graphics using the OpenGL API
- implement various basic animation techniques
- make a basic physics simulator for games
- make a collision detection system
- make and use data structures for handling spatial information
- make efficient code utilizing the hardware optimally
- address real time aspects
- describe basic game system architecture
- create bindings to scripting systems
- write programs in C++ 
Fagligt indhold:The focus will be both on the theory behind game engines as well as on programming, using the C++ language and the OpenGL application programming interface (API). We will also study existing engines and how to extend such engines with new functionality.

The course topics includes:
1. Basics of game engines (what can they do for you)
2. Introduction to computer graphics (scene, camera, lighting, programming CPU's, etc)
3. Introduction to basic animation techniques
4. Introduction to physics simulation (forces, collision, etc.)
5. Game engine design
6. Data structures and algorithms for games
7. Scripting languages and engines (the use of high level gaming languages with engines)
8. How to make extensions to an existing game engine 
Læringsaktiviteter:14 ugers undervisning bestående af forelæsninger og øvelser

The course will consist of lectures combined with practical exercises. During the practical exercises you will write small modules and programs to solve specific problems related to games and game engines.

The course includes mandatory production assignments in which you will use your acquired knowledge to implement specific game related techniques common for game engines.

------------------------------------
I intro-ugen (uge 35) er der ændrede kursustidspunkter ¿ se hvordan undervisningen er tilrettelagt her:
link til skemaoplysninger
Skemaoplysningerne for efterårssemesteret vil være tilgængelige fra august måned.

In the intro week (week 35) the course time table is changed ¿ see the schedule here:
link to the time table
The schedule for the fall term will be available in August.

-------------------------------------

Information om studiestruktur / Information about study structure
Dette kursus er en del af MTG-specialiseringen Spilprogrammering, som du kan finde beskrevet her:
MTG studiestruktur
For at blive cand.it. i MTG skal du bestå MTG¿s backbonekurser, og desuden gennemføre en 22,5 ECTS specialisering samt to 7,5 ECTS valgfag.

This course is part of the MTG specialization Game Programming ¿ find it described here:
MTG study structure
In order to graduate as a MSc in MTG, you need to pass the MTG backbone courses, and also take a 22,5 ECTS specialization and two 7,5 ECTS electives. 

Eksamensform og -beskrivelse:X. experimental examination form (7-scale; external exam), 7-trins-skala, Ekstern censur

The course includes mandatory production assignments in which you will use your acquired knowledge to implement specific game related techniques common for game engines.

Two in-class tests will also be carried out so students can assess their own progress during the semester. These are not mandatory to take nor will their performance affect qualification for the final exam, however participation is encouraged.  

Litteratur udover forskningsartikler:To be announced. 
 
Afholdelse (tid og sted)
Kurset afholdes på følgende tid og sted:
UgedagTidspunktForelæsning/ØvelserStedLokale
Mandag 13.30-15.30 Forelæsning ITU 2A18
Mandag 16.00-18.00 Øvelser ITU Gamelab
Onsdag 13.30-15.30 Forelæsning ITU 2A18
Onsdag 16.00-18.00 Øvelser ITU Gamelab

Eksamen afholdes på følgende tid og sted:
EksamensdatoTidspunktEksamenstypeStedLokale
2008-12-17 Written work to be handed in no later than 3 PM Skriftlige arbejder ITU The Examination Office
2009-01-14 Tidspunkt oplyses senere Mundtlig eksamen ITU Lokale oplyses senere
2009-01-15 Tidspunkt oplyses senere Mundtlig eksamen ITU Lokale oplyses senere
2009-01-16 Tidspunkt oplyses senere Mundtlig eksamen ITU Lokale oplyses senere