Seit Juni 2002 entwickle ich die 3D-Engine, die Airlane 3D zugrunde liegt. Die Engine selbst baut auf DirectX9 von Microsoft auf, die Programmiersprache ist C++.
Die Engine hat bis jetzt u.a. folgende Features:
Die Engine befindet sich in einer statischen Bibliothek und wird von dem auf sie aufbauenden Spiel gelinkt. Sie übernimmt die volle Kontrolle über das Erstellen des Programmfensters und andere Einzelheiten.
Das Spiel selbst baut auf einer Klasse auf, die eine Nachrichtenbehandlungsmethode implementiert, über welche sie mit der Engine kommuniziert. Die Engine benachrichtigt beispielsweise, bevor das Programmfenster oder das Direct3D-Device erstellt wird, damit man die Möglichkeit hat, Parameter zu deren Erstellung zu modifizieren.
Während das Spiel läuft werden durchgängig Nachrichten an das Spiel gesendet, die darüber Informieren, dass beispielsweise die Position der Modelle im Raum geändert werden kann, dass die Modelle auf Kollision getestet wurden oder das die Kamera verändert werden kann. Das Programm kann dann entsprechend darauf reagieren, während die Details im Hintergrund von der Engine bearbeitet werden.