--vulkan to draw with Vulkan 1.3 instead of OpenGL. New: it does everything the OpenGL renderer does except VR — shadows (lamp shadows cached between frames, and the sun’s in top-down and 2D views too), ambient occlusion, reflections, mirrors and glass, volumetric fog, baked and real-time global illumination, the path-traced reference mode (about twice as fast as on OpenGL), virtual geometry, area lights, motion blur, auto-exposure, temporal upscaling, contact shadows, occlusion culling and variable rate shading on NVIDIA. How →--vr and any game plays in a Meta Quest (Link or Air Link) or SteamVR headset: your head is the camera, the sticks move and snap-turn, and the right controller aims, shoots and carries, with a dot where it points. The HUD and menus float in front of you, hints name the controller’s buttons, and what the player held moves into your hand. New: --vr-scale for a sharper picture, and lighter graphics by default so the headset keeps up. How →.exe plus a ready-to-share zip, with BC7-cooked textures.A neon Wild West shooter, in the making, set inside a frontier town whose simulation is coming apart. The vertical slice plays from start to finish in greybox: the town boots up, a hologram marshal gives you the job, outlaws come down Main Street from cover to cover with a sniper on the roofs, you clear out the saloon, and at high noon you face the Glitch Kid, who jumps between rooftops and splits into copies.
It has a revolver and a sawn-off you raise to shoot, bullet time with visible bullets, ammo to scrounge, and outlaws who glitch out when they fall. Play it alone or in co-op for 2–4 players: one hosts from the start menu, the others join, and everyone fights the same outlaws, shares bullet time and picks each other up. Or host a deathmatch: the same street, no outlaws and no bullet time, everyone against everyone, first to 10 kills. Hosting opens a lobby, and games on your network show up on everyone’s start menu to join with a click. Crouch (Ctrl) behind cover and the outlaws lose sight of you. Everything is placeholder art for now. It’s free: download it above.




A complete game made with DarkRoast, built to find out what a real game needs from the engine. Every gap it uncovered was fixed in the engine along the way. Find the three embers and wake the temple: weigh down pressure plates in a sunset courtyard, pull three levers past the guardians in a torchlit hall, then free the last ember in the moonlit sanctum.
It has a title menu, saves, checkpoints, music, a win sequence, and an automated playthrough that tests every build.




ui.menu APIA walk through four rooms, with a sign at each doorway saying what you’re looking at. Made with the Blender add-on; its build script is in Samples & docs. It runs on OpenGL, or on Vulkan with --vulkan.












The Windows build includes a benchmark. Double-click run_benchmark.bat, and in about 35 seconds it runs six stress scenes with vsync off and writes a report with screenshots. These are the results on our test PC: an Intel i7-7700K with a GTX 1660 Ti, at 1600×900, with TAA, reflections and the rest of the default effects on.
| Stage | Avg FPS | 1% low | GPU |
|---|---|---|---|
| Instancing20,000 boxes sharing one mesh, sun shadows | 235 | 132 | 4.1 ms |
| Draw calls3,000 unique meshes, no instancing | 331 | 249 | 2.9 ms |
| Lights1,000 point lights + 8 moving shadowed lamps | 364 | 257 | 2.6 ms |
| Physics2,000 Jolt boxes avalanching into a pit | 182 | 129 | 2.1 ms |
| Navmesh AI300 agents re-planning across a maze | 377 | 270 | 1.8 ms |
| Particles~90,000 live particles, simulated on the GPU | 338 | 88 | 2.8 ms |
Run on 2026-10-17, after objects that don’t move stopped costing work every frame. The build before, run alternately with this one on the same PC, scored 266–278; the 20,000-box stage went from about 175 to 233 FPS. (The particles stage’s 1% low is one hitch in this run; in the other run it was 252.) Scores from different days, or from different PCs, aren’t directly comparable.




Against Unreal Engine 4.26. We built the same scenes, from the same numbers, in Unreal and ran them on the same PC at 1920×1056. Each frame now does similar work in both: temporal anti-aliasing, ambient occlusion, screen-space reflections, a physical sky, and shadows from the sun and 8 moving lamps. DarkRoast also runs motion blur and auto-exposure, which were off in Unreal. Unreal still adds real-time sky-light capture and its deferred, Epic-quality shading. Average FPS:
| Stage | DarkRoast | Unreal 4.26 | Faster |
|---|---|---|---|
| Draw calls | 250 | 223 | 1.1× |
| Lights | 264 | 117 | 2.3× |
| Physics | 170 | 83 | 2.0× |
DarkRoast 2026-10-17 (mean of two runs) against Unreal 2026-10-16. Unreal ran in its development mode, not a shipping build, and merged its reused cubes into about 66 draws where DarkRoast drew 3,000 unique meshes. Its other stages needed C++ or Blueprint work, or more memory than its editor had. Being faster doesn’t make DarkRoast a better engine than Unreal, which has a far more complete renderer and toolset.
Against UPBGE 0.50 (the maintained Blender Game Engine), DarkRoast was 6–21× faster on every stage, most of all with many objects: 20,000 boxes ran at 159 FPS against 7.4. UPBGE spends most of each frame keeping Blender’s scene data in sync. This was measured on 2026-10-16 with an earlier, lighter DarkRoast renderer. The method and every caveat are in docs\COMPARISON.md in the Samples & docs download.
There’s no separate program to write. You build the level in Blender, then give objects behaviour with short Lua scripts attached right in the BlendForge tab.
A script is just a few callbacks. This spinning coin adds to the score when you touch it:
function on_update(self, dt)
self:rotate(0, 0, 90 * dt) -- spin 90°/sec
end
function on_trigger_enter(self, other)
if other.is_player then
game.score = (game.score or 0) + 1
ui.set("score", "Score " .. game.score)
self:destroy()
end
end
Scripts can move and spawn objects, raycast, read input, show HUD text, run cutscenes, drive navmesh AI, play animations and sounds, switch levels and save games.
Everything here is free. Use the engine to make games and sell them, with no fees or royalties. The engine’s source code is the one thing that isn’t released.
| The engine (Windows build, and the player in every packaged game) | Free for any use, including commercial games. No source code. LICENSE.txt in the download. |
| The Blender add-on | Free software: GPL 3.0 or later, as Blender add-ons are. LICENSE.txt in the add-on. |
| Samples, Ember Temple’s project, docs | MIT: copy them, change them, use them in your games. |
| Data Rustlers, Ember Temple and the demo games | Free to play and share. |
| Libraries and fonts built into the engine | Their own licences (MIT, zlib, Apache 2.0), listed in full in THIRD-PARTY-NOTICES.txt. |
Games made with Package Game carry the engine’s licence and the third-party notices in their folder; your own art, levels and scripts stay yours.
C:\BlendForge.blendforge_addon.zip and tick it.C:\BlendForge\blendforge.exe.samples\test_level.glb onto blendforge.exe to play the sample.