v2.16.2

playcanvas/enginev2.16.2Feb 24, 2026by mvaligursky

AI Summary

Patch release fixing WebGL and WebGPU compatibility issues including texture handling, shader compilation, and precision problems on specific devices.

Key Highlights

  • Fix GsplatResourceBase.getTexture to be public
  • Fix Firefox naga compatibility with WGSL resolveCodebook
  • Fix clustered lighting packed decode stability on Samsung WebGL
  • Fix annotation hotspot sizing
  • Fix WebGL readTextureAsync memory allocation

Full Release Notes

## Fixes
- Fix `GsplatResourceBase.getTexture` to be public by @mvaligursky in #8442  
- Inline WGSL `resolveCodebook` to fix Firefox naga compatibility by @mvaligursky in #8450  
- Move clustered packed values out of light struct for Samsung WebGL precision/corruption issues by @mvaligursky in #8461  
- Only emit written color outputs in WGSL `FragmentOutput` struct by @slimbuck in #8465  
- Fix annotation hotspot sizing by @slimbuck in #8463  
- Fix WebGL `readTextureAsync` allocating too much memory for output data by @slimbuck in #8472  
- Exclude skinned and morphed mesh instances from batching by @mvaligursky in #8477  

**Full Changelog**: https://github.com/playcanvas/engine/compare/v2.16.1...v2.16.2