Degree in Computer Engineering

Study Computer Engineering at La Salle and become a professional with the abilities to work with the latest technologies and new products, designing, implementing and maintaining computer systems for any sector of economic activity

Video Game Programming

The subject aims to teach students the basics of programming of a real-time video game engine. In the videogame world, the most commonly used language is C ++. In this sense, this subject will take advantage of the opportunity to enrich the student's knowledge of this language, particularly in terms of memory use, and the correct use of inheritance and polymorphism. At the end of the course, each student will have created a game, implemented in its own engine. Ideally, this engine could be reused in future courses (such as the 4th year course "Production of Video Games", or in a TFG).
Type Subject

Titular Professors

Previous Knowledge

Students need a good knowledge of object-oriented programming. Knowledge of programming with pointers is also required (e.g. in C). It is useful (but not essential) that the student has completed the 'Graphics I' course.


The subject will allow the student to design and program a 3D game engine, capable of:
• managing and move 3D objects in real time
• rendering high-quality lighting effects, and other graphic effects
• capturing and managing user input
• managing mechanics so that the game responds correctly to this input


1. Introduction
2. Resources
3. Shaders
4. Game Loop
5. Scene Graph
6. Scene
7. AI
8. Camera
9. Bullets and Collisions
10. IU
11. HUD
12. Particles, guide deploy.


Throughout the course, theoretical concepts related to the programming of games will be introduced .

An incremental practical will be developed by all students, working either individually or in pairs.


Practical: 100%
O Delivery 1 - Parse ASE format: 5%
O Delivery 2 - GDD and Prototype: 25%
O Delivery 3 - Final Game: 70%

Evaluation Criteria
Basic Bibliography
Additional Material