Présentation du projet

Le développement d'un mini moteur 3D pour la console portable Playdate a nécessité une évaluation minutieuse des capacités de l'appareil. Initialement, un test de raycasting a été effectué pour évaluer les performances de la console en termes de traitement 3D et de dessin d'écran.

Contexte technique

Les résultats du test de raycasting ont révélé que les performances de la Playdate étaient inférieures aux attentes, ce qui a conduit à reconsidérer les objectifs du projet. La console n'a pas de matériel 3D dédié, ce qui signifie que tout le traitement 3D doit être effectué par le processeur central (CPU). Cela représente un défi important, car la console doit être capable de traiter rapidement les données 3D pour produire des images en temps réel.

Fonctionnement du moteur 3D

Le moteur 3D développé pour la Playdate utilise le format de fichier BSP (Binary Space Partitioning) de Quake, qui permet de précompiler les données de niveau pour accélérer le rendu. Le moteur charge les fichiers de carte BSP et utilise les outils TrenchBroom et ericw-tools pour la conception de niveau et la compilation. Cela permet de gagner du temps et de se concentrer sur les aspects les plus importants du projet.

Implications et limites

L'utilisation du format BSP présente des avantages, tels que la possibilité de réutiliser des outils existants et de gagner du temps. Cependant, cela nécessite également que les niveaux soient conçus en tenant compte de la visibilité, ce qui peut limiter la créativité des concepteurs de niveau. Le moteur 3D développé pour la Playdate est capable de produire des images 3D en temps réel, mais les limitations de la console portative doivent être prises en compte pour optimiser les performances.