À propos du projet
LittleJS est un moteur de jeu HTML5 léger et open-source, axé sur la simplicité et la performance. Il se présente sous la forme d'une petite bibliothèque JavaScript sans dépendance et inclut un large éventail de fonctionnalités pour le développement de jeux 2D.
Capacités principales décrites dans le README :
- Graphiques : rendu hybride WebGL2 et Canvas2D, shaders de post-traitement de style Shadertoy, système de particules avec concepteur d'effets visuels, feuilles de textures d'animation/sprites en temps réel, prise en charge des atlas TexturePacker et Aseprite, et rendu 3D optionnel via un plugin Three.js.
- Audio : lecture de fichiers mp3, ogg et wave, génération procédurale de sons ZzFX sans fichiers d'actifs, et panoramique stéréo spatial.
- Entrées : gestion de la souris, du clavier, de la manette et du tactile, plus une manette à l'écran personnalisable pour mobile.
- Physique : physique arcade avec gestion des collisions, collisions de tuiles et raycasting, intégration optionnelle de Box2D v2.3.1 wasm, et plugin de pathfinding A* basé sur une grille avec lissage optionnel.
- Flexibilité : fonctionne dans les navigateurs modernes et sur mobile, prend en charge TypeScript et les modules ES, fournit un modèle de démarrage Vite, et convient aux événements de codage de taille comme JS13kGames. Il est sous licence MIT.
- Outils de développement : navigateur d'exemples en direct avec source modifiable, import de niveaux Tiled/JSON, superposition de débogage et rendu de primitives, suivi de médailles avec prise en charge de Newgrounds, et système de build Node.js.
- Adapté à l'IA : API petite et documentée conçue pour bien fonctionner avec les LLM, plus des modèles/invites IA séparés et un créateur de jeux basé sur ChatGPT.
Les options de démarrage incluent l'installation du paquet npm `littlejsengine` ou l'utilisation de `degit` pour générer le modèle Vite. Un exemple minimal montre l'initialisation du moteur avec les callbacks gameInit, gameUpdate, gameUpdatePost, gameRender et gameRenderPost.
Le projet fournit plusieurs builds (debug/release, module/non-module, variantes minifiées), des tutoriels incluant une procédure pas à pas pour Breakout et un tutoriel de jeu de ski, une feuille de référence rapide et une FAQ. Les exemples incluent un navigateur d'exemples en direct, l'Arcade LittleJS avec plus de 50 jeux, plus de 60 démos de fonctionnalités en un seul fichier, et des démos spécifiques pour Breakout, un puzzle match-3, un platformer, Box2D, un side-scroller et un platformer Three.js, un test de stress et un concepteur de système de particules. Le README liste également de nombreux jeux communautaires créés avec le moteur et des liens vers les résultats de game jams.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.