Skip to content

mchoo7/renderer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Renderer with Multiple Backends

This project aims to implement a simple model renderer that produces consistent results across different graphics API backends. The sole goal of this project is to "taste" different graphics APIs. As a result, I won't implement advanced features like ray tracing or physics based rendering. Note that some techniques are only available on specific APIs — for example, ray tracing is limited to Vulkan, DX12, and Metal.

Supported graphics APIs:

  • OpenGL 4.6 (with Direct State Access)
  • DirectX 11
  • DirectX 12
  • Metal 4 (using metal-cpp)
  • Vulkan 1.4

Only the latest version of each API is supported in order to take full advantage of their capabilities.

Build

Requirements:

Preferred IDE and build system are optional requirements. This includes:

  • Ninja
  • CLion
  • Xcode
  • Visual Studio

This repository uses Git submodules. Clone the repository with

$ git clone --recurse-submodules git clone --recurse-submodules 

If you have already cloned the repository without --recursive-submodules, run

$ git submodule update --init --recursive

Then run CMake with your preferred generator. For example

$ cmake -S . -B build -G Ninja -D<options>
$ cmake --build build

About

Renderer with multiple backends

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors