@babylonjs/lite-compat 1.3.0-preview → 1.6.0-preview

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -97,7 +97,7 @@ mismapping. Once migration is complete you can drop the plugin and import from
97
97
  module-level side effects, so it never bloats consumers that don't use it.
98
98
  - **Honest:** unsupported Babylon.js APIs throw `LiteCompatError` rather than
99
99
  rendering something subtly wrong.
100
- - **Not** a full Babylon.js reimplementation. Particles, GUI, WebXR, audio, decals,
100
+ - **Not** a full Babylon.js reimplementation. Particles, GUI, WebXR, decals,
101
101
  and other features absent from Babylon Lite are out of scope.
102
102
 
103
103
  ## Supported APIs at a glance
@@ -108,52 +108,53 @@ overloads within a supported area may still be absent.
108
108
 
109
109
  | Status | Meaning |
110
110
  | ------ | ----------------------------------------------------------------------- |
111
- | ✅ | Common surface implemented and tested where possible |
112
- | ⚡ | A practical subset works; some properties/overloads are absent or throw |
113
- | ❌ | Not supported on the current Lite API (throws `LiteCompatError`) |
111
+ | ✅ | Common surface implemented and tested where possible |
112
+ | ⚡ | A practical subset works; some properties/overloads are absent or throw |
113
+ | ❌ | Not supported on the current Lite API (throws `LiteCompatError`) |
114
114
 
115
115
  ### `@babylonjs/core`
116
116
 
117
117
  | Feature area | Status | Notes |
118
118
  | ------------------------------------------------------------------------------------------------------- | :----: | -------------------------------------------------------------------------------------------------------- |
119
- | Math (`Vector*`, `Color*`, `Quaternion`, `Matrix`, `Plane`, `Ray`, `Frustum`, `Scalar`, `Axis`/`Space`) | ✅ | `Angle` / `Curve3` / `Path3D` partial |
120
- | Engine (`WebGPUEngine`, `Engine`, `ThinEngine`, `NullEngine`) | ⚡ | async startup + render loop; `beginFrame`/`endFrame` and manual `scene.render()` unsupported |
121
- | Scene (clear color, cameras/lights, fog, environment, observables, ready state) | ⚡ | sync `scene.pick` unsupported (use async `GPUPicker`); some scene enumeration needs Lite core |
122
- | Cameras (`ArcRotateCamera`, `FreeCamera`/`Universal`/`Target`, `FollowCamera`, `GeospatialCamera`) | ✅ | XR / device-orientation / stereoscopic rigs unsupported |
123
- | Lights (`Hemispheric`, `Directional`, `Point`, `Spot`) | ✅ | `RectAreaLight` / clustered lights unsupported |
124
- | Shadows (`ShadowGenerator` directional ESM/PCF, spot PCF) | ⚡ | `CascadedShadowGenerator` falls back to single cascade |
125
- | Meshes & geometry (class chain, `MeshBuilder` primitives, transforms, thin instances, `VertexData`) | ⚡ | `CreateLines`/`CreateDecal`/`CreateText`, `InstancedMesh`, LOD/edges/outline, clone/instance unsupported |
126
- | CSG / CSG2 | ✅ | over Lite boolean ops |
127
- | Gizmos (position/rotation/scale/bounding-box/light/camera + `GizmoManager`) | ⚡ | over Lite gizmo suite |
128
- | Materials (`StandardMaterial`, `PBRMaterial`, metallic-rough / spec-gloss, `NodeMaterial`) | ⚡ | `ShaderMaterial` (GLSL), `MultiMaterial`, `BackgroundMaterial` unsupported |
129
- | Textures (`Texture`, `RawTexture`, `DynamicTexture`, `CubeTexture`) | ⚡ | `HDRCubeTexture` / `RenderTargetTexture` / `MirrorTexture` unsupported |
130
- | Animation (keyframe `Animation`, easing, `Animatable`, `AnimationGroup` incl. weighted/additive blend) | ⚡ | CPU evaluation; loaded glTF skeletal blending supported |
131
- | Morph targets (`MorphTarget` / `MorphTargetManager`) | ✅ | over Lite morph targets |
132
- | Sprites (`SpriteManager` / `Sprite`) | ⚡ | camera-facing billboards; `SpriteMap` / packed atlas unsupported |
133
- | Behaviors / Actions (`AutoRotation`, `Framing`, `ActionManager`, conditions) | ⚡ | `ActionManager` is manual-dispatch; drag behaviors need Lite core |
134
- | Misc (`Observable`, `Tools`, `SmartArray`, `Tags`, gradients, `PerformanceMonitor`) | ✅ | |
135
- | Particles, post-processes, layers (glow/highlight), probes, physics, audio, WebXR | | not in Babylon Lite use native Lite `create*Task` / Havok-V2 functions |
119
+ | Math (`Vector*`, `Color*`, `Quaternion`, `Matrix`, `Plane`, `Ray`, `Frustum`, `Scalar`, `Axis`/`Space`) | ✅ | `Angle` / `Curve3` / `Path3D` partial |
120
+ | Engine (`WebGPUEngine`, `Engine`, `ThinEngine`, `NullEngine`) | ⚡ | async startup + render loop; `beginFrame`/`endFrame` and manual `scene.render()` unsupported |
121
+ | Scene (clear color, cameras/lights, fog, environment, observables, ready state) | ⚡ | sync `scene.pick` unsupported (use async `GPUPicker`); some scene enumeration needs Lite core |
122
+ | Cameras (`ArcRotateCamera`, `FreeCamera`/`Universal`/`Target`, `FollowCamera`, `GeospatialCamera`) | ✅ | XR / device-orientation / stereoscopic rigs unsupported |
123
+ | Lights (`Hemispheric`, `Directional`, `Point`, `Spot`) | ✅ | `RectAreaLight` / clustered lights unsupported |
124
+ | Shadows (`ShadowGenerator` directional ESM/PCF, spot PCF) | ⚡ | `CascadedShadowGenerator` falls back to single cascade |
125
+ | Meshes & geometry (class chain, `MeshBuilder` primitives, transforms, thin instances, `VertexData`) | ⚡ | `CreateLines`/`CreateDecal`/`CreateText`, `InstancedMesh`, LOD/edges/outline, clone/instance unsupported |
126
+ | CSG / CSG2 | ✅ | over Lite boolean ops |
127
+ | Gizmos (position/rotation/scale/bounding-box/light/camera + `GizmoManager`) | ⚡ | over Lite gizmo suite |
128
+ | Materials (`StandardMaterial`, `PBRMaterial`, metallic-rough / spec-gloss, `NodeMaterial`) | ⚡ | `ShaderMaterial` (GLSL), `MultiMaterial`, `BackgroundMaterial` unsupported |
129
+ | Textures (`Texture`, `RawTexture`, `DynamicTexture`, `CubeTexture`) | ⚡ | `HDRCubeTexture` / `RenderTargetTexture` / `MirrorTexture` unsupported |
130
+ | Animation (keyframe `Animation`, easing, `Animatable`, `AnimationGroup` incl. weighted/additive blend) | ⚡ | CPU evaluation; loaded glTF skeletal blending supported |
131
+ | Morph targets (`MorphTarget` / `MorphTargetManager`) | ✅ | over Lite morph targets |
132
+ | Sprites (`SpriteManager` / `Sprite`) | ⚡ | camera-facing billboards; `SpriteMap` / packed atlas unsupported |
133
+ | Behaviors / Actions (`AutoRotation`, `Framing`, `ActionManager`, conditions) | ⚡ | `ActionManager` is manual-dispatch; drag behaviors need Lite core |
134
+ | Misc (`Observable`, `Tools`, `SmartArray`, `Tags`, gradients, `PerformanceMonitor`) | ✅ | |
135
+ | Audio V2 (`AudioEngineV2`, `StaticSound`, `StreamingSound`, `AudioBus`, buses/sources/analyzer) | | over Lite's AudioV2 port; `MainAudioBus` spatial/analyzer and a second main bus unsupported |
136
+ | Particles, post-processes, layers (glow/highlight), probes, physics, WebXR | ❌ | not in Babylon Lite — use native Lite `create*Task` / Havok-V2 functions |
136
137
 
137
138
  ### `@babylonjs/loaders`
138
139
 
139
140
  | Feature area | Status | Notes |
140
141
  | ---------------------------------------------------------------------------------------------- | :----: | --------------------------------------------------------------- |
141
- | glTF 2.0 (+ extensions), `.babylon` | ✅ | via Lite `loadGltf` / `loadBabylon` |
142
- | `SceneLoader` (`ImportMeshAsync` / `AppendAsync` / `LoadAssetContainerAsync`), `AssetsManager` | ⚡ | `AssetContainer` partial |
143
- | Gaussian Splatting (`.ply` / `.splat` / `.sog` / `.spz`) | ⚡ | via `GaussianSplattingMesh`; LOD-streaming variants unsupported |
144
- | `OBJ` / `STL` / `FBX` / `BVH` | ❌ | not in Lite — convert to glTF |
142
+ | glTF 2.0 (+ extensions), `.babylon` | ✅ | via Lite `loadGltf` / `loadBabylon` |
143
+ | `SceneLoader` (`ImportMeshAsync` / `AppendAsync` / `LoadAssetContainerAsync`), `AssetsManager` | ⚡ | `AssetContainer` partial |
144
+ | Gaussian Splatting (`.ply` / `.splat` / `.sog` / `.spz`) | ⚡ | via `GaussianSplattingMesh`; LOD-streaming variants unsupported |
145
+ | `OBJ` / `STL` / `FBX` / `BVH` | ❌ | not in Lite — convert to glTF |
145
146
 
146
147
  ### `@babylonjs/addons` · `@recast-navigation/*`
147
148
 
148
- | Feature area | Status | Notes |
149
- | ---------------------------------------------------------------- | :----: | -------------------------------- |
150
- | `RecastJSPlugin` (navmesh, crowd, path, raycast, off-mesh links, tile-cache obstacles) | ✅ | over Lite's native Recast-V2 API |
149
+ | Feature area | Status | Notes |
150
+ | -------------------------------------------------------------------------------------- | :----: | -------------------------------- |
151
+ | `RecastJSPlugin` (navmesh, crowd, path, raycast, off-mesh links, tile-cache obstacles) | ✅ | over Lite's native Recast-V2 API |
151
152
 
152
153
  ### `@babylonjs/materials`
153
154
 
154
155
  | Feature area | Status | Notes |
155
156
  | ----------------- | :----: | ---------------------------------------------------------------------------------------------- |
156
- | Library materials | ⚡ | mapped onto the compat material surface where a Lite equivalent exists; unsupported ones throw |
157
+ | Library materials | ⚡ | mapped onto the compat material surface where a Lite equivalent exists; unsupported ones throw |
157
158
 
158
159
  > Specifiers outside the supported surface (e.g. `@babylonjs/gui`,
159
160
  > `@babylonjs/inspector`) are left untouched by the bundler plugins and resolve to