构建 3D 游戏的 JavaScript 框架:Babylon.js
gxw6
9年前
Babylon.js 是一个使用 HTML5 和 WebGL 构建 3D 游戏的 JavaScript 框架。
特性
- Complete scene graph with lights, cameras, materials and meshes
- Collisions engine
- Physics engine (thanks to oimo.js)
- Scene picking
- Antialiasing
- Animations engine
- Audio engine
- Particles Systems
- Sprites and 2D layers
- Optimizations engines:
- Frustum clipping
- Sub-meshes clipping
- Hardware scaling
- Selection octrees
- Offline mode via IndexedDB (Assets are saved locally to prevent reloading them)
- Incremental loading
- Binary compressed format
- Hardware accelerated instances
- Level of details (LOD)
- Automatic scene optimizer
- Debug layer to help you optimize and debug scenes
- Standard material is a per pixel material that supports:
- Diffuse lightning and texture
- Ambient lightning and texture
- Specular lightning
- Opacity texture
- Reflection texture (Spheric, planar, cubic and projection)
- Mirror texture
- Emissive texture
- Specular texture
- Bump texture
- Fresnel term for diffuse, opacity, emissive and reflection
- Up to 4 lights (points, directionals, spots, hemispherics)
- Custom materials
- Custom shaders
- Skybox
- Vertex color
- Bones (Animations and shadows are supported)
- Procedural textures
- Special FX
- Fog
- Alpha blending
- Alpha testing
- Billboarding
- Fullscreen mode
- Shadow Maps and Variance Shadow Maps
- Rendering layers
- Post-processes (blur, refraction, black'n'white, fxaa, customs...)
- SSAO
- Volumetric Light Scattering
- Lens flares
- Multi-views
- Textures:
- Render target textures
- Dynamic textures (canvas)
- Video textures
- Compressed (DDS) textures
- TGA textures
- Cameras (Perspective and orthographic):
- Arc rotate camera
- Free camera
- Touch camera
- Anaglyph camera
- Virtual Joysticks camera
- Oculus Rift camera
- Gamepad camera
- VR Device Oriention camera
- WebVR camera
- Follow camera
- Meshes:
- Mesh cloning
- Dynamic meshes
- Height maps
- Constructive solid geometries
- Hardware instances
- Import:
- Babylon scene file can be converted from .OBJ, .FBX
- Exporter for Blender
- Exporter for Cheetah3d
- Exporter for 3ds Max
- Assets manager