The Focal Engine Editor is a comprehensive tool for the Focal Engine, providing a variety of utilities for creating and managing your scene. The engine has been designed to function independently from the editor, ensuring modularity. For this reason, the engine and editor are separate projects.
Here are some images from scene created using the Focal Engine Editor:
The Focal Engine Editor provides the ability to load, save, create new projects, and delete existing ones through the Project Browser window:
In the Editor, the following key windows are available:
- Scene Entities: Displays all objects, cameras, light sources, and terrains in the scene.
- Scene: Presents the main in-game camera view.
- Inspector: Provides the properties of the selected object.
- Content Browser: Serves as an explorer window for the current project's virtual file system with all resources structured.
- Effects Settings: Allows adjustments of different effects available in the engine.
The Material Editor employs the Visual Node System to enhance editing intuitiveness.
Terrain editing is facilitated with different brushes (sculpt, smooth, paint layers). Each terrain can support up to eight material layers, with each layer capable of enforcing the type of foliage that can spawn on it.
Multiple additional debugging windows are available for users to toggle:
Users can edit shaders on-the-fly in the built-in shader editor and debug compilation errors:
In addition, the editor supports real-time retrieval of shader variable values from the GPU. (Please note that not all variables are supported and further testing is needed for this feature.)
The Log window will display chosen categories of warnings, errors, and info.
# Initialize a new Git repository
git init
# Add the remote repository
git remote add origin https://github.com/Azzinoth/FocalEngineEditor
# Pull the contents of the remote repository
git pull origin master
# Initialize and update submodules
git submodule update --init --recursive
# Generate the build files using CMake
# Will work in Windows PowerShell
cmake CMakeLists.txt
This project uses the following third-party libraries:
- ImGuiColorTextEdit: This library is licensed under the MIT License. The full license text can be found at ImGuiColorTextEdit's GitHub repository.