classroomHere is a picture to show you the atmosphere at one of the programming classes. Game programming course lasts two years and is divided in following sections:

- General programming - here you will learn basic C++ programming, classes, functions, dynamic structures like lists, binary trees etc. You will be given basic knowledge of how major things in games operate like for instance rendering process, update process, initialization etc. Duration of this course is 2 months, or 70 hours of pure practical work.

- Game programming basics - here you will learn things like creating main window application, how visual work, initialization of DirectX, using lights in DirectX, making FPS camera, dynamic creation of simple objects, using textures etc. Duration of this course is 1 month or 40 hours of pure practical work.

- General game programming - here you will learn basics of making an input engine, callbacks, 3d sound playing, dynamic sound synthesizing. You will learn how to put your engine code in .dll files. You will also learn the most popular game object oriented patterns (Model-View-Controller pattern). Duration of this course is 1 month or 40 hours of practical work combined with theory.

- Advanced 3d programming - this course will teach you how to organize your engine, how to make your objects interact with each other and how to use them in a real game. You will learn batching for rendering, basic HLSL shaders, vertex shaders and pixel shaders, dynamic lights, normal mapping, making physics engine, fast dynamic octree like structures for drawing optimizations, simple shadow mapping, reflections, render targets, water shader, some other cool shaders, theory on better culling algorithms (queries). You will also learn some 3D mathematics such as matrices, vectors, plane extraction from projection matrix, collision between box and frustum. Duration of this course is 2 months or 80 hours of practical work combined with theory.

- Network programming – the basic principles of multi player programming. How to make a network library, how to send unreliable data, making game server and client. Making server and client communicate. You will have to test your multi player game, too.Duration of this course is 2 months.

- Team work - as students are attending courses in groups, this final part is used for making finalized game ready for market. Here you will learn how to organize and work in teams, how to use CVS programs (WinCVS), how to create game interface and generally programming post production processes. Duration of this course is 2 months or 80 hours of work.

At the end of course each student will finish with a small 3D engine and a small finished game. Courses are not easy and many people give up, just like in the game industry. However we guaranty that those who can make it through this courses will have skills and knowledge that is very hard to accumulate through books and solo work.

If you have some questions feel free to contact us at school@eipix.com