CI Service | Build Status |
---|---|
GitHub Actions |
You will need a recent version of Clang (20.x) and CMake (3.31 or 4.x), c++23 is needed.
For Windows you will need mingw64 https://www.mingw-w64.org/ and add the bin folder into your PATH. (you do not need any MSVC stuff.)
Install the latest Vulkan SDK https://vulkan.lunarg.com/ and be sure to have the env variable VULKAN_SDK properly set to your Vulkan SDK installation folder.
The editor (Windows only for the moment) is using TCL/TK 9.0, the easiest installation for Windows is to install via the MagicSplat installer
Or download the source and compile it yourself.
On Linux you can install it easily via your favorite package manager.
Compile shaders (Windows && Linux) :
bin/shaders_compil.sh
List existing presets
cmake --list-presets
"windows-debug" - Debug
"windows-release" - Release
"linux-debug" - Debug
"linux-release" - Release
Configure with a preset
cmake --preset windows-release
Compile with a preset
cmake --build --preset windows-dereleasebug
Launch from the root directory
build/windows-release/PoulpeEngine.exe
or to run the editor (Windows only)
build/windows-release/PoulpeEngine.exe -E
Or open the project with a cmake able IDE (VS 2022, VS Code...)
glTF samples can be fetch here: glTF-Sample-Assets
or
from Morgan McGuire's Computer Graphics Archive
Just download, unzip and copy paste in assets/mesh.
All levels are described in config/levels, for those meshes they should be fine as it is.
To change the level update config/poulpeEngine.json key defaultLevel, copy/paste the file name of the level to be loaded.
free / lock mouse : left ctrl
forward : Z
backward : Q
left : Q
right : D
up : E
down : A
- AlphaBlendModeTest
- AnisotropyRotationTest
- AnisotropyStrengthTest
- ClearCoatTest
- CompareAlphaCoverage
- CompareAmbientOcclusion
- CompareAnisotropy
- CompareBaseColor
- CompareClearcoat
- CompareDispersion
- CompareEmissiveStrength
- CompareIor
- CompareIridescence
- CompareMetallic
- CompareNormal
- CompareRoughness
- CompareSheen
- CompareSpecular
- CompareTransmission
- CompareVolume
- DispersionTest
- EmissiveStrengthTest
- EnvironmentTest
- InterpolationTest
- IORTestGrid
- MorphPrimitivesTest
- MorphStressTest
- MultiUVTest
- NegativeScaleTest
- NodePerformanceTest
- NormalTangentMirrorTest
- NormalTangentTest
- OrientationTest
- PlaysetLightTest
- PrimitiveModeNormalsTest
- SheenTestGrid
- SpecularTest
- TextureCoordinateTest
- TextureEncodingTest
- TextureLinearInterpolationTest
- TextureSettingsTest
- TextureTransformMultiTest
- TextureTransformTest
- TransmissionRoughnessTest
- TransmissionTest
- TransmissionThinwallTestGrid
- UnlitTest