BRender
BRender (short for Blazing Renderer) was Argonaut Software’s flagship game engine during the 1990s and early 2000s. As part of developing Croc: Definitive Edition, I made significant changes to BRender to ensure it could run on modern systems.
This version of BRender ultimately shipped as the engine for Croc Classic, which was bundled with the Croc Remaster.
Download
Current Features
This modernised version represents a cross-platform, 64-bit capable version of BRender with restored legacy functionality.
- Complete feature set of version 1.3.2, the last known release
- OpenGL renderer targeting the 3.3 Core Profile
- Cross-platform support (Linux, Windows, macOS) and cross-architecture support (x86, x86_64, ARM)
- Restored software rendering support (x86 only)
- Restored DOS support (MCGA and VESA modes)
Development History
- Initially based on the version contained within the Croc source leak
- Early OpenGL support was sufficient for Croc but little else
- The game relied on only a relatively small subset of the engine’s features
- At the time, no reference material was available for the rest
- Once BRender was officially open-sourced, I gained access to newer versions and reference applications
- Backported all changes from version 1.3.2, file-by-file
- My branch already included CMake, Linux, and 64-bit support, so it was easier to backport than forward-port
- Enhanced the OpenGL renderer with missing functionality1 using the newly available references
- Restored full software rendering support (x86 only)
- Restored DOS support (MCGA and VESA modes)
Videos
Demos
BRender Intro (OpenGL)
BRender Intro (Software)
Reflection Demo (OpenGL)
Reflection Demo (Software)
Rubber Sheet Demo (OpenGL)
Rubber Sheet Demo (Software)
Fog Demo (OpenGL)
Fog Demo (Software)
Robot Demo (OpenGL)
Robot Demo (Software)
Device Pixelmap Testing Tool
Device Pixelmap Testing Tool (OpenGL)
Device Pixelmap Testing Tool (SDL3)
DOS Support
DOS Cube Demo (MCGA, 320x200)
DOS Cube Demo (VESA, 1024x768, 8bpp)
DOS Cube Demo (VESA, 1024x768, 16bpp)
Almost. There’s one feature, light volumes, that isn’t supported, as no references or documentation have been found to determine the intended behaviour. ↩︎