Skip to content

fix(webgl): upload SDF buffer in renderRTT#38

Merged
chiefcll merged 3 commits into
mainfrom
fix/sdf-buffer-upload-rtt
May 25, 2026
Merged

fix(webgl): upload SDF buffer in renderRTT#38
chiefcll merged 3 commits into
mainfrom
fix/sdf-buffer-upload-rtt

Conversation

@chiefcll
Copy link
Copy Markdown
Contributor

@chiefcll chiefcll commented May 25, 2026

Summary

  • WebGL RTT text fix: WebGlRenderer.renderRTT() uploaded the regular quad buffer to the GPU but skipped the shared SDF text buffer, so SdfRenderOp.draw() ran drawElements against stale (or empty) vertex data for any text rendered into an RTT framebuffer. Colored quads worked because they use the separate rttQuadBuffer path that was already being uploaded. Mirrors the SDF buffer upload that the main scene's render() already performs (WebGlRenderer.ts:976) inside renderRTT() (WebGlRenderer.ts:1221).
  • VRT script fix: pnpm test:visual:update-ci set RUNTIME_ENV=ci but never passed --ci, so it skipped dockerCiMode() and tried to capture snapshots on the host. Pass --ci instead — the container re-invokes pnpm test:visual with RUNTIME_ENV=ci itself, so the host-side env var was redundant.

Test plan

  • Render a scene with text inside an RTT node and verify glyphs appear (previously blank/garbage).
  • Confirm non-RTT text rendering and colored RTT quads are unchanged.
  • pnpm test
  • pnpm test:visual:update-ci from the repo root re-launches in docker (no longer runs on the host).

🤖 Generated with Claude Code

chiefcll and others added 3 commits May 25, 2026 19:00
…ramebuffers

renderRTT() uploaded the regular quad buffer but not the shared SDF text
buffer, so SdfRenderOp.draw() ran drawElements against stale GPU vertex
data for any text rendered into an RTT framebuffer. Mirror the upload
that render() already performs for the main scene.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
…ocker

The script set RUNTIME_ENV=ci but never passed --ci, so it skipped
dockerCiMode() and tried to capture snapshots on the host. The container
re-invokes pnpm test:visual with RUNTIME_ENV=ci itself, so the env var
on the host command was redundant anyway.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@chiefcll chiefcll merged commit f5a114e into main May 25, 2026
1 check passed
@chiefcll chiefcll deleted the fix/sdf-buffer-upload-rtt branch May 25, 2026 23:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant