<< Chapter < Page | Chapter >> Page > |
Turning the crank
As a professor of Computer Information Technology at Austin Community College, I teach courses in game programming using both C++ and C#/XNA. Ihave long had a concern that students enter my courses expecting to simply "turn the crank" on a game engine such as Dark GDK or XNA and have great games emerge from the other end of the process. Unfortunately, itisn't quite that easy.
Anatomy of a game engine
Given time limitations and other restrictions, it is not practical to teach those students much about the inner working of such game engines. Therefore, Ihave decided to publish a series of modules on the anatomy of a game engine that my students, (and other interested parties) can read to learn about those inner workings.
First in a collection
Therefore, this module is the first in a collection of modules designed to teach you about the anatomy of a typical game engine (sometimes called a game framework) .
The Slick2D library
I have chosen to concentrate on a free game library named Slick2D ,(which is written in Java) for several reasons including the following:
Applicable to other environments as well
Although the modules in this collection will concentrate on the Java game library named Slick2D, theconcepts involved and the knowledge that you will gain is applicable to other game engines written in different programming languages.
Purpose
The purpose of this module is to get you started, including showing you how to download and install Slick2D, and how to compile and execute your firstSlick2D program. Future modules will start digging into and explaining the innerworkings of a basic Slick2D game engine.
What you should know
This series of modules is not intended for beginning programmers. As a minimum, you should already know about fundamental programming concepts such as if statements, for loops, while loops, method or function calls, parameter passing, etc. Ideally, you will havesome object-oriented programming knowledge in a modern programming language such as Java, C#, C++, or possibly Python or JavaScript.
Notification Switch
Would you like to follow the 'Anatomy of a game engine' conversation and receive update notifications?