Breaking changes
- [BREAKING] Removed support for static lights by @mvaligursky in #5502
- [BREAKING] Layer.cullingMask and Camera.cullingMask has been removed as not needed by @mvaligursky in #5506
Changes
- Simple GpuProfiler implementation for WebGL and WebGPU by @mvaligursky in #5470
- Custom material type by @GSterbrant in #5445
- Optimize
AssetRegistry
class by @willeastcott in #5457 - Optimize AssetRegistry.find and findAll by @Maksims in #5480
- Optimization of the render pipeline cache access on WebGPU by @mvaligursky in #5490
- Optimized the key generation for StencilParameters by @mvaligursky in #5491
- Optimize LayerComposition layer lookup by name and id using Maps by @mvaligursky in #5514
- EventHandler: refactor, comment and optimize by @Maksims in #5501
- Support for powerPreference option for WebGPU by @mvaligursky in #5418
- Updated the way WebGPU submits command buffers for rendering by @mvaligursky in #5423
- Custom shader based multisampled depth resolve for WebGPU by @mvaligursky in #5485
- Bump allocation for Uniform Buffers on WebGPU by @mvaligursky in #5438
- Additional per camera uniforms added to the view bind group by @mvaligursky in #5416
- Improved the contact hardening shadows example by @GSterbrant in #5411
- Handle anim events during reverse playback by @ellthompson in #5413
- Change behaviour of lightSize by @GSterbrant in #5421
- Simplify the normal offset shadow coordinate method for clustered point lights by @GSterbrant in #5425
- Removed no longer needed temporarily WebGPU test code by @mvaligursky in #5427
- Compensate PCSS kernel with depth range for directional lights by @GSterbrant in #5441
- Export TextureUtils. by @slimbuck in #5448
- Update webgpu types package to latest version by @mvaligursky in #5449
- Update lightmapper chunks to 1_65 by @GSterbrant in #5465
- Implement/use
GraphNode#remove
by @kungfooman in #5469 - Updated eslint-config to 1.50 by @mvaligursky in #5472
- Improves PCSS with directional light by @GSterbrant in #5456
- Only rebuild shaders on sky rotation change if changing away from identity by @mvaligursky in #5467
- Don't try to normalize depth by @GSterbrant in #5476
- VSM shadows work on WebGPU by @mvaligursky in #5475
- Keep clustered lighting always enabled on WebGPU by @mvaligursky in #5477
- Initialize basis using WasmModule by @slimbuck in #5489
- Remove string.toBool function by @mvaligursky in #5493
- Typedoc: assign categories to classes by @willeastcott in #5495
- Typedoc: Ensure both setters and getters appear in docs by @willeastcott in #5496
- Update time.js by @epreston in #5498
- Improve some JSDoc blocks by @willeastcott in #5499
- Lit material by @slimbuck in #5488
- Update README.md by @epreston in #5503
- Remove obsolete code comment by @mvaligursky in #5504
- Very small cleanup in Layers by @mvaligursky in #5505
- Light hash generation does not use strings by @mvaligursky in #5508
- Add MeshInstance.transparent to optimize access to it by @mvaligursky in #5516 @5517
- Update tsconfig.json by @epreston in #5518
- Chore JSDoc cleanup by @epreston in #5519
- Refactor string.format by @willeastcott in #5520
- Fire ‘shader:generate’ when a shader code gets generated by @mvaligursky in #5524
- Tint shader compiler updated to more up to date version (mid May) by @mvaligursky in #5527
- chore: update examples build by @epreston in #5523
- Update puppeteer by @epreston in #5529
- chore: update eslint for examples by @epreston in #5530
- Provide
litArgs
backwards compatibility by @kungfooman in #5494
Bug fixes
- Fix to recently introduced error related to postprocessing on a camera with RT by @mvaligursky in #5396
- AnimBlendTree fix by @ellthompson in #5401
- Fix to depth-grab pass on WebGl1 by @mvaligursky in #5402
- Fix PCSS with WebGL1 by @GSterbrant in #5403
- [Fix] Define pc_fragColor in all cases by @mvaligursky in #5404
- Env bugfix by @slimbuck in #5405
- Fix to window resizing on WebGPU when post-effects are used by @mvaligursky in #5406
- Additional envAtlas fixes by @slimbuck in #5412
- Disable normal bias with VSM by @GSterbrant in #5417
- Delete cache entry when setting null value by @slimbuck in #5419
- Fix to broken omni shadows on WebGL2 with clustered lighting by @GSterbrant in #5424
- Fix
Entity#destroy
by @kungfooman in #5414 - [Anim Component] Fix exit time conditions for non looping animations by @ellthompson in #5426
- Fix directional light not fading out with only a single cascade. by @GSterbrant in #5429
- Fix point light shadows missing float packing by @GSterbrant in #5432
- Fix comment for cascaded shadows by @GSterbrant in #5430
- Fix float unpacking by @GSterbrant in #5433
- Correctly render textures using drawTexture by @mvaligursky in #5434
- Fix to drawDepthTexture to not rendered flipped by @mvaligursky in #5435
- [Fix] Do not dispatch local lights when clustered lighting is enabled by @mvaligursky in #5443
- Morph: fix options handling and targets validation by @kungfooman in #5442
- Fix omni light shadows with PCSS and clustered by @GSterbrant in #5446
- Don't write to FragDepth unless depth value is modified by @GSterbrant in #5451
- Order draco vertex normals correctly by @slimbuck in #5453
- Don't assume MRT extension is available on webgl1 by @slimbuck in #5454
- [Fix] Workaround for shader compile issue on iOS 15 related to MRT by @mvaligursky in #5459
- Fix AssetRegistry#get to support string ids by @willeastcott in #5461
- Fix script hotreload by @slimbuck in #5462
- Fixes Adreno 610 and 618 bugs by @GSterbrant in #5463
- [Fix] Depth grab-pass wasn’t working correctly on WebGL1 in some cases by @mvaligursky in #5464
- Add missing types to StandardMaterial by @jbromberg in #5466
- Ignore undefined lighting params when applying scene settings by @mvaligursky in #5478
- Add .js to three import's by @kungfooman in #5482
- Instancing fix by @slimbuck in #5486
- Fix up Typedocs with missing properties by @willeastcott in #5487
- Fix WebGL depth texture support by @liamdon in #5497
- Small fix to Meshinstance’s cache of shaders for passes by @mvaligursky in #5507
- Fix flipY handling for WebGPU engine examples by @mvaligursky in #5500
- fix: example thumbnail build by @epreston in #5522
- Fix deprecated warning by @slimbuck in #5528
Examples
- Examples es5 build fix by @ellthompson in #5407
- [Fix] ReflectionPlanar example uses existing envAtlas by @mvaligursky in #5410
- Flip debug depth texture rendering in examples by @mvaligursky in #5436
- [Examples Browser] Thumbnail generation fix by @ellthompson in #5439
- [Examples Browser] Engine sourcemaps fix by @ellthompson in #5447
- Example ModelOutline works on WebGPU now by @mvaligursky in #5479
- Example shader-compile is enabled for WebGPU by @mvaligursky in #5525
- [Examples] Created a shared ignoreList for examples by @mvaligursky in #5531
New Contributors
- @jbromberg made their first contribution in #5466
- @epreston made their first contribution in #5498
Full Changelog: v1.64.4...v1.65.0