Intrinsic is a Vulkan based cross-platform graphics and game engine. The project is currently in an early stage of development.
Intrinsic is available under the Apache 2.0 license. If the license is not fitting your needs, feel free to get in touch anytime!
Intrinsic features a PBR pipeline and a capable post processing system. Lighting calculations are executed in a clustered fashion on opaque and transparent objects. But lights are not only contributing to the lighting of the scene geometry – they are also evaluated in the unified volumetric fog system. Lighting and volumetrics are closely connected and all lighting parameters are considered in both passes.
Not happy with something? New rendering passes and effects can be created in no time. Almost the whole rendering pipeline is defined via simple JSON configuration files. A new full screen pass with a custom shader can be added in seconds – without restarting the engine!
Intrinsic is planned with platform independence in mind and will target all platforms with an available Vulkan driver in the future.
It has also been tested on Ubuntu 16.04 using the standalone application. The application and editor compiles successfully using the Visual Studio 2015/2017 compiler and the most recent version of the GCC and Clang.
Intrinsic’s renderer and core are written in pure C and C++. Both are multithreaded, data oriented and almost completely job based. As an example, the renderer uses SIMD driven frustum vs. sphere culling split into many different work batches allowing the culling of all scene objects in just a few hundered microseconds.
Intrinsic’s code base is well structured and cleaned up. It’s easy to dig into any of the existing subsystem and also create new systems and features in no time.
Intrinsic supports scripting using Lua, shader hot reloading as well as world editing using the fully-featured editor application IntrinsicEd.
New assets can be quickly imported using the integrated asset manager. It’s possible to import meshes using the widely used FBX file format as well as textures from various source formats. Assets can also be automatically reloaded during runtime to support quick prototyping and rapid iteration times.
Intrinsic is available on GitHub. Feel free to fork it, get a hang of it and eventually start to contribute. And if you enjoy it: Don’t forget to star the project!