-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Permalink
Choose a base ref
{{ refName }}
default
Choose a head ref
{{ refName }}
default
Comparing changes
Choose two branches to see what’s changed or to start a new pull request.
If you need to, you can also or
learn more about diff comparisons.
Open a pull request
Create a new pull request by comparing changes across two branches. If you need to, you can also .
Learn more about diff comparisons here.
base repository: playcanvas/engine
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v2.19.0
Could not load branches
Nothing to show
Loading
Could not load tags
Nothing to show
{{ refName }}
default
Loading
...
head repository: playcanvas/engine
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v2.19.1
Could not load branches
Nothing to show
Loading
Could not load tags
Nothing to show
{{ refName }}
default
Loading
- 4 commits
- 41 files changed
- 3 contributors
Commits on May 28, 2026
-
docs(gsplat): drop "unified" framing now that it's the default (#8805)
Follow-up cleanup to the unified-default flip (#8802, #8803, #8804). Unified rendering is now the default and the unified property is @deprecated/@ignore, so the public API docs and examples shouldn't be framed around "unified mode" any more — it's just gsplat rendering. Engine source: - GSplatComponent: remove the "## Unified Rendering" section from the class JSDoc; strip the JSDoc blocks from material get/set and highQualitySH get/set (both are legacy-only and only documented the unified/non-unified distinction). Drop "unified" qualifiers from workBufferUpdate, workBufferModifier, setParameter, and getInstanceTexture JSDocs. - GSplatComponentSystem: drop "in unified mode" from the material:created and frame:ready event JSDocs, and from the getMaterial JSDoc. - GSplatParams: rename "Parameters for GSplat unified system" to "Parameters for the GSplat system"; drop "unified" qualifier from dataFormat, material, and format JSDocs. - GSplatContainer: drop "non-unified rendering" from the class example comment, drop unified: true from the addComponent example, drop "unified" qualifier from the centers JSDoc. Examples (gaussian-splatting folder): - Remove unified: true from every addComponent('gsplat', { ... }) call (~40 occurrences across 29 files) — it's now the default and the property is deprecated. - Reword/remove comments that mention "unified" framing now that it's just the standard path (e.g. "Create hotel gsplat with unified set to true" → "Create hotel gsplat"). - Drop three stale orbit-pivot comments ("unified gsplats have no mesh AABB for focusEntity framing") — these became factually incorrect once #8803 made orbit-camera unified-aware. - Update global-sorting example header from "demonstrates unified gsplat rendering" to "demonstrates global gsplat sorting" to reflect what the example actually shows. Remaining "unified" mentions in the engine are all either internal (private fields, code comments, code branches), runtime warning strings (which must keep the property name), @ignore'd JSDoc, or directory names — none render in public docs. Co-authored-by: Martin Valigursky <mvaligursky@snapchat.com>
Configuration menu - View commit details
-
Copy full SHA for 11313e3 - Browse repository at this point
Copy the full SHA 11313e3View commit details
Commits on May 29, 2026
-
feat(gsplat): support GSPLAT_AA in the hybrid renderer (#8807)
The quad gsplat renderer applies an anti-aliasing opacity factor when GSPLAT_AA is enabled, but the hybrid (GPU-sort) renderer ignored it. Since the hybrid path projects in a compute pass and rasterizes from a cache, the AA factor is computed in the projector and baked into the cached alpha, so the hybrid VS and cache layout are unchanged. The AA variant is gated to non-pick mode (picking only gates on a binary opacity threshold), keeping the projector variant count to 12 not 16. Also adds an Anti-alias toggle to the gsplat viewer example's Renderer panel, wired to GSplatParams#antiAlias. Co-authored-by: Martin Valigursky <mvaligursky@snapchat.com> Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
Configuration menu - View commit details
-
Copy full SHA for af650a7 - Browse repository at this point
Copy the full SHA af650a7View commit details -
fix(gsplat): sort worker ReferenceError after esbuild migration (#8808)
GSplatSortBinWeights is stringified via toString() and injected into the unified sorter's Worker blob. With esbuild's target: 'es2020', public class fields are transpiled into __publicField() helper calls (minified to n). The helper lives only in the main bundle, so when the class runs inside the worker the constructor throws "ReferenceError: n is not defined" on its first field assignment. Move all five instance fields into the constructor as plain this.x = ... assignments so the class stays self-contained when stringified. Fixes #8806. Co-authored-by: Martin Valigursky <mvaligursky@snapchat.com>
Configuration menu - View commit details
-
Copy full SHA for 9ad6519 - Browse repository at this point
Copy the full SHA 9ad6519View commit details -
Martin Valigursky committed
May 29, 2026 Configuration menu - View commit details
-
Copy full SHA for 9069deb - Browse repository at this point
Copy the full SHA 9069debView commit details
Loading
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff v2.19.0...v2.19.1