Hi everyone,
I’m building a Web Metaverse world using Babylon.js, which includes stores, reservation systems, screens, player avatars, multiplayer chat, and friend systems — basically a complete interactive environment.
Everything works fine functionally, but I’m struggling with severe performance issues when loading large 3D models (GLB/GLTF).
Even on a high-end PC (RTX GPU, 32GB RAM, strong CPU), the FPS drops dramatically as soon as I add complex models like city scenes or detailed buildings.
Here’s my setup and what I’ve tried so far:
-
Using Babylon.js (latest stable)
-
Models are exported from Blender as
.glb -
Some models have thousands of meshes and materials
-
Tried merging meshes and simplifying geometry
-
Tried using instances and LOD manually
-
Tried WebGPU engine, but the performance issue remains
I’m planning to split the world into zones (Lobby / Stores / Outdoor) and load only the nearest area dynamically (similar to open-world streaming).
I’d really appreciate any advice or best practices for:
-
Optimizing complex 3D worlds in Babylon.js
-
Handling heavy GLB models efficiently
-
Using LOD, Instancing, or scene streaming properly
-
Achieving stable performance even on mid or low-end devices
Thanks in advance — I’m pushing Babylon.js to its limits and hoping to make this metaverse run smoothly for everyone