Awesome Babylon.js
A curated list of awesome things related to the Babylon.js game engine.
Babylon.js is an open-source game and rendering engine written in TypeScript designed to be powerful, beautiful, simple and open. It supports cross-platform game development through WebGL, WebGPU, and the Babylon Native runtime.
Your contributions are always welcome! Please read the contributing guidelines to get started.
Contents
Official links
Official Babylon.js links.
- Babylon.js Changelog
- Babylon.js Demos
- Babylon.js Documentation
- Babylon.js Editor
- Babylon.js Features
- Babylon.js Forum
- Babylon.js Node Material Editor
- Babylon.js Playground
- Babylon.js Sandbox
- Babylon.js Specifications
- Babylon Native
- Babylon React Native
- Partners Using Babylon.js
- Social Media
- SpectorJS - Explore and Troubleshoot your WebGL scenes with ease
- Start Contributing to Babylon.js
Books
Books about or for Babylon.js developers.
Going the Distance with Babylon.js: Building extensible, maintainable, and attractive browser-based interactive applications using JavaScript
- https://aka.ms/BabylonJSBook
- https://doc.babylonjs.com/guidedLearning/bjsBook
- https://www.liquidelectron.com/going-the-distance-book/
Playground
Noteworthy examples of community-contributed content on the Babylon.js playground.
- 360 portal
- 3D UI
- Ammo.js Heightmap
- Antigravity racing game demo
- Augmented Reality Drum
- Basic Swimming Fish
- Basketball
- Bowling and grabbing in XR
- Bowling
- Bowling lane
- Buttons always face user
- Camera positioning on event
- Captain Dude Fishing
- Car following path
- Change color on collide
- Chessboard Demo
- Circle menu
- Collectible health packs
- Colliding and deforming cubes
- Coronavirus
- Custom button mesh
- Custom WebXR controller mesh
- Dock the boat
- Dynamic snow demo
- Dynamic text in UI
- Exploding Lofi Sphere
- Exploding Lofi Torus
- Exploding Object with Solid Particles
- Explosion on keydown
- Explosions + City burning
- Fenerator 3D with explosion
- Flight Simulator Experiment
- Fruit Ninja VR Game
- Furball Shader
- Glowing marbles falling
- Glow World
- Grab and move a ball in WebXR
- God of War NME Weapons FX Demo
- Great White Shark
- GUI follows viewpoint in WebXR
- Gun firing
- Happy Holidays 2020 VR
- Happy holidays custom font
- HERO X
- Hit the cube
- Holographic keyboard
- Hopping game
- Joint Impulse Example
- Laser Saber
- Lego Buggy Mesh
- Light Paddle
- Mallot and Nail VR
- Marble slide
- Marble Tower
- Mesh Speech Synthesis API
- Music Visualizer
- Newton cradle
- Open url by clicking object
- Pac-Man Arcade Machine in WebXR
- physicsImposter parenting
- Ping pong in 3D
- Point Cloud Morphing
- portal + gravity mechanics
- Portal
- Progressive loading of glTF with LOD
- Pulsars / Imps
- Rollercoaster
- Screen Capture and Composition
- Shattered mesh with baked physics demo
- Simple XmlLoader GUI
- Slice mesh
- Soft body physics - wrecking ball + blocks
- Solid Particle System collisions
- Space Invader
- Space Ship Battle
- Spheres change color only when looked at
- Sphere Spiral
- SPS change color on click
- StakeShooter
- Submarine
- Table billards
- Tank playground with sound
- Tap to Bounce
- Targeting System
- TensorFlow.js + Webcam Demo
- TestTowerDef2
- The Pirate Fort
- Tic-Tac-Toe
- Track with Carriage Following It (First Person)
- Track with Carriage Following It (Third Person)
- Trailing mesh
- Under Water Demo
- Velocity test on soccer balls
- Virtual Joystick GUI
- Virtual Tour Booth
- VR Rythym Game
- Watch out for swords
- Water Refraction with RTT
- Wave Racer
- WebXR Catching Game
- WebXR Physics playground
- WebXR Tennis game
- XR Goal Keeper Trainer
- XR Throw Lab
- Yellow sphere volumetric light mini-game
- Yoshi Falling Balls
Demos
Official Babylon.js demos that really showcase what it is capable of.
- ActionBuilder - Turn the lights on/off using flip switches. (https://github.com/BabylonJS/Website/tree/master/build/Demos/ActionBuilder)
- Actions - A torus that goes around in a circle and changes shape when it hovers over another shape. (https://github.com/BabylonJS/Website/tree/master/build/Demos/Actions)
- Amp360Video - Explore a video in 360Β°. (https://github.com/BabylonJS/Website/tree/master/build/Demos/Amp360Video)
- AssetsManager - A human skull. (https://github.com/BabylonJS/Website/tree/master/build/Demos/AssetsManager)
- AudioAnalyser - Babylon isn't just graphics; it's a full game engine. (https://github.com/BabylonJS/Website/tree/master/build/Demos/AudioAnalyser)
- Bones - A walking soldier + animated bunnies. (https://github.com/BabylonJS/Website/tree/master/build/Demos/Bones)
- Boom - Make things explode with a touch. (https://github.com/BabylonJS/Website/tree/master/build/Demos/Boom)
- Bump - Render a ball using bump mapping. (https://github.com/BabylonJS/Website/tree/master/build/Demos/Bump)
- CellShading - Use cell-shading to reproduce a cartoon-like effect. (https://github.com/BabylonJS/Website/tree/master/build/Demos/CellShading)
- Charting - 3D charts. (https://github.com/BabylonJS/Website/tree/master/build/Demos/Charting)
- ChibiRex - An animated baby T-Rex. What more do you need? (https://github.com/BabylonJS/Website/tree/master/build/Demos/ChibiRex)
- Dancers - Animated 3D dancers. warning: takes a long time to load. (https://github.com/BabylonJS/Website/tree/master/build/Demos/Dancers)
- Dancing CSG - Constructive Solid Geometry using lights and a sparkly texture. (https://github.com/BabylonJS/Website/tree/master/build/Demos/Dancing%20CSG)
- Decals - Touch the cat to splatter it with black ink. (https://github.com/BabylonJS/Website/tree/master/build/Demos/Decals)
- DiStraction - A JavaScript driving game demo. Works with a DS3. (https://github.com/BabylonJS/Website/tree/master/build/Demos/Distraction)
- DragNDrop - Drag and rearrange different shapes. (https://github.com/BabylonJS/Website/tree/master/build/Demos/DragNDrop)
- Espilit - Explore an entire (barebones) house. (https://github.com/BabylonJS/Website/tree/master/build/Demos/Espilit)
- ExtrudePolygon - Destroy your own house. (https://github.com/BabylonJS/Website/tree/master/build/Demos/ExtrudePolygon)
- Facets - A fountain of countless balls falling onto a complex shape, showcasing physics. (https://github.com/BabylonJS/Website/tree/master/build/Demos/Facets)
- Flat 2009 - Explore an extremely detailed apartment, including a fishtank and bathroom. (https://github.com/BabylonJS/Website/tree/master/build/Demos/Flat2009)
- FlightHelmet - A realistic aviator's helmet. (https://github.com/BabylonJS/Website/tree/master/build/Demos/FlightHelmet)
- Fur - A disturbingly furred bunny. (https://github.com/BabylonJS/Website/tree/master/build/Demos/Fur)
- GLTF - A GLTF Alien model featuring facial animations. (https://github.com/BabylonJS/Website/tree/master/build/Demos/GLTF)
- GUI - An interactive 3D UI. (https://github.com/BabylonJS/Website/tree/master/build/Demos/GUI)
- GlowLayer - Make a neon pipe glow like plasma. (https://github.com/BabylonJS/Website/tree/master/build/Demos/GlowLayer)
- GlowingEspilit - Espilit but with glowing effects. (https://github.com/BabylonJS/Website/tree/master/build/Demos/GlowingEspilit)
- Heightmap - Generate terrain using a heightmap. (https://github.com/BabylonJS/Website/tree/master/build/Demos/Heightmap)
- HillValley - Explore a town isolated from the outside world, like in The Twilight Zone. (https://github.com/BabylonJS/Website/tree/master/build/Demos/HillValley)
- HillValleyVR - HillValley but creepier in VR. (https://github.com/BabylonJS/Website/tree/master/build/Demos/HillValleyVR)
- Ink - Quick Demo of using the Babylon.js to simulate inking. (https://github.com/sebavan/BabylonjsInkSample)
- InstancedBones - A group of soldiers marching in sync. (https://github.com/BabylonJS/Website/tree/master/build/Demos/InstancedBones)
- Instances2 - A complex, moving space engine. (https://github.com/BabylonJS/Website/tree/master/build/Demos/Instances2)
- LookAt - Stare at a colored ball moving around in a box of shapes. (https://github.com/BabylonJS/Website/tree/master/build/Demos/LookAt)
- Mansion - Explore a haunted mansion. (https://github.com/BabylonJS/Website/tree/master/build/Demos/Mansion)
- MansionVR - Explore a haunted mansion in virtual reality. (https://github.com/BabylonJS/Website/tree/master/build/Demos/MansionVR)
- MotionBlur - Blur things like if you were moving like The Flash. (https://github.com/BabylonJS/Website/tree/master/build/Demos/MotionBlur)
- PBRGlossy - Physically based rendering of a battle damaged sci-fi helmet. (https://github.com/BabylonJS/Website/tree/master/build/Demos/PBRGlossy)
- PBRGlossyBloom - Similar to PBRGlossy, but with an extra bloom filter. (https://github.com/BabylonJS/Website/tree/master/build/Demos/PBRGlossyBloom)
- PPBloom - Simple post-processing. (https://github.com/BabylonJS/Website/tree/master/build/Demos/PPBloom)
- PPConvolution - A more advanced post-processing demo. (https://github.com/BabylonJS/Website/tree/master/build/Demos/PPConvolution)
- Particles - Colorful particles erupting. (https://github.com/BabylonJS/Website/tree/master/build/Demos/Particles)
- Physics - Spheres and blocks with gravity added. (https://github.com/BabylonJS/Website/tree/master/build/Demos/Physics)
- Polygon - It's a bird, but how did it get so flat? (https://github.com/BabylonJS/Website/tree/master/build/Demos/Polygon)
- Procedural - Don't hard-code content; generate it procedurally. (https://github.com/BabylonJS/Website/tree/master/build/Demos/Procedural)
- Retail - Explore a small store (no stealing). (https://github.com/BabylonJS/Website/tree/master/build/Demos/Retail)
- SPS - Simulate asteroids around a planet using a solid particle system. (https://github.com/BabylonJS/Website/tree/master/build/Demos/SPS)
- SPSCollisions - Solid particles as confetti being raining down on a ball. (https://github.com/BabylonJS/Website/tree/master/build/Demos/SPSCollisions)
- SpaceDeK - Pretty darn close to a space-shooter. (https://github.com/BabylonJS/Website/tree/master/build/Demos/SpaceDeK)
- Sponza - The most famous Babylon.js demo. (https://github.com/BabylonJS/Website/tree/master/build/Demos/Sponza)
- SponzaDynamicShadows - A simpler version of Sponza, but with dynamic lights. (https://github.com/BabylonJS/Website/tree/master/build/Demos/SponzaDynamicShadows)
- TheCar - A futuristic car parked all by itself in a garage. Too bad there's no key. (https://github.com/BabylonJS/Website/tree/master/build/Demos/TheCar)
- Train - An incredibly realistic train. (https://github.com/BabylonJS/Website/tree/master/build/Demos/Train)
- Tunnel - Travel inside an endless rust-filled tunnel. (https://github.com/BabylonJS/Website/tree/master/build/Demos/Tunnel)
- V8 - A complex, moving replica of a V8 engine. (https://github.com/BabylonJS/Website/tree/master/build/Demos/V8)
- Video Processing Sample - Quick Demo for setting up a Babylon.js real time video processing using a webcam. (https://github.com/sebavan/BabylonjsVideoProcessingSample)
- WCafe - Windows Cafe is a great place to unwind and have a relaxing look around. (https://github.com/BabylonJS/Website/tree/master/build/Demos/WCafe)
- Yeti - A non-threatening Yeti, complete with snow. (https://github.com/BabylonJS/Website/tree/master/build/Demos/Yeti)
Scenes
Extra demonstrations of Babylon.js
- Minority Race - A racing game made in 2016 for a film school. (https://github.com/BabylonJS/Website/tree/master/build/Scenes/minority-race)
- Robot Presentation - A robot gives a timed presentation, with an interactive slider to control animation status. (https://github.com/BabylonJS/Website/tree/master/build/Scenes/Robot)
- Sandbox - A sandbox for playing with Babylon files. (https://github.com/BabylonJS/Website/tree/master/build/Scenes/Sandbox)
- World Monger - Become a God and shape the world around you. (https://github.com/BabylonJS/Website/tree/master/build/Scenes/WorldMonger)
Games
Open source games built with Babylon.js
- Alien Cargo - A WebGL 3D game inspired by the classic puzzle game Sokoban. (https://vudugun.github.io/AlienCargo/)
- Attack of the Killer Bunnies - Where bunnies go to die. (https://ericbroberic.itch.io/attack-of-the-killer-bunnies)
- Block - A puzzle game made with Babylon.js (http://pixelcodr.com/games/block/game.html)
- Cube Endless Runner - Cube Endless Runner is a 3D game built with BabylonJS engine on top of WebGL and HTML5 technologies. (https://cube-endless-runner.herokuapp.com/)
- Defend - Procedural Cross-Platform 3D Tower Defense Web Game with Physics and AI and Procedural Sound. (https://xtreemze.github.io/defend/)
- F18 Fighter Simulation - Simulation driving of F18 Fighter Based on babylonjs + ammojs. (https://renjianfeng.github.io/F18FlightSimulator-ammojs/dist/index.html)
- Hide and Seek Demo - Multiplayer Hide-and-Seek made with BabylonJS and Colyseus. (https://docs.colyseus.io/colyseus/demo/babylonjs-editor/hide-and-seek/)
- Light Speed Ready! - A spaceship game of gathering resources and leveling your ship. (https://www.kraem.com/Light-Speed-Ready/game.html)
- NeoTrap - Music-based game built with Babylon.js (https://omarxo.itch.io/neotrap)
- Raucous Running and Rampaging Robot Racer Rally (R6) - A fast-paced many-explosion robot racer game. (https://r6redux.herokuapp.com/)
- Roll A Ball - 3D Game to illustrate getting started with the BabylonJS game engine. (https://roll-a-ball-babylon.herokuapp.com/)
- Simple 3D FPS - A simple FPS game with BabylonJS engine following Clean Code principles. (https://simple-3d-fps-game.herokuapp.com/)
- Space Invaders - Space Invaders in your browser with 3D WebGL. Built with BabylonJS. (https://spaceinvaders.viperfish.com.au/)
- Summer's Festival - Source code for game tutorial written by capucat (https://capucat.github.io/summers-festival/)
- Theasis - FPS game using the BabylonJS framework. (https://thanosrestas.github.io/Theasis/dist/index.html)
- VoxelSrv - Voxel browser game inspired by Minecraft. (http://voxelsrv-master.pb4.eu/)
Projects
Open source projects using Babylon.js
- 3D Tetris - 3D Tetris using the Babylon.js engine. (https://symbitic.github.io/3DTetrisBabylon/)
- BABYDOOM - Doom clone using the JavaScript Babylon.js engine. (https://arc0re.github.io/)
- babylon-demo - Babylon.js demo for academic purposes. (https://svenfrankson.github.io/BabylonDemoWeb/index.html)
- BabylonFpsDemo - A first person shooter with BabylonJS. (https://renjianfeng.github.io/BabylonFpsDemo/example/index.html)
- BabylonJS-CharacterController - A CharacterController for Babylon.js (https://ssatguru.github.io/BabylonJS-CharacterController-Samples/demo/)
- BabylonJS-Doom-Clone - Doom style game crafted with love using BabylonJS. (https://symbitic.github.io/BabylonJS-Doom-Clone/)
- BabylonJSFirstSteps - You will find here my first steps on Babylon.js (http://labs.topheman.com/babylonjs/cone-example.html)
- Babylon.js "magic" piano portal - An augmented-reality WebXR animation of Chopin's "Winter Wind" Γtude to hang on your wall! Works on flat-screen, too. See it live at https://demos.babylonjs.com/piano-portal/.
- BabylonJS Typescript Logic Examples - A collection of small projects that show possible ways of handling game logic with BabylonJS.
- babylonjs-typescript-webpack-starter - A starter template for those who want to use the famous JavaScript 3D game engine Babylon.js with TypeScript and Webpack.
- babylonjs-webpack-es6 - Babylon.js basic scene with typescript, webpack, es6 modules, editorconfig, eslint, hot loading and more. Will even make coffee if you ask nicely.
- babylonjs-webxr-template - Babylon.js + TypeScript WebXR template project. (https://yuiseki.github.io/babylonjs-webxr-template/)
- babylon-mtoon-material - Unity MToon Shader WebGL porting to Babylon.js. (https://virtual-cast.github.io/babylon-mtoon-material/)
- Babylon PostEffect Designer - Full control of post effects adjustments in Babylon.js. Support real-time post effect adjustments, mesh import, and post effect data sharing. (https://harveylijh.github.io/Babylon_PostEffect_Designer_JL/)
- babylon_ragdoll_robi - Babylon.js ragdoll robot. (https://ragdoll-robi.web.app/)
- babylon-steering - Steering behaviors library for Babylon.js for moving entities in the x/z plane.
- Bomberman 3D - Experimental game dev with Babylon.js and Angular 5. (https://adisoftbn.github.io/Bomberman3D/)
- cannon-es-debugger-babylonjs - This is a debugger for use with cannon-es and BabylonJS. (https://neu5.github.io/cannon-es-debugger-babylonjs/)
- Christmas runner - A Babylon.js game made for Christmas. (http://pixelcodr.com/games/christmasRunner/)
- ecsy-babylon - Experimental Babylon.js implementation of ECSY.
- Epic Guide - A game about going for a walk in a friendly world :) (http://pixelcodr.com/games/babylonjs-fps/)
- fps-babylon-js - Online Multiplayer First Person Shooter with Babylon.js & SocketIO. (https://babylon-fps-online.herokuapp.com/)
- HTML5 FPS - Demo of an HTML5 first-person rig built on Babylon.js and React. (https://fps.csarko.sh/)
- Kicker - A soccer ball game made for Babylon.js February Challenge. (http://pixelcodr.com/games/kicker/)
- KZ Climbing - A 3D platformer browser game prototype made with the Babylon.js framework written in TypeScript. (https://kzclimbing.netlify.app/client/public/)
- Molvwr - WebGL molecule viewer made with Babylon.js (https://gleborgne.github.io/molvwr/)
- Multiplayer Babylon JS "Game" with Client & Server-Side Physics Engine - Multiplayer Babylon.js game with server and client-side physics engine synchronization. (http://185.82.21.82:8700/)
- Multiplayer FPS-Game - A Multiplayer FPS built with Babylon.js (http://185.82.21.82/FPS-Game/public/)
- nengi + Babylon 3D shooter template - A template game for multiplayer 3D shooters made in Babylon.js + nengi.js with client-side prediction and lag compensation.
- OceanDemo - Ocean demo in WebGPU with Babylon.js (https://popov72.github.io/OceanDemo/dist/index.html)
- Oculus Quest Remote Desktop - Remote desktop for Oculus Quest. Using Babylon.js, React and WebRTC. (https://shinyoshiaki.github.io/oculus-quest-remote-desktop/build/)
- Playlist Browser XR - Browse Spotify playlists in Virtual Reality. (https://www.playlistbrowserxr.xyz/)
- react-babylonjs - React for Babylon.js (https://brianzinn.github.io/react-babylonjs/)
- react-babylon-spring - Build spring-physics based 3D animation with the power of react-babylonjs and react-spring. (https://hooke.life/react-babylon-spring/)
- Roblox meets film noir - A 3D platform game demo using Babylon.js and React. (https://tomwhall.github.io/babylon-js-platformer/)
- Space Jam: A New Legacy BabylonJS Mixed Reality Experience - This repository pairs with the BabylonJS Mixed Reality module that is part of the Microsoft Learn learning path inspired by the Space Jam: A New Legacy film.
- Swarm - A Babylon.js scene made for the screensaver jam. (https://github.com/Temechon/screensaver)
- TanksBattle_WebGL_Using_Babylonjs - 3D Tanks Battle WebGL game using Babylon.js game engine. (https://www.youtube.com/watch?v=HJrAUqTd1oU)
- Tomb Raider Nostalgia - View levels and play cut scenes for old Tomb Raider games 1/2/3/4. (https://popov72.github.io/TRN2/)
- VR Office Throwing Game - A VR throwing game. (https://office.wilcoschoneveld.com/)
- Vue-BabylonJS - A ready-to-go 3D environment for Vue.js using Babylon.js (https://vue-babylonjs.com/)
- WebXR Depth Testbed Babylon.js - testbed for WebXR Depth Feature. (https://drumath2237.github.io/webxr-depth-testbed-babylon/)
- WebXR Measuring Tape -
β‘ An Augmented Reality real-world length measuring web application built by the modification of the example being provided by babylonjs - concept of using WebXR HitTarget feature. (https://narendra-kamath.github.io/webxr-measuring-tape/) - yuka-babylonjs-examples - Yuka Game AI + 3D rendering with Babylon.js (https://yuka.babylonpress.org/)
Examples
Demos of Babylon.js on the web.
- Roller coaster (JS)
- Star Fighter (JS)
- Blowing Wall (JS)
- Trailing Particles (JS)
- SPS AssemblyScript Demo (JS, AS)
- Yuka Corridor Algorithm (GitHub)
- Yuka First-Person Shooter (GitHub)
- Yuka Hide And Seek Shooter (GitHub)
- Yuka Navigation Mesh (GitHub)
- Yuka Navmesh Performance (GitHub)
- Yuka Savegames (GitHub)
- Yuka Tic-Tac-Toe (GitHub)
Links
Information by developers, for developers.
- Babylon JS Day 10: Terrarium
- Babylon JS Day 14: Cards
- Babylon JS Day 15: ScrollViewer 3D
- Babylon JS Day 19: Golf Club
- Babylon Native in a Headless Environment
- Babylon on Quest
- Building the Web-Based 3d Digital Experience for the Mayflower Autonomous Ship
- Canvas Accessibility and GUI Animations with Babylon.js
- Challenges of a web VR throwing game - DEV Community
- Frame at Microsoft Build: Speaking the World Into Existence
- Getting cross platform rendering with Babylon Native and GLFW
- How we published a new Babylon.js recipe book Vol. 1 - (https://scrapbox.io/babylonjs/Playground)
- Mesh shattering with baked physics
- MR and the Web with Babylon.js 5.0 - (https://www.youtube.com/watch?v=cMrIvPrkB0Y)
- Optimizing a Large-Scale Babylon.js Scene
- Using WebXR With Babylon.js β Smashing Magazine
- Yuka + Babylon.js Examples - Game AI Examples with Babylon.js
Forum
Valuable and informative links from the Babylon.js forum.