Repository navigation
V3: preserve alpha through source and effect composition - #153
Merged
git-chad merged 8 commits intoOct 1, 2026
Merged
Conversation
Contributor
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
7 tasks
Greptile SummaryThis PR establishes alpha-aware composition in both the editor renderer and React SDK runtime.
Confidence Score: 5/5The PR appears safe to merge with no actionable correctness, security, or repository-rule issues identified. The source-over equations, effect coverage policy, role propagation, material settings, texture copies, and grading path are internally consistent and covered across editor and runtime implementations. Reviews (1): Last reviewed commit: "fix: preserve alpha through source and e..." | Re-trigger Greptile |
git-chad
changed the base branch from
git-chad/v3-transparent-media-bounds
to
git-chad/shader-lab-v3-plan
October 1, 2026 15:12
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Transparent input textures currently become opaque when copied or passed through the shared compositor. Source layers and effects also share one blend rule, so partial coverage cannot be composed correctly.
This PR separates their roles: source layers use straight-alpha source-over with blend-mode overlap, while effects preserve input coverage and retain the existing output-alpha-as-strength behavior. Both pipelines derive the role from layer kind, including custom shaders in Effect Mode. Pass materials, asynchronously replaced materials, texture copies, and scene grading now retain computed alpha without applying a second GPU blend.
Opaque backdrops retain the exact existing RGB expression. All frozen legacy masks and PNGs remain unchanged. Legacy mask semantics, opaque canvas backgrounds, transparent PNG export, and per-effect spatial coverage remain separate work; this does not complete roadmap phase 1.
Stack: targets
git-chad/v3-transparent-media-bounds(#152), which targets #151; the integration parent remains draft #150. No merges tomain.Validation:
bun run test:composition: 100 new alpha checks, 136 legacy blend/mask samples, 34 media-bound checks, and all frozen visual/persistence checks pass.bun run check, runtime typecheck, and MCP typecheck pass; app lint reports three pre-existing warnings.No new editor control is introduced. Existing app compositions are covered by unchanged visual baselines; the behavioral fix is observable with translucent external runtime textures and prepares the editor for isolated groups and coverage masks.