What's New
- Transition to modern JavaScript and add an ES6 module build target (#2641)
- WebXR Input Source squeeze events (#2632) (Thanks @Maksims!)
- WebXR DOM Overlay API (#2614) (Thanks @Maksims!)
- WebXR Image Tracking API (#2574) (Thanks @Maksims!)
- WebXR Depth Sensing API (#2561) (Thanks @Maksims!)
- Area Lights - API remains private for now for testing purposes - includes preview example (#2535) (Thanks @marklundin!)
- Add Scroll View UI example (#1895)
- Discrete engine build targets via
npm run build:es5
etc. (#2652) (Thanks @kungfooman!) LayerComposition
andForwardRenderer
refactored to useRenderAction
(#2681)- Added support for base64 URLs on handlers expecting array buffers (#2639)
- Optimize
ForwardRenderer#updateShaders
(#2638) - Optimize
ElementComponent
/ScreenComponent
events (#2707) pc.MeshInstance#castShadow
is no longer public API (#2612)- Remove
SyncQueue
from core (#2674) - Remove
Version#notequals
(#2658) - Remove unused reference counting from batching code (#2646)
- Split anim code into separate classes (#2663)
- Split out some modules into smaller ones (#2696)
- Reorganize font source (#2671)
- Refactor script reserved name code (#2647)
- Complete deprecation of
Application
scene API (#2662)
Bug Fixes
AnimComponent
: Treat zero or null duration transitions the same as all others (#2627)AnimComponent
: Ensure parameters are copied when loading a state graph (#2628)AnimComponent
: Avoid crash on load if component has been assigned a now deleted animation asset (#2702)ElementComponent
: Fixes and docs improvements (#2669)RenderComponent
: Avoid accessing null when render asset has been deleted in Editor (#2625)- Fix
fixCubemapSeamsNone.frag
shader chunk which had incorrect type and failed to compile (#2637) - Fix markup links in JSDoc for properties (#2640)
- Fix JSDoc component tags in Anim API (#2664)
- Remove circular dependency from private function
shFromCubemap
(note change of function signature) (#2648) - Fix WebGL 1.0 depth layer pass in Editor projects (#2657)
- When firing an
attr
event from a script, use a copy of the old value e.g. for vectors and colors (#2634) - Only clone old script attribute value if there is an event handler for the
attr
event attached (#2677) - Remove use of
pc.
inlight.js
(#2675) - Fix skybox rotation and GGX specular in Editor (#2654)
- Fix
assets.find
to match other API and returnnull
if asset is not found (#2620) - Improve gamepad poll to reuse mapping array (#1154)
- Fix bug where new sound instances aren't kept (#2618)
- Make tweening example render better on mobile (#2684)
- Make gamepad
getAxis
return type consistent with docs (#2694) - Fix search on API reference landing page (#2720)
- AR engine examples use transparent canvas rendering (#2713)
- Switch
Animation#setName
toAnimation#name
(#2710)