Release 0.7.5

Release 0.7.5

Augmented Reality through the WebXR Device API and Video/Canvas textures as well as many final fixes and convenience improvements to 0.7.x.

The texture size limitation of WebGL2 (usually 2048x2048) no longer applies to Wonderland Engine with compressed textures.

Changelog 

Editor

  • Added “webxr” to AR frameworks
  • Added support for video MIME-Types in web server
  • Added option to disable Wonderleap script tag
  • Fixed font url: now relative to make deployment easier
  • Fixed potential crash when rotating object with scaled parent
  • Fixed webserver crashing the editor when http://localhost:8080 is requested
  • Fixed image size change not causing update and recompression
  • Implemented splitting of textures into tiles for new tile based texture atlas
  • Now packaging .basis textures into .bin file
  • Added “Project Settings > Rendering” settings for texture atlas sizes
  • Fixed crash in JobSystem on the 2049th job
  • Fixed editor icon on Ubuntu
  • Fixed use of too many file descriptors on Linux
  • Fixed uninitialized memory in .bin file to fix output different depending on OS
  • Fixed unexpeced results when downscaling non-square images
  • Fixed changing maxSize param of Images not triggering recompression
  • Fixed issues with JavaScript files bundled in different order depending on OS
  • Removed js/ from default script paths

Engine

  • Implemented support for Augmented Reality based on the WebXR Device API
  • Implemented support video and canvas textures
  • Switched to a tile-based texture atlas for compressed textures, significantly improving use of texture memory
  • Fixed various rare issues causing textures not appearing
  • Fixed potential object translation mixup when adding meshes
  • Fixed potential missing index buffer after removing all meshes from a batch
  • Implemented repeating of compressed textures
  • Removed artifical object limit by allowing multiple draw calls per batch
  • Implemented calculation of max objects per draw call to avoid overflowing uniform buffer size device limit

Runtime

  • Optimized batching to only rebatch changed meshes instead of entire batch
  • Fixed adding new objects causing transformations to jump to other objects in rare cases
  • Increase texture atlas size limit
  • Fixed all JavaScript components reset to empty objects after 32 objects are created
  • Fixed first delta time passed to JavaScript being a huge negative number
  • Implemented smooth loading of textures on non-threaded runtime
  • Optimized basis transcoding
  • Reduced runtime thread count to 2 for threaded runtimes to reduce unused thread overhead
  • Fixed performance degraded due to memory access being in debug mode

JS API

  • Added support for HTMLVideoElement and HTMLCanvasElement as parameters for WL.Texture.constructor
  • Fixed WL.Object.getComponent() sometimes not returning correct type for JavaScript components
  • Added set WL.Object.name sometimes not returning correct type for JavaScript components
  • Fixed WL.InputComponent.handedness returning null despite there being a handedness value
  • Made WL.Object.addComponent() call start() on new JavaScript components
  • Added WL.onXRSupported callback list
  • Added WL.arSupported and WL.vrSupported
  • Added WL.onSceneLoaded callback list
  • Added onActivate and onDeactivate functions for custom components
  • Fixed WL.Object.rotateObject parameters
  • Added WL.AnimationComponent.playCount
  • Added WL.Texture.update() to update texture to HTMLCanvasElement/HTMLVideoElement/Image
  • Fixed playCount not applied on WL.AnimationComponent.play()

JS Components

  • cursor: Click now regards a new handedness property
  • Added vr-mode-active-switch component to switch components active/inactive depending on whether in VR or not
  • howler-audio-*: Update to newer APIs and fix position not retrieved correctly
  • Added hit-test-location component to set up and retrieve WebXR Device API hit tests
  • Added video-texture component to download video from url and apply to material
  • Fixed howler-audio-source component not updating source position
Last Update: November 29, 2020

Stay up to date.