Release 0.9.2

Release 0.9.2

This release unlocks realtime shadows for VR, AR and 3D and brings further bugfixes and UX improvements for 0.9.

Dynamic Shadows 

For shadow mapping, the renderer is required to do additional passes over the entire scene. Wonderland Engine’s draw call optimizations allow shadow passes at a fraction of the cost compared to tranditional web 3D frameworks.

Our methods are optimized for VR and Oculus Quest and use 4 (Sunlight), 2 (Pointlight) and 1 (Spotlight) passes respectively.



  • Fixed crashes when switching transformation gizmo during use
  • Made line width of transformation gizmo consistent
  • Fixed selection in SceneView after deleting object during transformation gizmo use
  • Fixed crash on opening pre-0.9.0 projects with fontSize set
  • Implemented listening to custom templates: index.html, manifest.json and service-worker.js
  • Fixed packaging waiting for hidden background jobs
  • Fixed recently introduced crashes in image compression
  • Fixed AssetBrowser adding .js prefix when already specified
  • Fixed ambientColor not always imported
  • Added warning for unsupported PBR texture encodings
  • Added import of Phong emissive property
  • Added import of alpha masking properties
  • Added import of roughtnessFactor and metallicFactor properties on Physical materials
  • Added import of occlusion texture and factor on Physical materials
  • Added Project Settings > Physics > maxTimestep to control physics simulation substepping
  • Fixed a potential crash during shader hot-reloading
  • Fixed textures not renameable in Resources view
  • Optimized new selection outline


  • Added dynamic shadows for spot, point and sun lights
  • Fixed sun light shading in Physical shader
  • Added substepping to increase physics simulation stability

Shader API

  • Implemented support for various preprocessor commands and logical operators

JavaScript API

  • Added support for JointId data access in WL.Mesh
  • Added skinned attribute for WL.Mesh constructor
  • Added WL.Scene.reset()
  • Fixed crash on WL.Texture.destroy() with compressed images
  • Fixed exception when setting some material properties
  • Added a workaround for WebXR Emulator reporting 0-sized frame size when entering VR to avoid a crash
  • Added WL.Object.changed for detecting potential transformation change since last frame
  • Fixed setting WL.Viewcomponent.fov not having an effect in XR sessions
Last Update: September 23, 2022

Stay up to date.