| Field | Value |
|---|---|
| Target | brender |
| Status | completed |
| Type | cmake-depth-buffer-smoke |
| Host | Windows local probe with Visual Studio 18 2026 and MSVC 19.50.35721.0, Win32 Debug target |
| Harness | brender-v132-portable-core-plan |
| Build | brender-v132-build-environment |
| Reproduction | brender-critical-edition-source-build |
| Exit Code | 0 |
| Transcript | external-workspace:\brender-v132-portable-core-build-depth-smoke-2026-07-03.txt; external-workspace:\brender-v132-portable-core-ctest-depth-smoke-2026-07-03.txt |
engine-revival materialize-brender-harness ...; cmake -S <harness> -B <build> -A Win32 -DBRENDER_SOURCE_DIR=<checkout>; cmake --build <build> --config Debug --target brender_core_depth_smoke; ctest --test-dir <build> -C Debug --output-on-failureBuilt and ran brender_core_depth_smoke.exe with exit 0 (near cube 6697 px, far cube 1809 px, 4391 far-cube depth rejections proving per-pixel occlusion) and passed 6/6 CTest cases with -C Debug.
The materialized harness, build tree, smoke executables, the brender_core_float library, and the generated PPM render output were kept outside this metadata repo. No generated binaries, copied BRender source, private assets, or restricted SDK material are committed.
This attempt adds a per-pixel depth buffer to the portable BRender render path, removing the convex/painter's limitation of the fill smoke. The generated brender_core_depth_smoke target builds two model actors from one cube model at different depths so they overlap in screen space, draws the near (red-tinted) cube first, then the far (blue-tinted) cube with a float depth buffer and z-test. The depth test rejected 4391 fragments of the far cube where the near cube was closer, so the near cube correctly occludes the far cube per pixel (painter's ordering by draw order would have drawn the far cube on top). All rasterization is pure C over the memory pixelmap; the assembly softrend driver is not used. The program passed as CTest case 6 of 6 under a Visual Studio Win32 Debug target. It does not claim perspective-correct attribute interpolation, texture mapping, BRender's own rasterizer, x64 portability, or release packaging.
- the depth smoke still requires a 32-bit C target
- depth is interpolated as homogeneous w linearly in screen space, which is adequate for opaque occlusion but not perspective-correct for attributes; texture mapping will need per-attribute perspective correction
- this is the portable C rasterizer's own z-buffer, not BRender's period softrend depth path
- add perspective-correct UV interpolation and texture pixelmap sampling to the rasterizer
- load a real BRender datafile model and render it depth-correct and textured
- keep generated binaries and PPM output out of git unless an intentional release package is reviewed
| Source | Type | Confidence | Scope | URL |
|---|---|---|---|---|
| Argonaut Blazing Render (BRender) v1.3.2 source repository | repository | high | BRender 1.3.2 source availability, provenance, and MIT license posture | https://github.com/foone/BRender-v1.3.2 |
| BRender preservation index | curated-index | high | BRender source-release and binary-SDK index | https://blazingrender.net/ |