Le moteur du jeu permet de créer des jeux en 2d à base de sprites.

Les sprites sont répartis en deux catégories principales :

- les sprites de décors (appelés SD), et associés aux fichiers dec

- les sprites de personnages (appelés IA), et associés aux fichiers per

 

Les fichiers dec et per utilisent un ensemble de mots clés (proches du langage de script dans le lexique, mais très différents dans le fonctionnement).

Une image pourra soit se trouver dans un fichier image isolé (png, jpg, etc.), soit dans une planche de sprites.

Le moteur gère les animations à partir de planches de sprites ou bien à partir d'un ensemble d'images indivuelles.

Chaque sprite peut posséder plusieurs états (séquences d'animations).

 

Dans sa version actuelle seuls 6 plans sont gérés par le moteur (il est prévu d'étendre cette fonction à un nombre infini de plans dans une prochaine version). Les personnages actifs sont tous sur le plan 2 (qui possède, contrairement aux autres plans, un avant-plan et un arrière-plan).

 

Le moteur gère les ombres dynamiques ou fixes.

Les shaders sont également pris en charge et peuvent être appliqués à chaque sprite ou bien au rendu global de la scène. Ils permettent notamment d'animer facilement des plantes, de l'eau ou de créer des effets divers.

Un système de particules permet de gérer toute sorte d'effets (pluie, neige, particules dans l'air, etc.). Couplé à un système de forces il est possible de planifier des attractions de particules à des moments précis et de simuler des tempêtes par exemple.

Le moteur permet de gérer autant de clones qu'on le souhaite. Toutes les entrées de la manette ou du clavier sont propagées aux différents clones.

 

Les collisions sont gérées soit via la technique des hitbox, soit par des masques de collisions.

 

Un système de chemins permet de définir des KP (keypoint) par où circuleront les sprites. Ces kp gèrent les changements de couleur, de taille ou de rotation. Ils sont utiles pour animer des plateformes ou décrire des trajets complexes à certains sprites (SD ou IA).

 

Un langage de script permet également un contrôle total du jeu et permet la création de comportements spécifiques aux IA, ou simplement d'animer des éléments de décor.

 

Le moteur ELB2d prend en charge beaucoup d'autres fonctionnalités qui seront décrites sur ce site à la fin du développement.