| Octree | PBR |
|---|---|
| Post-Processing | Terrain |
- ECS.
- 2D and 3D audio (OpenAL).
- Parallel physics and transformations.
- Octree with automatic subdivision.
- Input (only PC).
- Code generation using meta info and custom code generator language.
- A set of classes for parallel and async computing.
- UI (XML & CSS).
- Plugins system.
- Skeletons and skeletal animations with state blending.
- Serde (serialization & deserialization) with support for polymorphic classes and data sharing.
- Add-on for GLSL.
- Forward PBR (Physically Based Rendering) using Cook-Torrance BRDF:
- Objects.
- Decals.
- Terrains.
- Terrains tesselation and vertex bump using displacement texture.
- Atmosphere Scattering
- Stochastic transparency
- Volume postprocessing.
- Entities picking.
- Debug render.
- Large formats support:
- Vector graphics: SVG, TTF.
- Raster graphics: JPG, PNG, DDS
- External scenes formats such as: FBX, OBJ, GLTF, etc.
- Creating and loading packages with assets.
- Scenes saving and loading.
- π οΈ Cross Platform
- βοΈ Windows
- π¨ MacOS
- βοΈ Linux
- βοΈ Android (partial: Input does not supported)
- β iOS
- β Web
cd <Path to your folder>
git clone --recurse-submodules -j8 https://github.com/Pixelfield-ru/SungearEngine
cd SungearEngine
git checkout main (or the latest tag: tags/<latest-tag>)cd <Path to Sungear Engine>
git submodule update --init --recursive - Flag
SG_BUILD_TESTS: enables building of test targets. - Flag
SG_BUILD_ENRY: enables building the entry executable with editor plugin loading.
debug-host: debug build for host platform (no optimizations, includes debug info).release-host: release build for host platform (with optimizations, no debug info).
- Bootstrap vcpkg.
- Set SUNGEAR_SOURCES_ROOT system variable to the root of your Sungear Engine installation.
- Restart your PC (required for the environment variable).
- Open IDE, select a CMake preset and load the root
CMakeLists.txt. - After loading select the desired CMake target.
- Build the selected target.
- On Windows: copy
<output-dir>/Sources/SGCore/SGCore.dllto the same directory as the.exefile you're running
(for example:<output-dir>/Tests/Terrain/SGTerrainTest.exe).
- Make sure you are using the same CMake preset for both Sungear Engine Core and Editor.
- Open Editor project in IDE (editor is in
Plugins/SungearEngineEditor). - Load CMake Project.
- After loading choose target to build.
- Build chosen target.
- Build the
SungearEngineCMake target. - Run executable file:
<output-dir>/Sources/SGEntry/SungearEngine
If you encounter any bugs when using Sungear Engine, please report them in the bug tracker. This is hosted at:
https://github.com/Pixelfield-ru/SungearEngine/issues
Make sure to first use the search function to see if the bug has already been reported.
When filling out a bug report, make sure that you include as much information as possible to help the developers track down the issue, such as your version of SungearEngine, operating system, architecture, and any code and models that are necessary for the developers to reproduce the issue.
Distributed under the GPL-3.0 License. See LICENSE.txt for more information.