Skip to content

v1.6.0

Latest
Compare
Choose a tag to compare
@dmarcos dmarcos released this 23 May 10:35
· 270 commits to master since this release

1.6.0 (May 23, 2024)

Tons of bug fixes. Memory management and performance improvements. API to control tick / tock execution order.

Bug fixes

  • Update wrist object position and rotation only when joint poses are available (#5438) (@mrxz)
  • Fix issue when checking schema properties when a schema changes (#5426) (@mrxz)
  • Set correct default value for scene.background when the background component is removed (#5417) (@mrxz)
  • Fix fog removal from scene (#5418) (@mrxz)
  • Fix Chrome non-passive violation warnings for touchmove and touchstart event handlers (#5511) (@mrxz, @mitchallen)
  • Fix bug when loading models on child entities of controllers (#5415) (@mrxz)
  • Fix bug in handling processSound callback when sound hadn't loaded yet (#5414) (@mrxz)
  • Fix misspelled variable names after using a spell checker (#5462) (@mrxz)
  • Fix problem when a shader that declares itself as glsl3 has its version ignored (bbe74f5) (@dmarcos)
  • Fix problem when checking for duplicate names of property types (#5475) (@mrxz)
  • Fix problem when adding children entities to a hand-tracking-controls entity before the hand model has loaded (12d550c) (@dmarcos)
  • Hide hand-tracking-controls entity when there's no hand tracking available (dbdb9da) (@dmarcos)
  • Fix issues when applying mixins to primitives (#5483) (@mrxz)
  • Fix issue when a component is not removed from the DOM via mixin removal / update (#5492) (@mrxz)
  • Fix timing issue when initializing XR Layers (#5489) (@zjm-meta)
  • Fix problem where scene doesn't wait / timeout on a-asset-items (#5491) (@mrxz)
  • Fix bug when using setAttribute on a-scene if a system has not yet initialized (#5482) (@mrxz)
  • Fix broken parser cache of getComponentPropertyPath (#5467) (@mrxz)
  • Fix issue when shadowMaps are always enabled. Make sure it's only enabled when there's a shadow component present (#5399) (@mrxz)
  • Fix issue when children of an entity with hand-tracking-controls don't follow the hand (874fced) (@dmarcos)
  • Fix ES modules support on node (#5522) (@vincentfretin)
  • Make rotation axis order is consistent when using setAttribute and modifying object3D directly (#5513) (@mrxz)
  • Fix issue when calculating the size of the bounding box of an obb-collider (5da7166) (@dmarcos)
  • Fix issue when the el.hasLoaded flag can be true but not all components have initialized (924dc00) (@dmarcos)
  • Fix issue when trying to remove a mesh before model was loaded in obj-model component (#5499) (@Elettrotecnica)
  • Use renderer.useLegacyLights instead of the deprecated renderer.physicallyCorrectLights in THREE (#5389) (@vincentfretin)
  • Set correct default value for glslVersion for non-raw shaders (#5388) (@mrxz)
  • Remove "skinning: true" option when instanciating a THREE.MeshStandardMaterial object. Property deprecated in THREE (#5386) (@avdynut)
  • Fix issue when tracking an unexisting AR Hitest anchor (@hi-liang, @dmarcos) (bcc4bc2) (fix #5314)
  • Fix issue when layers are not initialized in AR mode (bb1e7a4) (@dmarcos)
  • Fix issue when removing unexisting light probe after exiting vr mode (#5429) (fix #5384) (@Elettrotecnica)
  • Fix issue when removing an obb-collider (957237d) (fix #5385)
  • Fix typo when requesting layers on the WebXR requiredFeatures list (f7e56a8) (@dmarcos)
  • Fix issue when trying to animate a non existing button on the controller (da8dc14) (@dmarcos)

Performance

  • Improve unit tests execution time (#5477) (@mrxz)
  • Recycle nextData and previousOldData objects when a component is destroyed preventing memory leaks (#5458) (@mrxz)
  • Improve pooling and recycling of internal component objects. Better memory management (#5459) (@mrxz)
  • Reduce memory allocations on component update logic (#5474) (@mrxz)
  • Improve throttleLeadingAndTrailing implementation to prevent unnecessary allocations (#5476) (@mrxz)

Enhancements

  • Introduce before/after component API to control tick / tock execution order (#5478) (@mrxz)
  • Bump to THREE r164 (@dmarcos)
  • Remove maximum canvas size (#5440) (@mrxz)
  • Cache THREE.Source instead of THREE.Textures (#5449) (@mrxz)
  • Introduce a sceneOnly flag for components that only apply to the a-scene element (#5465) (@mrxz)
  • Switch unit tests from WebVR to WebXR (#5452) (@mrxz)
  • Move back debug dependency from fork to upstream (#5508) (@arpu)
  • Introduce stencil property in the renderer system (#5509) (@mrxz)
  • Improve iPad detection logic to include iPad Pro (#5502) (@Drkjr92)
  • Remove unnecessary attribute properties and special handling of is: "attribute" in shader component (#5310) (@mrxz)
  • Improve async loading of aframe library and interoperation with ES module (#5481) (@mrxz)
  • Improve system warning messages when setting an unknown property (#5463) (@mrxz)
  • Use native bind method instead of custom implementation. Performance benefits of custom one no longer exist (#5461) (@mrxz)
  • Add Pico4 controllers support to laser-controls component (#5435) (@IamTonio)
  • Add hand model opacity to hand-tracking-controls (#5431) (@ehammons11)
  • Postpone screenshot component offscreen canvas setup until a screenshot is taken (#5442) (@arpu)
  • Update GitHub CI to use node 20.x (#5479) (@vincentfretin)
  • Use window.isSecureContext instead of manually checking URL for http/localhost/127.0.0.1 (#5487) (@mrxz)
  • Remove deprecated getComputedAttribut method (#5466) (@mrxz)
  • Remove unnecessary crossOrigin configuration for THREE loaders (#5416) (@mrxz)
  • Add support for navigator.xr.offerSession WebXR spec (#5410) (@cabanier)
  • Add support for fog, toneMapping, colorSpace conversion and logarithmicDepthBuffer to the msdf shader used in the text component (#5409) (@mrxz)
  • Remove minimum scale value. THREE handles zero scale gracefully (#5404) (@mrxz)
  • Add hide-on-enter-vr component analog to hide-on-enter-ar (9e644de) (@dmarcos)
  • Remove iOS 10 specific HLS workaround (#5450) (@mrxz)
  • Remove outdated polyfills that were needed just for IE11 (#5448) (@mrxz)
  • Docs improvements (@diarmidmackenzie, @Samu01Tech, @thepelkus-too, @Omegahed, stefanhuber, @ctrlw, @vincentfretin, @jgbarah)