Free Pascal oblige, les plates-formes fixes utilisables à partir de la même base de code sont nombreuses : Linux, Windows, Mac OS X, FreeBSD, en 32 et 64 bits. Du point de vue mobile, Android et iOS sont pris en charge. Il est même possible de produire des plugins pour les navigateurs qui supportent NPAPI sous Windows et Linux.
Les fonctionnalités graphiques sont elles aussi nombreuses et puissantes : construction de scènes, effets dont les ombres, les miroirs et le plaquage de relief (bump mapping), contrôle de l'éclat, shaders, travail sur les textures, anti-crénelage... Elles sont par ailleurs prolongées grâce à l’implémentation déjà réalisée de fonctionnalités liées aux jeux comme la gestion des niveaux et des joueurs, des créatures dotées d'intelligence artificielle ou des objets, mais aussi la détection des collisions.
Au niveau des formats pris en charge, on retiendra X3D (un format ouvert), mais aussi Collada, 3DS, WaveFront OBJ, MD3, STL, et Spine. Cette polyvalence permet d'utiliser des logiciels comme Blender pour la création des scènes désirées.
De nombreux formats d'images (png, jpg, bmp, ppm...) et des polices variées (via la bibliothèque FreeType) sont eux aussi pris en charge, ainsi que les animations.
Les fonctionnalités annexes n'ont pas été oubliées. Ainsi, le son est utilisable grâce à OpenAl. Il en est de même des vidéos avec ffmpeg. Au niveau intégration à Lazarus, le moteur offre des composants intégrables à la palette habituelle du programmeur. Comme indiqué au début de ce billet, l'ensemble est accompagné de nombreux exemples... qui fonctionnent !
Dès que j'aurai un peu de temps, j'essayerai d'approfondir l'utilisation de ce moteur prometteur et de réaliser un mini-jeu pour la communauté de developpez.com .
Et vous ?
Que pensez-vous de Castle Game Engine ?
L'avez-vous déjà essayé ?