The Babylon Toolkit host a set of tools designed to provide a small subset of the unity editor design time features to export babylon content scene files. You can create your games using a design time component based architecture. Please refer to the Unity Editor documentation for details.
The toolkit exports game objects that have a camera, light or mesh component attached. The toolkit also provides built in script components to support native babylon engine features at desgin time. The toolkit's Export Inspector window provides easy access to global exportation properties. Docking this window is recommended to enable the Unity Editor game development and exportation features.
Perspective and orthographic cameras are supported. The Camera Rig component supports detailed camera control allowing easy camera type selection and specfic runtime camera mode options. Please refer to the Unity Camera documentation for details.
The toolkit exports directional, point and spot lights. Realtime lights are standard lights that illuminate the scene at runtime. Mixed lights support baked lighting and require the Subtractive lightmapper mode.
Fully baked lighting (including all area lights) are used for lightmap shadow baking at design time and will not be included in the exported scene file. This will allow for detailed lightmap baking using as many baking lights as required to achieve the best shadow effects as possible without using any of the baking light resources at runtime. Please refer to the Unity Baked Lighting documentation for details.
Skyboxes for the scene are primarily controlled via the Unity Lighting Window. The default scene controller Skybox Options allow for more detailed settings at runtime. The toolkit supports native hdr, exr and dds cubemaps. Please refer to the Unity Skybox Rendering documentation for details.
Default Color Space
The preferred Color Space for realistic rendering is Linear. A significant advantage of using Linear color space is that the colors supplied to shaders within your scene will brighten linearly as light intensities increase. This can be selected using the Color Space property from Edit>Project Settings>Player settings panel.
The Project Setup section outlines basic project setup, scene configuration and runtime script compiler options. You can auto detect the platform script compiler locations in the Project Compiler Options section on the main export panel. Check out the Getting Started Video to get started with Babylon Toolkit style game development.
Script Components are the primary way of attaching native babylon classes to game objects and prefabs in the editor.
The Scene Manager application programming interface exposes a unity like scene component development pattern. This allows script components to be attached to game objects like meshes, cameras and lights. Each component type has a ready, start, update, after and destroy function that will get called by the scene manager during it's life cycle.
Shader Materials are used to assign unity standard and legacy shaders to native babylon material classes. Custom shaders are supportted if they follow the unity shader property naming standard. The universial shader material component encapsulates both Unity design time shader and babylon runtime shader information. Please refer to the Unity Material Editor documentation for details.
Collision Meshes are generated to provided simple collision for each component type (box, sphere, capsule, wheel, mesh and terrain). This allows simple geometry to be be used for physics collisions and mesh intersections instead of the original detailed geometry. Please refer to the Unity Collider Components documentation for details.
Terrain Builder options are used to export dynamic terrain geometry generation at export time. Up to 12 textures and normal maps may be used to paint terrains. Texture atlas maps are created to optimize multiple terrain splat textures. Terrain mesh colliders are supported to optimize runtime collision checking. Colliders can be segmented up to 16 x 16 low poly collision meshes that cover the orginal high poly terrain surface.
The terrain builder supports custom terrain splatmap shaders to allow design time editor access to the terrain render material. If no custom terrain splatmap material is selected, default options will be used. Please refer to the Unity Terrain Settings documentation for details.
Animation State is supported for both transform and skeleton animations. Transform animations are used to animate the position, rotation and scale of any light, camera or mesh. Skeleton animation are used to animate the bones of a skeletal mesh. Legacy Animation controls are used to enable standard bone key frame animations only.
The newer standard Animator controls are used to enable the built-in Unity Mechanim humanoid animation rigging system. Please refer to the Unity Animation Group documentation for details.
Runtime Prefabs are used to allow client side prefab instantiation. Game objects that are assigned to the Babylon Prefab layer are marked for client side prefab usage and will not be enabled in the scene. The scene manager function instantiate prefab is used to create fully scipted components at runtime. The scene manager uses deep cloning with hierarchy.
Static Batching allows design time mesh combining. Game objects that are assigned to the Babylon Static layer are marked for mesh optimization at scene export. Meshes will automatically be grouped by material, combined, baked and serialized as a single mesh per material. Texture atlas materials are supported to increase multiple texture rendering optimizations.
Navigation Mesh support is provided by Babylon-Navigation-Mesh. A path finder for AI agents. It use the A Star and Funnel algorithms to calculate a path on a navigation mesh. The toolkit supports the unity navigation mesh generation tools to produced and serialize the navigation mesh geometry into your scene. Please refer to the Unity Navigation Mesh documentation for details.
The Windows Platform toolset provides built-in support to develop hosted Universal Windows Platform applications to serve as self contained web browser application for your game projects. This allows for native platform intergration support for the Windows Runtime Library including Xbox Live Services for both Windows 10 PC and Xbox One game consoles.
The Babylon Art Tools included in the toolkit provides a number of art tools to aid in creating optimized game ready assets.
The toolkit provided abstract base class Editor Script Component is the only supported script component that will be exported. All other non supported components will be ignored. The pre built toolkit components and your Custom Script Components are all derived from the base editor script component class and will be included in the exported scene.