About
What is RADIUS?
Deriving from the Latin word of “Ray”, RADIUS aims to be a performant path tracer using parallel luau and OSGL to leverage its speeds.
OSGL is the fastest EditableImage wrapper for Roblox. RADIUS serves to be the flagship of OSGL by demonstrating most of its features.
Why make RADIUS?
RADIUS was initially inspired by filiprodak’s raytracing test place, and it is the spiritual successor to my first Raytracing Engine place which surpassed 8K+ visits. However, many bugs are known and the place is not easily maintainable. RADIUS aims to be better in every way, and to represent as a more complete product by making it more accessible and modular. The main catalyst for the RADIUS project was Sebastian Lague’s video on the subject.
Who is making RADIUS?
As of now, I am responsible for developing the project. Luau and engine optimizations goes to the main contributors of OSGL. There are also countless other supporters suggesting ideas including but not limited to:
How performant is RADIUS?
The current goal of the path tracer is to provide a fast and reliably stable image interactively.
In a simple scene, we can achieve 30FPS+ on a 256² display. In a more complex scene, we can render 2048 samples on a 1024² screen in under 15 minutes*. But I do plan on measuring this more “scientifically” by using millisecond timings across popular scenes.
*Tested using an intel i5-12600K; performance varies across hardware. Complexity of scenes can vary render speeds. Parallel luau does not yet use all cores in-experience; measurements made in-studio.
Where is RADIUS?
RADIUS is completely open-source and you can download the demo! The next major version is currently in developement.
Features
- done
- implementing
- incomplete, still planned
- cancelled
- PBR Materials
- Albedo/Color
- Normals
- Roughness
- Metalness
- Traditional Materials
- Roughness
- Transparency / Refraction
- Emission
- Tonemapping
- ACES approximation applied in real-time
- ACES full applied when finished rendering
- Spheremaps
- sRGB only, HDR can be supported in an upcoming OSGL update
Nothing in RADIUS is baked.
Updates
[0.1a]
● Release!
[0.1.1a]
● Backend reworkings/rewritings
● Refractions are less likely to fail
[0.1.2a]
● QOL improvements
● Restructured & Modulated tonemapping
● Tuned the NLM denoiser to be more aggresive
● Added raytracing (not to be confused with pathtracing. should only used as a “debug” tool)
[0.2.0]
still indev
Renders!
Some of these renders are rendered in old, experimental or modified versions of RADIUS.
Download it!
The demo is open-sourced with a BSD 3-Clause license. Please read it thoroughly if you plan to modify and/or use it commercially.
Note:
- The demo is still in alpha, and the path tracer has not been thoroughly tested.
- You can enable textures under the module
src>ray>material
, but this will increase RAM usage. - To get renders without the character, edit
raycastParameters
insrc>ray>construct
. - Everything visible in the camera instance will be rendered; camera controllers for screenshots are recommended.