As of right now main branch is outdated and no longer works (new version is under development on a seperate branch)
Path traced global illumination is used to illuminate the scene by sending multiple rays from pixels and bouncing them around until it hits the light source or it reaches bounce limit. The light is then calculated based on informations collected by the bouncing ray.
Following project tries to replicate this behaviour in order to light up a 2D environment
Solution contains two projects,
- PTGI_Remastered, which is a library containing the renderer and logic itself, together with all structures to run with it.
- PTGI_UI, is just an interface to communicate with a library.
Since GPU rendering requires CUDA to work you'll need CUDA capable GPU to utilize it.
For PTGI_Remastered you will need
Alea 3.0.4
FSharp.Core -Version 4.7.1
For PTGI_UI you will need
Alea 3.0.4
Cyotek.Windows.Forms.ColorPicker -Version 1.7.2
Control.Draggable -Version 1.0.5049.269
MaterialSkin.2 -Version 2.1.3
Pretty much everything you'll expect from PT such as
- soft shadows
- colored lights
- color bleeding
- a bunch of noise
- Improved code readability
- Structures instead of raw basic data types
- Renderer and UI seperated