Skip to content

shuhuai/Triangle_Based_Rendering_D3D12

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Triangle-Based Rendering

It is an implementation of an efficient method to render 3D scenes with many lights. This method reduces lighting calculation by culling lights dynamically. It is similar to tile-based rendering, but there are two main modifications: a new design to accumulate lights and use a triangle-based culling method.

This project is implemented via DirectX 12 graphics API, and it uses some new DirectX 12 features. To run the executable, it requires the graphics hardware that supports DirectX 12.

Dependencies

Interactions

Mouse/Keyboard:

  • Mouse : Rotate camera (left click on press)
  • W : Move camera front
  • S : Move camera back
  • A : Move camera left
  • D : Move camera right
  • 1 : Switch to Sponz model
  • 2 : Switch to conference model
  • 3 : Switch to sibenik model
  • P : Visualization of the number of lights for each triangle
  • L : Visualization of the positions of light sources
  • R : Regenerate all light sources randomly
  • Up Arrow : Add a new light source
  • Down Arrow : Remove a light source

About

A DirectX 12 modified tile-based rendering framework

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published