This new major update brings light simulation with ray tracing, as well as some quality of life additions and bug fixes.
Changelog:
Added ray-traced light simulation
Added "Optics" tab
Added new tools menu
Added "Long Exposure" feature
Added new presets showcasing the new optics features
Added new basic stats for optics (enable optics to see them)
Improved UI readability
Galaxy Engine now uses 16 bits-per-channel color data internally. This enables more accurate colors, especially for dark values.
I decided to go for a PBR approach, meaning that you can make scenes and modify materials similar to how you would in a traditional 3D path tracer. The lighting simulation does approximate some things more than others, like energy conservation and dispersion.
The ray tracer is geometry-based, which means that it doesn't use mathematical functions for shapes. Instead, shapes are made out of individual edges, again, similar to 3D rendering tools. This means that walls and shapes have edge normals and vertex normals. These normals allow smooth shading while using actual geometry.
All that said, here is a list of features the ray tracer showcases:
Diffuse lighting
Specular reflections
Refraction
Emission
Specular roughness
Refraction roughness
Fresnel simulation
Index of Refraction (IOR)
Nested dielectrics with different IOR
Light dispersion
Total internal reflection
Sampling with ray accumulation
Wall creation
Draw shape tool
Lens creation tool
Circle creation tool
Diffuse color editing
Specular color editing
Refraction color editing
Emission color editing
Light color editing
Shape relaxation
Point lights
Area lights
Cone lights
Light spread
Here you can see a video that showcases some of the new features:
I have a background in 3D rendering, and now that I know how to code, I thought to myself: "I could make my own ray tracer!" And so, this is why I started working on this update. It was a fun experiment, and I'm glad that I did it. But now that I've finally finished it, I'm getting back to particles.
I hope you like it!
Changed files in this update