BabylonJS

Outil par (Alsacréations, Strasbourg)
Créé le , mis à jour le (15533 lectures)
Tags : webgl, 3D, babylonjs

BabylonJS est un moteur JavaScript pour WebGL, le langage de prédilection pour concevoir de la belle 3D dans votre navigateur.

Il supporte beaucoup de fonctionnalités de 3D, notamment parmi les plus courantes :

  • Les scènes et caméras
  • Les textures et éclairages
  • Les modèles 3D et imports
  • Les systèmes de particules
  • Les collisions
  • Les animations
  • La physique (via cannon.js)
  • Le post-processing

BabylonJS a récemment fait l'actualité en étant exploité pour un jeu en ligne (destiné plutôt aux périphériques tactiles) : Assassin's Creed Pirates, inspiré, comme son nom l'indique, de l'univers Assassin's Creed d'Ubisoft.

Les tutoriels d'introduction sont bien fournis pour débuter. Il existe d'autres ressources en ligne, notamment un tutoriel en français : Premiers pas en 3D avec WebGL et BabylonJS.

Vous pouvez découvrir la syntaxe et les fonctions proposées en quelques lignes de code, modifiables en ligne sur le Playground. On se prend assez vite au jeu.

Voici un exemple exclusif made in Alsacreations pour construire un... bretzel 3D.

BabylonJS et un bretzel

Tous les navigateurs récents connaissent WebGL. Safari est le seul à demander une activation manuelle mais cela va peut-être changer. Reportez-vous au tableau de compatibilité WebGL de Caniuse.com pour une vue complète.

BabylonJS a été développé par David Catuhe (@deltakosh) avec les contributions de David Rousset (@davrous), Pierre Lagarde (@pierglag) et Michel Rousseau (@rousseau_michel).

Commentaires

ohweb a dit le

Franchement étonnant, on sait désormais où va finir Flash CC :( ...

gubgub a dit le

Scotchant ! Ils étaient présents à Paris Web 2013 :)
Je pense qu'il est utile de préciser que cette bibliothèque JS est capable d'utiliser les fichiers Blender nativement.
http://blogs.msdn.com/b/eternalcoding/archive...

GuillaumeBalazy a dit le

@ohweb : On le savait déjà depuis quelques années :)

ohweb a dit le

@GuillaumeBalazy Disons que maintenant on peut difficilement encore être partagé sur la question :)