Research-based Vulkan 3D engine. Currently my primary focus includes ray tracing pipeline and global illumination algorithms. I have implemented Kajiya-style Path Tracing.
In USamples directory you can find all sample projects that are using UncannyEngine. Every sample project name that I have created starts from xx number, for example: 06_RayTracingInSeveralBLASes
Models are downloaded from Morgan McGuire's Computer Graphics Archive
Clone repository:
git clone --recurse-submodules https://github.com/Mregussek/UncannyEngine.gitI am using CMake as a build system and MSVC as a compiler. Please use Visual Studio 16 2019!
In order to build it you should use CMakeGUI and select project directory. In project directory please create some build directory and mark it in GUI as follows.
Next you can choose proper startup project, every sample project that I have created starts from xx number, for example: 06_RayTracingInSeveralBLASes
Afterwards you can build project and you should running project :)
For now engine's shaders parse material, where illumination model in .mtl file is as follows:
- illum 5 -> metallic / reflective
- illum 7 -> dielectric / refractive
- illum 4 -> emissive material / light
- other -> lambertian / matte material
Used version of ImGui may fail, when imgui.ini file is created in executable directory. It is related to this issue ocornut/imgui#1817. This is why I have decided to write special function that deletes this file, when engine is being released.
void Application::DeleteImGuiIni()
{
FPath imgui_ini = FPath::Append(FPath::GetExecutablePath(), "imgui.ini");
FPath::Delete(imgui_ini);
}So, if you are running sandbox sample or 12 imgui sample, make sure that imgui.ini is not already created and filled.













