Archived
1
Fork 0
3D game engine focusing on real-time graphics
This repository has been archived on 2025-04-12. You can view files and clone it, but cannot push or open issues or pull requests.
Find a file
2022-03-22 10:13:25 -04:00
.github/workflows Final attempt to appease MSVC 2022-03-07 09:49:31 -05:00
addon Add initial files 2020-08-11 12:07:21 -04:00
cmake Handle data directories for games not named example, and also support out of tree builds 2022-03-09 18:17:04 -05:00
engine Goodbye, WebGPU 2022-03-10 10:26:59 -05:00
example Revert "Next big changes to make WebGPU work" 2022-03-10 10:20:50 -05:00
extern Checkout glslang and spirv-cross correctly 2022-03-04 19:06:45 -05:00
misc Update PCSS and Sponza screenshots 2020-08-19 22:33:35 -04:00
platforms Handle data directories for games not named example, and also support out of tree builds 2022-03-09 18:17:04 -05:00
tools Goodbye, WebGPU 2022-03-10 10:26:59 -05:00
.clang-format Add a .clang-format 2022-02-20 23:28:06 -05:00
.gitignore Add KDE directory files to gitignore 2022-03-06 19:17:56 -05:00
CMakeLists.txt Goodbye, WebGPU 2022-03-10 10:26:59 -05:00
LICENSE Update license year 2022-02-28 21:31:14 -05:00
README.md Add mirror links 2022-03-22 10:13:25 -04:00

Prism

sourcehut GitHub
mirror ryne.moe
mirror

A cross-platform engine providing real-time physically based rendering. This is the culmination of several years of my own graphics programming work :-)

Here is a selection of screenshots that provides a good sense of the graphical capabilities of Prism:

pcss sponza

buddha custom models

The sibenik, sponza and buddha models shown are from the McGuire Computer Graphics Archive, any other models shown are created by me.

Features

You can view a more comprehensive list of features here.

Building

There are instructions for Windows, Linux, and macOS targets in the wiki.

There is an example app provided in example/. If you want to build the tooling or the example, use the CMake options BUILD_EXAMPLE and BUILD_TOOLS respectively.

Usage

The ideal way to use it is by letting prism take over your main() and implementing an app_main() instead, (and using add_platform_executable in CMake) but I'm working on letting developers use the engine as a regular library too.