The main editor area is laid out in 6 major sections.
The toolbar dock displays different settings that affect the editor’s view of the game world and modify the Rootex Engine’s overall state.
You can find data related to the Editor FPS, registered Events in the EventManager, the current camera being used to view the world, etc. You can try fiddling with the settings here to know what each thing does. The toolbar dock also allows playing the currently open level in game or play the game from the original starting level as defined in the game settings.
Try setting the Camera in RenderSystem tab to EditorCamera to allow easy navigation.
The output dock is the Rootex Engine’s channel to report stuff happening internally in the engine and in the editor. You can expect to see error messages, warnings and plain reports in the output dock. You will also notice a text input bar at the bottom of the output dock.
Use the command input to run Lua code in Rootex’s Lua VM. All of Rootex’s scripting API is available through this command line.
The viewport dock provides the view into the game world through the default camera, though you want to change that to EditorCamera. The EditorCamera is an editor-only entity. Viewing the game world in the editor also enables a few perks that are only accessible in the editor and not the game. The view mode for the game world can be changed using the View main menu, usually present at the top of the window, alongside the File main menu and others.
The EditorCamera is an editor-only entity which is setup to be the view of the editor into the game world.
To view the world though EditorCamera, select EditorCamera as the current camera entity from Viewport > Current Camera. The EditorCamera can be controlled from the editor by holding Right Mouse Button and using WASD/Space/Shift to move. You can tweak the camera turning speed and the moving speed.
The 3D gizmo is an editor-only tool to let the user change the position, rotation, and scale of selected entity in either local or world space. Scenes can be selected from the scene dock.
The gizmo has 3 separate modes of working.
Select an entity and press Q. In this mode the gizmo takes the shape of 3 axes point in orthogonal directions. These axes are selectable with the mouse pointer and position of entities can be altered by dragging.
Select and entity and press W. In this mode the gizmo takes the shape of 3 circles with their axes going in orthogonal directions. These circles denote the rotation of the entities in Euler angles and rotation of the entities can be altered by dragging.
Select an entity and press E. In this mode the gizmo takes the shape of 3 axes in orthogonal directions. These axes denote the scales which can be altered by dragging.
The gizmo has 2 modifiers to each of the modes. The Local modifier will apply changes in the local coordinate system. The World modifier will apply changes in the world coordinate system.
There is one more editor-only entity that is helpful to the viewport. The EditorGrid displays the grid defined by the grid cells sizes. You can alter the grid settings by selecting EditorGrid in the scene dock.
The scene dock displays the parent-child hierarchy of scenes in the current game world.
The hierarchy between scenes is defined by the Scene class and its children. Scenes can be selected by clicking on their name in the scene dock or selecting the associated entity in the inspector. You can also change the hierarchy between scenes by dragging and dropping the scene over your chosen parent scene.
Inspector dock is the main hub of all data related to components in an entity. Data under each component is available for change using the inpector dock. Use the scene dock, or click on the scene in the viewport to select them.
Inspector dock also allows changing the name of the scene, attaching Lua scripts, adding or changing or removing components, resetting inter-component linkages and deleting entities, along with instantiating new scenes as children from files and saving scenes to files.
Content Browser Dock¶
The Cotent Browser allows access to the filesystem in the game/ directory withing the engine itself.
Content Browser can recognize supported filetypes and shows special icons for them, which can directly be dragged and dropped into suitable places.
Current drag and drop support:
Image -> Texture slots in Materials
Audio -> Music source track for MusicComponent and ShortMusicComponent
Model -> 3D Mesh for ModelComponent, Rigged skeletal mesh for AnimatedModelComponent, Collision mesh in MeshColliderComponent
Material -> Custom .rmat file format for RenderableComponent
Script -> Lua files for entity scripts, RML file for UIComponent