Manual / Discussion / Gumroad

RAYVE GAME ENGINE
Rayve is a small, low-friction, C++ game engine that uses ray tracing for rendering. Rayve strives to be a game engine that is simple yet expressive. Rayve is very lightweight and carefully designed. The API is a single C++ header. A naming convention is used that allows a 3D modeling tool to be used efficiently as a level editor.
RASTERIZATION
A 'rasterization' process was created for games long ago to project triangles from 3D to 2D, so hardware blitters on VGA cards could be used to render the triangles. It's a brute force method that requires many processing steps. All game engines still use rasterization pipelines.
RAY TRACING
Ray tracing has been around as long as rasterization. Ray tracing provides a real world lighting model that is very straightforward to implement. Yet, rasterization is used in games instead of ray tracing, because even with hardware acceleration, traditional ray tracing is still too slow to render entire scenes. Raylogic worked for years to solve this problem and Rayve is the result.
RETHINKING
Raylogic has created a new, deterministic ray tracing algorithm that is used for all rendering, not just lighting. It provides fast, real-time ray tracing for games. Triangles are rendered directly from the scene to the frame buffer. All rendering is done with compute shaders inside Vulkan. No other part of Vulkan is used.
REMOVAL
Removing rasterization is a big step. It eleminates draw calls, frustum culling, near/far clip planes, occlusion culling, overdraw reduction, vertex/pixel processing, screen space projection, environment/cube mapping, lightmap baking, forward/deferred rendering, level of detail meshes, transparency ordering, shadow mapping, depth buffers, texture filters and more.
RESTRICTIONS
Rayve is taking a new path and there are hurdles. Rayve needs Nvidia GPU's for now. Rayve also requires Windows PC's, is closed source, has a small feature set and requires Visual Studio. Some or all of these limitations can be removed over time.
RAYLOGIC
A little bit about why Rayve. I'm the developer behind Raylogic. My first games were created with PDP-11 Basic (line numbers and goto's) for VT-100s. My first distributed game was on the 1984 Macintosh. My first game engine was written for VGA cards in 8086 assembly. Since the beginning, I've been a fan of ray tracing. But there was no way to use it for regular games. Rayve is the fullfilment of my dream for a totally ray traced game engine to replace rasterization. Not anticipating a big adoption, but had to be done :)