What's Changed
- WebGPU support for rendering to shadow map for Directional lights by @mvaligursky in #4924
- Directional shadow support for WebGPU by @mvaligursky in #4931
- Small update to PCF5 sampling chunk to be compatible with WebGPU by @mvaligursky in #4932
- Updated few engine examples to use createGraphicsDevice function by @mvaligursky in #4933
- Element Drag Helper - Screen to Local gives wrong values if parent is scaled by @yaustar in #4935
- Uniform buffer supports arrays by @mvaligursky in #4936
- Update to internal DebugGraphics class to allow better error messages by @mvaligursky in #4939
- SpineBoy example updated to use createGraphicsDevice by @mvaligursky in #4941
- Clustered-spot-shadows example converted to use createGraphicsDevice by @mvaligursky in #4942
- Improve performance of some path's methods by @querielo in #4943
- Improve render pass logging of the framebuffer on WebGPU by @mvaligursky in #4944
- Update TypeScript to 4.9.4 by @willeastcott in #4948
- Add standard material invert for gloss channels by @slimbuck in #4949
- Moved compiled shader cache from device to DeviceCache instance by @mvaligursky in #4960
- Rename material uniform glossiness to gloss by @slimbuck in #4962
- Replace mix with 1 - value for energy conservation by @GSterbrant in #4963
Fixes
- [Fix] Fix to attribute based morphing by @mvaligursky in #4923
- [Fix] Postprocessing optimization. by @querielo in #4927
- [Fix] Regression of world space drag bug #3748 by @yaustar in #4937
- [Fix] Fix to light options processing causing clustered shaders compilation when lights change by @mvaligursky in #4955
- [Fix] Fix null access caused in clustered light code when no meshes use lights by @mvaligursky in #4956
- [Fix] Clustered light culls meshes when the atlas slot is reassigned by @mvaligursky in #4958
- [Fix] A few small material bits by @slimbuck in #4959
- [Fix] Light conservation also affecting ambient (diffuse) light. by @GSterbrant in #4961
Full Changelog: v1.59.0...v1.60.0