@needle-tools/engine 2.54.2-pre → 2.55.1-pre

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.
Files changed (94) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/dist/needle-engine.d.ts +39 -14
  3. package/dist/needle-engine.js +355 -355
  4. package/dist/needle-engine.js.map +4 -4
  5. package/dist/needle-engine.min.js +35 -35
  6. package/dist/needle-engine.min.js.map +4 -4
  7. package/dist/needle-engine.tsbuildinfo +1 -1
  8. package/lib/engine/engine_lightdata.js +1 -1
  9. package/lib/engine/engine_lightdata.js.map +1 -1
  10. package/lib/engine/engine_mainloop_utils.js +8 -0
  11. package/lib/engine/engine_mainloop_utils.js.map +1 -1
  12. package/lib/engine/engine_physics.d.ts +1 -1
  13. package/lib/engine/engine_physics.js +44 -3
  14. package/lib/engine/engine_physics.js.map +1 -1
  15. package/lib/engine/engine_physics.types.d.ts +13 -0
  16. package/lib/engine/engine_physics.types.js +7 -0
  17. package/lib/engine/engine_physics.types.js.map +1 -1
  18. package/lib/engine/engine_serialization_core.js +20 -10
  19. package/lib/engine/engine_serialization_core.js.map +1 -1
  20. package/lib/engine/engine_setup.js +2 -2
  21. package/lib/engine/engine_setup.js.map +1 -1
  22. package/lib/engine/engine_time.d.ts +1 -0
  23. package/lib/engine/engine_time.js +7 -0
  24. package/lib/engine/engine_time.js.map +1 -1
  25. package/lib/engine/engine_types.d.ts +4 -1
  26. package/lib/engine/engine_types.js.map +1 -1
  27. package/lib/engine/engine_utils.d.ts +1 -0
  28. package/lib/engine/engine_utils.js +3 -0
  29. package/lib/engine/engine_utils.js.map +1 -1
  30. package/lib/engine/extensions/NEEDLE_lightmaps.js +3 -1
  31. package/lib/engine/extensions/NEEDLE_lightmaps.js.map +1 -1
  32. package/lib/engine-components/Camera.d.ts +1 -2
  33. package/lib/engine-components/Camera.js +8 -10
  34. package/lib/engine-components/Camera.js.map +1 -1
  35. package/lib/engine-components/Collider.d.ts +2 -0
  36. package/lib/engine-components/Collider.js +4 -0
  37. package/lib/engine-components/Collider.js.map +1 -1
  38. package/lib/engine-components/LODGroup.js +9 -0
  39. package/lib/engine-components/LODGroup.js.map +1 -1
  40. package/lib/engine-components/OrbitControls.d.ts +8 -7
  41. package/lib/engine-components/OrbitControls.js +38 -7
  42. package/lib/engine-components/OrbitControls.js.map +1 -1
  43. package/lib/engine-components/ParticleSystem.d.ts +1 -0
  44. package/lib/engine-components/ParticleSystem.js +17 -6
  45. package/lib/engine-components/ParticleSystem.js.map +1 -1
  46. package/lib/engine-components/ParticleSystemModules.d.ts +2 -2
  47. package/lib/engine-components/ParticleSystemModules.js +27 -21
  48. package/lib/engine-components/ParticleSystemModules.js.map +1 -1
  49. package/lib/engine-components/Renderer.d.ts +1 -0
  50. package/lib/engine-components/Renderer.js +21 -2
  51. package/lib/engine-components/Renderer.js.map +1 -1
  52. package/lib/engine-components/RigidBody.js +1 -19
  53. package/lib/engine-components/RigidBody.js.map +1 -1
  54. package/lib/engine-components/SyncedTransform.js +1 -3
  55. package/lib/engine-components/SyncedTransform.js.map +1 -1
  56. package/lib/engine-components/VideoPlayer.d.ts +2 -1
  57. package/lib/engine-components/VideoPlayer.js +54 -51
  58. package/lib/engine-components/VideoPlayer.js.map +1 -1
  59. package/lib/engine-components/WebARSessionRoot.js +5 -0
  60. package/lib/engine-components/WebARSessionRoot.js.map +1 -1
  61. package/lib/engine-components/WebXR.js +13 -13
  62. package/lib/engine-components/WebXR.js.map +1 -1
  63. package/lib/engine-components/WebXRController.js +1 -2
  64. package/lib/engine-components/WebXRController.js.map +1 -1
  65. package/lib/engine-components/js-extensions/RGBAColor.d.ts +2 -0
  66. package/lib/engine-components/js-extensions/RGBAColor.js +2 -0
  67. package/lib/engine-components/js-extensions/RGBAColor.js.map +1 -1
  68. package/lib/tsconfig.tsbuildinfo +1 -1
  69. package/package.json +1 -1
  70. package/src/engine/codegen/register_types.js +2 -2
  71. package/src/engine/engine_lightdata.ts +1 -1
  72. package/src/engine/engine_mainloop_utils.ts +6 -0
  73. package/src/engine/engine_physics.ts +47 -5
  74. package/src/engine/engine_physics.types.ts +17 -0
  75. package/src/engine/engine_serialization_core.ts +25 -13
  76. package/src/engine/engine_setup.ts +2 -2
  77. package/src/engine/engine_time.ts +7 -1
  78. package/src/engine/engine_types.ts +5 -2
  79. package/src/engine/engine_utils.ts +4 -0
  80. package/src/engine/extensions/NEEDLE_lightmaps.ts +3 -1
  81. package/src/engine-components/Camera.ts +10 -15
  82. package/src/engine-components/Collider.ts +3 -0
  83. package/src/engine-components/LODGroup.ts +9 -0
  84. package/src/engine-components/OrbitControls.ts +58 -19
  85. package/src/engine-components/ParticleSystem.ts +18 -6
  86. package/src/engine-components/ParticleSystemModules.ts +29 -22
  87. package/src/engine-components/Renderer.ts +25 -2
  88. package/src/engine-components/RigidBody.ts +1 -20
  89. package/src/engine-components/SyncedTransform.ts +1 -3
  90. package/src/engine-components/VideoPlayer.ts +55 -51
  91. package/src/engine-components/WebARSessionRoot.ts +5 -0
  92. package/src/engine-components/WebXR.ts +15 -13
  93. package/src/engine-components/WebXRController.ts +1 -2
  94. package/src/engine-components/js-extensions/RGBAColor.ts +3 -0
@@ -1 +1 @@
1
- {"bundle":{"commonSourceDirectory":"../..","sourceFiles":["../../engine/engine_math.ts","../../engine-components/js-extensions/RGBAColor.ts","../../engine/engine_physics.types.ts","../../engine/engine_three_utils.ts","../../engine/engine_types.ts","../../engine/engine_utils.ts","../../engine/engine_networking_utils.ts","../../engine/debug/debug_console.ts","../../engine/debug/debug.ts","../../engine/extensions/extension_resolver.ts","../../engine/engine_default_parameters.ts","../../engine/extensions/extension_utils.ts","../../engine/engine_typestore.ts","../../engine/extensions/NEEDLE_persistent_assets.ts","../../engine/engine_serialization_core.ts","../../engine/engine_input.ts","../../engine/engine_instancing.ts","../../engine/engine_generic_utils.js","../../engine/engine_constants.ts","../../engine/engine_mainloop_utils.ts","../../engine/engine_networking_types.ts","../../engine/engine_networking_instantiate.ts","../../engine-components/js-extensions/ExtensionUtils.ts","../../engine/engine_components.ts","../../engine-components/js-extensions/Object3D.ts","../../engine/engine_gameobject.ts","../../engine/engine_gizmos.ts","../../engine/engine_physics.ts","../../engine/engine_time.ts","../../engine-schemes/vec3.ts","../../engine-schemes/transform.ts","../../engine-schemes/synced-transform-model.ts","../../engine-schemes/schemes.ts","../../engine/engine_networking_peer.ts","../../engine/engine_networking.ts","../../engine/engine_web_api.ts","../../engine/engine_networking_files_default_components.ts","../../engine/extensions/NEEDLE_components.ts","../../engine/engine_gltf.ts","../../engine/engine_networking_files.ts","../../engine/engine_assetdatabase.ts","../../engine-components/Component.ts","../../engine/engine_lightdata.ts","../../engine/extensions/NEEDLE_lightmaps.ts","../../engine/extensions/NEEDLE_lighting_settings.ts","../../engine/engine_fileloader.js","../../engine/shaders/shaderData.ts","../../engine/engine_shaders.ts","../../engine/engine_rendererdata.ts","../../engine/engine_addressables.ts","../../engine/engine_application.ts","../../engine/engine_playerview.ts","../../engine/engine_setup.ts","../../engine/engine_element_overlay.ts","../../engine/debug/debug_overlay.ts","../../engine/engine_util_decorator.ts","../../engine/api.ts","../../engine/engine_element_loading.ts","../../engine/engine_loaders.ts","../../engine/extensions/NEEDLE_animator_controller_model.ts","../../engine-components/AnimatorController.ts","../../engine/engine_serialization_decorator.ts","../../engine-components/Animator.ts","../../engine-components/Animation.ts","../../engine/extensions/NEEDLE_techniques_webgl.ts","../../engine/extensions/EXT_texture_exr.ts","../../engine/extensions/NEEDLE_gameobject_data.ts","../../engine/extensions/NEEDLE_render_objects.ts","../../engine/extensions/NEEDLE_progressive.ts","../../engine/extensions/extensions.ts","../../engine/codegen/register_types.js","../../engine-components/EventList.ts","../../engine/engine_texture.ts","../../engine/engine_serialization_builtin_serializer.ts","../../engine/engine_serialization.ts","../../engine/engine_gltf_builtin_components.ts","../../engine/engine_scenetools.ts","../../engine/engine_element.ts","../../engine-components/AlignmentConstraint.ts","../../engine-components/AnimationCurve.ts","../../engine-components/export/usdz/types.ts","../../engine-components/export/usdz/Extension.ts","../../engine-components/export/usdz/extensions/Animation.ts","../../engine-components/AudioSource.ts","../../engine-components/Camera.ts","../../engine-components/AudioListener.ts","../../engine-components/timeline/SignalAsset.ts","../../engine-components/timeline/TimelineModels.ts","../../engine-components/timeline/PlayableDirector.ts","../../engine-components/timeline/TimelineTracks.ts","../../include/three/ARButton.js","../../include/three/VRButton.js","../../engine-components/Voip.ts","../../engine-components/WebARSessionRoot.ts","../../engine-components/Gizmos.ts","../../engine-components/WebXRRig.ts","../../engine-schemes/vec4.ts","../../engine-schemes/vr-user-state-buffer.ts","../../engine-components/WebXRSync.ts","../../engine-components/XRFlag.ts","../../engine-components/WebXR.ts","../../engine-components/AvatarLoader.ts","../../engine-components/WebXRAvatar.ts","../../engine-components/avatar/Avatar_Brain_LookAt.ts","../../engine-components/ui/PointerEvents.ts","../../engine-components/Interactable.ts","../../engine-components/RigidBody.ts","../../engine-components/SyncedTransform.ts","../../engine-components/LookAtConstraint.ts","../../engine-components/OrbitControls.ts","../../engine-components/ui/Raycaster.ts","../../engine-components/ui/Interfaces.ts","../../engine-components/ui/EventSystem.ts","../../engine-components/RendererLightmap.ts","../../engine-components/BoxHelperComponent.ts","../../engine-components/ReflectionProbe.ts","../../engine/js-extensions/Layers.ts","../../engine-components/Renderer.ts","../../engine-components/ui/BaseUIComponent.ts","../../engine-components/ui/RaycastUtils.ts","../../engine-components/WebXRController.ts","../../engine-components/avatar/Avatar_MouthShapes.ts","../../engine-components/avatar/Avatar_MustacheShake.ts","../../engine-components/avatar/AvatarBlink_Simple.ts","../../engine-components/avatar/AvatarEyeLook_Rotation.ts","../../engine-components/AxesHelper.ts","../../engine-components/BasicIKConstraint.ts","../../engine-components/Collider.ts","../../engine-components/ui/Utils.ts","../../engine-components/ui/RectTransform.ts","../../engine-components/ui/Graphic.ts","../../engine-components/ui/Image.ts","../../engine-components/ui/Button.ts","../../engine-components/ui/Canvas.ts","../../engine-components/ui/CanvasGroup.ts","../../engine-components/CharacterController.ts","../../engine-components/Volume.ts","../../engine-components/ParticleSystemModules.ts","../../engine-components/DeleteBox.ts","../../engine-components/DeviceFlag.ts","../../engine-components/DragControls.ts","../../engine-components/Networking.ts","../../engine-components/DropListener.ts","../../engine-components/Duplicatable.ts","../../engine-components/EventType.ts","../../engine-components/EventTrigger.ts","../../engine-components/Joints.ts","../../engine-components/FlyControls.ts","../../include/three/EXT_mesh_gpu_instancing_exporter.js","../../engine-components/export/gltf/GltfExport.ts","../../engine-components/GridHelper.ts","../../engine-components/ui/Layout.ts","../../engine-components/GroundProjection.ts","../../engine-components/ui/Text.ts","../../engine-components/ui/InputField.ts","../../engine-components/ui/Keyboard.ts","../../engine-components/Light.ts","../../engine-components/LODGroup.ts","../../engine-components/debug/LogStats.ts","../../engine-components/NestedGltf.ts","../../engine-components/OffsetConstraint.ts","../../engine-components/ParticleSystemSubEmitter.ts","../../engine-components/ParticleSystem.ts","../../engine/engine_coroutine.ts","../../engine-components/PlayerColor.ts","../../engine/engine_networking_auto.ts","../../engine-components/Skybox.ts","../../engine/engine_input_utils.ts","../../engine/engine_create_objects.ts","../../engine-components/VideoPlayer.ts","../../engine-components/ScreenCapture.ts","../../engine-components/ShadowCatcher.ts","../../engine-components/SmoothFollow.ts","../../engine-components/ui/SpatialHtml.ts","../../engine-components/SpatialTrigger.ts","../../engine-components/SpectatorCamera.ts","../../engine-components/SpriteRenderer.ts","../../engine-schemes/synced-camera-model.ts","../../engine-components/SyncedCamera.ts","../../engine-components/SyncedRoom.ts","../../engine/tests/test_utils.ts","../../engine-components/TestRunner.ts","../../engine-components/TransformGizmo.ts","../../engine-components/export/usdz/utils/quicklook.ts","../../engine-components/export/usdz/utils/timeutils.ts","../../engine-components/export/usdz/utils/animationutils.ts","../../engine-components/export/usdz/USDZExporter.ts","../../engine-components/WebXRGrabRendering.ts","../../engine-components/codegen/components.ts","../../needle-engine.ts","../../engine/engine.ts","../../engine/engine_networking_websocket.ts","../../engine-components/BoxCollider.ts","../../engine-components/CameraUtils.ts","../../engine-components/SphereCollider.ts","../../engine-components/js-extensions/Vector.ts","../../engine-components-experimental/Presentation.ts","../../engine-components-experimental/annotation/LinesManager.ts","../../engine-components-experimental/annotation/LineDrawer.ts","../../engine-components-experimental/networking/PlayerSync.ts","../../engine-schemes/vec2.ts"],"dts":{"sections":[{"pos":0,"end":31,"kind":"type","data":"webxr"},{"pos":33,"end":63047,"kind":"text"},{"pos":63047,"end":63877,"kind":"internal"},{"pos":63879,"end":270180,"kind":"text"}],"hash":"c29bb2eba964e1b7e2cbd3bd6c8985c12f829cede43300e98a151edb36725335"}},"version":"4.9.3"}
1
+ {"bundle":{"commonSourceDirectory":"../..","sourceFiles":["../../engine/engine_math.ts","../../engine-components/js-extensions/RGBAColor.ts","../../engine/engine_physics.types.ts","../../engine/engine_three_utils.ts","../../engine/engine_types.ts","../../engine/engine_utils.ts","../../engine/engine_networking_utils.ts","../../engine/debug/debug_console.ts","../../engine/debug/debug.ts","../../engine/extensions/extension_resolver.ts","../../engine/engine_default_parameters.ts","../../engine/extensions/extension_utils.ts","../../engine/engine_typestore.ts","../../engine/extensions/NEEDLE_persistent_assets.ts","../../engine/engine_serialization_core.ts","../../engine/engine_input.ts","../../engine/engine_instancing.ts","../../engine/engine_generic_utils.js","../../engine/engine_constants.ts","../../engine/engine_mainloop_utils.ts","../../engine/engine_networking_types.ts","../../engine/engine_networking_instantiate.ts","../../engine-components/js-extensions/ExtensionUtils.ts","../../engine/engine_components.ts","../../engine-components/js-extensions/Object3D.ts","../../engine/engine_gameobject.ts","../../engine/engine_gizmos.ts","../../engine/engine_physics.ts","../../engine/engine_time.ts","../../engine-schemes/vec3.ts","../../engine-schemes/transform.ts","../../engine-schemes/synced-transform-model.ts","../../engine-schemes/schemes.ts","../../engine/engine_networking_peer.ts","../../engine/engine_networking.ts","../../engine/engine_web_api.ts","../../engine/engine_networking_files_default_components.ts","../../engine/extensions/NEEDLE_components.ts","../../engine/engine_gltf.ts","../../engine/engine_networking_files.ts","../../engine/engine_assetdatabase.ts","../../engine-components/Component.ts","../../engine/engine_lightdata.ts","../../engine/extensions/NEEDLE_lightmaps.ts","../../engine/extensions/NEEDLE_lighting_settings.ts","../../engine/engine_fileloader.js","../../engine/shaders/shaderData.ts","../../engine/engine_shaders.ts","../../engine/engine_rendererdata.ts","../../engine/engine_addressables.ts","../../engine/engine_application.ts","../../engine/engine_playerview.ts","../../engine/engine_setup.ts","../../engine/engine_element_overlay.ts","../../engine/debug/debug_overlay.ts","../../engine/engine_util_decorator.ts","../../engine/api.ts","../../engine/engine_element_loading.ts","../../engine/engine_loaders.ts","../../engine/extensions/NEEDLE_animator_controller_model.ts","../../engine-components/AnimatorController.ts","../../engine/engine_serialization_decorator.ts","../../engine-components/Animator.ts","../../engine-components/Animation.ts","../../engine/extensions/NEEDLE_techniques_webgl.ts","../../engine/extensions/EXT_texture_exr.ts","../../engine/extensions/NEEDLE_gameobject_data.ts","../../engine/extensions/NEEDLE_render_objects.ts","../../engine/extensions/NEEDLE_progressive.ts","../../engine/extensions/extensions.ts","../../engine/codegen/register_types.js","../../engine-components/EventList.ts","../../engine/engine_texture.ts","../../engine/engine_serialization_builtin_serializer.ts","../../engine/engine_serialization.ts","../../engine/engine_gltf_builtin_components.ts","../../engine/engine_scenetools.ts","../../engine/engine_element.ts","../../engine-components/AlignmentConstraint.ts","../../engine-components/AnimationCurve.ts","../../engine-components/export/usdz/types.ts","../../engine-components/export/usdz/Extension.ts","../../engine-components/export/usdz/extensions/Animation.ts","../../engine-components/AudioSource.ts","../../engine-components/Camera.ts","../../engine-components/AudioListener.ts","../../engine-components/timeline/SignalAsset.ts","../../engine-components/timeline/TimelineModels.ts","../../engine-components/timeline/PlayableDirector.ts","../../engine-components/timeline/TimelineTracks.ts","../../include/three/ARButton.js","../../include/three/VRButton.js","../../engine-components/Voip.ts","../../engine-components/WebARSessionRoot.ts","../../engine-components/Gizmos.ts","../../engine-components/WebXRRig.ts","../../engine-schemes/vec4.ts","../../engine-schemes/vr-user-state-buffer.ts","../../engine-components/WebXRSync.ts","../../engine-components/XRFlag.ts","../../engine-components/WebXR.ts","../../engine-components/AvatarLoader.ts","../../engine-components/WebXRAvatar.ts","../../engine-components/avatar/Avatar_Brain_LookAt.ts","../../engine-components/ui/PointerEvents.ts","../../engine-components/Interactable.ts","../../engine-components/RigidBody.ts","../../engine-components/SyncedTransform.ts","../../engine-components/LookAtConstraint.ts","../../engine-components/OrbitControls.ts","../../engine-components/ui/Raycaster.ts","../../engine-components/ui/Interfaces.ts","../../engine-components/ui/EventSystem.ts","../../engine-components/RendererLightmap.ts","../../engine-components/BoxHelperComponent.ts","../../engine-components/ReflectionProbe.ts","../../engine/js-extensions/Layers.ts","../../engine-components/Renderer.ts","../../engine-components/ui/BaseUIComponent.ts","../../engine-components/ui/RaycastUtils.ts","../../engine-components/WebXRController.ts","../../engine-components/avatar/Avatar_MouthShapes.ts","../../engine-components/avatar/Avatar_MustacheShake.ts","../../engine-components/avatar/AvatarBlink_Simple.ts","../../engine-components/avatar/AvatarEyeLook_Rotation.ts","../../engine-components/AxesHelper.ts","../../engine-components/BasicIKConstraint.ts","../../engine-components/Collider.ts","../../engine-components/ui/Utils.ts","../../engine-components/ui/RectTransform.ts","../../engine-components/ui/Graphic.ts","../../engine-components/ui/Image.ts","../../engine-components/ui/Button.ts","../../engine-components/ui/Canvas.ts","../../engine-components/ui/CanvasGroup.ts","../../engine-components/CharacterController.ts","../../engine-components/Volume.ts","../../engine-components/ParticleSystemModules.ts","../../engine-components/DeleteBox.ts","../../engine-components/DeviceFlag.ts","../../engine-components/DragControls.ts","../../engine-components/Networking.ts","../../engine-components/DropListener.ts","../../engine-components/Duplicatable.ts","../../engine-components/EventType.ts","../../engine-components/EventTrigger.ts","../../engine-components/Joints.ts","../../engine-components/FlyControls.ts","../../include/three/EXT_mesh_gpu_instancing_exporter.js","../../engine-components/export/gltf/GltfExport.ts","../../engine-components/GridHelper.ts","../../engine-components/ui/Layout.ts","../../engine-components/GroundProjection.ts","../../engine-components/ui/Text.ts","../../engine-components/ui/InputField.ts","../../engine-components/ui/Keyboard.ts","../../engine-components/Light.ts","../../engine-components/LODGroup.ts","../../engine-components/debug/LogStats.ts","../../engine-components/NestedGltf.ts","../../engine-components/OffsetConstraint.ts","../../engine-components/ParticleSystemSubEmitter.ts","../../engine-components/ParticleSystem.ts","../../engine/engine_coroutine.ts","../../engine-components/PlayerColor.ts","../../engine/engine_networking_auto.ts","../../engine-components/Skybox.ts","../../engine/engine_input_utils.ts","../../engine/engine_create_objects.ts","../../engine-components/VideoPlayer.ts","../../engine-components/ScreenCapture.ts","../../engine-components/ShadowCatcher.ts","../../engine-components/SmoothFollow.ts","../../engine-components/ui/SpatialHtml.ts","../../engine-components/SpatialTrigger.ts","../../engine-components/SpectatorCamera.ts","../../engine-components/SpriteRenderer.ts","../../engine-schemes/synced-camera-model.ts","../../engine-components/SyncedCamera.ts","../../engine-components/SyncedRoom.ts","../../engine/tests/test_utils.ts","../../engine-components/TestRunner.ts","../../engine-components/TransformGizmo.ts","../../engine-components/export/usdz/utils/quicklook.ts","../../engine-components/export/usdz/utils/timeutils.ts","../../engine-components/export/usdz/utils/animationutils.ts","../../engine-components/export/usdz/USDZExporter.ts","../../engine-components/WebXRGrabRendering.ts","../../engine-components/codegen/components.ts","../../needle-engine.ts","../../engine/engine.ts","../../engine/engine_networking_websocket.ts","../../engine-components/BoxCollider.ts","../../engine-components/CameraUtils.ts","../../engine-components/SphereCollider.ts","../../engine-components/js-extensions/Vector.ts","../../engine-components-experimental/Presentation.ts","../../engine-components-experimental/annotation/LinesManager.ts","../../engine-components-experimental/annotation/LineDrawer.ts","../../engine-components-experimental/networking/PlayerSync.ts","../../engine-schemes/vec2.ts"],"dts":{"sections":[{"pos":0,"end":31,"kind":"type","data":"webxr"},{"pos":33,"end":63769,"kind":"text"},{"pos":63769,"end":64599,"kind":"internal"},{"pos":64601,"end":271157,"kind":"text"}],"hash":"b9b7f75b0c06ce781adaac1964afb9ce566c2ea7a27920c5220aefd2d4a7414b"}},"version":"4.9.4"}
@@ -16,7 +16,7 @@ export class LightDataRegistry {
16
16
  }
17
17
  registerTexture(sourceId, type, tex, index) {
18
18
  if (debugLightmap)
19
- console.log("Registering lightmap", sourceId, LightmapType[type], tex);
19
+ console.log("Registering ", LightmapType[type], tex, sourceId);
20
20
  if (!this._lightmaps.has(sourceId))
21
21
  this._lightmaps.set(sourceId, new Map());
22
22
  const map = this._lightmaps.get(sourceId);
@@ -1 +1 @@
1
- {"version":3,"file":"engine_lightdata.js","sourceRoot":"","sources":["../../../engine/engine_lightdata.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine_lightdata.js","sourceRoot":"","sources":["../../../engine/engine_lightdata.ts"],"names":[],"mappings":"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"}
@@ -63,6 +63,14 @@ export function processNewScripts(context) {
63
63
  i--;
64
64
  continue;
65
65
  }
66
+ if (script.registering) {
67
+ try {
68
+ script.registering();
69
+ }
70
+ catch (err) {
71
+ console.error(err);
72
+ }
73
+ }
66
74
  // console.log(script, script.gameObject)
67
75
  // TODO: we should not call awake on components with inactive gameobjects
68
76
  if (script.__internalAwake !== undefined) {
@@ -1 +1 @@
1
- {"version":3,"file":"engine_mainloop_utils.js","sourceRoot":"","sources":["../../../engine/engine_mainloop_utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine_mainloop_utils.js","sourceRoot":"","sources":["../../../engine/engine_mainloop_utils.ts"],"names":[],"mappings":"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"}
@@ -80,7 +80,7 @@ export declare class Physics {
80
80
  internal_getRigidbody(rb: IRigidbody): RigidBody | null;
81
81
  private internalUpdateProperties;
82
82
  private lines?;
83
- step(_deltaTime?: number): void;
83
+ step(dt?: number): void;
84
84
  private updateDebugRendering;
85
85
  postStep(): void;
86
86
  /** sync rendered objects with physics world (except for colliders without rigidbody) */
@@ -3,9 +3,10 @@ import { CircularBuffer, getParam } from "./engine_utils";
3
3
  import { getWorldPosition, getWorldQuaternion, getWorldScale, setWorldPositionXYZ, setWorldQuaternionXYZW } from "./engine_three_utils";
4
4
  import { Collision, ContactPoint, } from './engine_types';
5
5
  import { foreachComponent } from './engine_gameobject';
6
- import RAPIER, { ActiveEvents, Collider, ColliderDesc, EventQueue, JointData, RigidBody, RigidBodyType, World } from '@dimforge/rapier3d-compat';
7
- import { CollisionDetectionMode } from '../engine/engine_physics.types';
6
+ import RAPIER, { ActiveEvents, CoefficientCombineRule, Collider, ColliderDesc, EventQueue, JointData, RigidBody, RigidBodyType, World } from '@dimforge/rapier3d-compat';
7
+ import { CollisionDetectionMode, PhysicsMaterialCombine } from '../engine/engine_physics.types';
8
8
  import { Gizmos } from './engine_gizmos';
9
+ import { Mathf } from './engine_math';
9
10
  const debugPhysics = getParam("debugphysics");
10
11
  const debugColliderPlacement = getParam("debugphysicscolliders");
11
12
  const debugCollisions = getParam("debugcollisions");
@@ -347,6 +348,41 @@ export class Physics {
347
348
  desc.setTranslation(this._tempPosition.x, this._tempPosition.y, this._tempPosition.z);
348
349
  desc.setRotation(this._tempQuaternion);
349
350
  desc.setSensor(collider.isTrigger);
351
+ // TODO: we might want to update this if the material changes
352
+ const physicsMaterial = collider.sharedMaterial;
353
+ if (physicsMaterial) {
354
+ CoefficientCombineRule;
355
+ desc.setRestitution(physicsMaterial.bounciness);
356
+ switch (physicsMaterial.bounceCombine) {
357
+ case PhysicsMaterialCombine.Average:
358
+ desc.setRestitutionCombineRule(CoefficientCombineRule.Average);
359
+ break;
360
+ case PhysicsMaterialCombine.Maximum:
361
+ desc.setRestitutionCombineRule(CoefficientCombineRule.Max);
362
+ break;
363
+ case PhysicsMaterialCombine.Minimum:
364
+ desc.setRestitutionCombineRule(CoefficientCombineRule.Min);
365
+ break;
366
+ case PhysicsMaterialCombine.Multiply:
367
+ desc.setRestitutionCombineRule(CoefficientCombineRule.Multiply);
368
+ break;
369
+ }
370
+ desc.setFriction(physicsMaterial.dynamicFriction);
371
+ switch (physicsMaterial.frictionCombine) {
372
+ case PhysicsMaterialCombine.Average:
373
+ desc.setFrictionCombineRule(CoefficientCombineRule.Average);
374
+ break;
375
+ case PhysicsMaterialCombine.Maximum:
376
+ desc.setFrictionCombineRule(CoefficientCombineRule.Max);
377
+ break;
378
+ case PhysicsMaterialCombine.Minimum:
379
+ desc.setFrictionCombineRule(CoefficientCombineRule.Min);
380
+ break;
381
+ case PhysicsMaterialCombine.Multiply:
382
+ desc.setFrictionCombineRule(CoefficientCombineRule.Multiply);
383
+ break;
384
+ }
385
+ }
350
386
  // if we want to use explicit mass properties, we need to set the collider density to 0
351
387
  // otherwise rapier will compute the mass properties based on the collider shape and density
352
388
  // https://rapier.rs/docs/user_guides/javascript/rigid_bodies#mass-properties
@@ -495,13 +531,18 @@ export class Physics {
495
531
  }
496
532
  // private _lastStepTime: number | undefined = 0;
497
533
  lines;
498
- step(_deltaTime) {
534
+ step(dt) {
499
535
  if (!this.world)
500
536
  return;
501
537
  this._isUpdatingPhysicsWorld = true;
502
538
  if (!this.eventQueue) {
503
539
  this.eventQueue = new EventQueue(false);
504
540
  }
541
+ if (dt) {
542
+ // if we make to sudden changes to the timestep the physics can get unstable
543
+ // https://rapier.rs/docs/user_guides/javascript/integration_parameters/#dt
544
+ this.world.timestep = Mathf.lerp(this.world.timestep, dt, 0.8);
545
+ }
505
546
  this.world.step(this.eventQueue);
506
547
  this._isUpdatingPhysicsWorld = false;
507
548
  this.updateDebugRendering(this.world);
@@ -1 +1 @@
1
- {"version":3,"file":"engine_physics.js","sourceRoot":"","sources":["../../../engine/engine_physics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine_physics.js","sourceRoot":"","sources":["../../../engine/engine_physics.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,16 @@
1
+ export declare enum PhysicsMaterialCombine {
2
+ Average = 0,
3
+ Multiply = 1,
4
+ Minimum = 2,
5
+ Maximum = 3
6
+ }
7
+ export type PhysicsMaterial = {
8
+ bounceCombine: PhysicsMaterialCombine;
9
+ bounciness: number;
10
+ frictionCombine: PhysicsMaterialCombine;
11
+ dynamicFriction: number;
12
+ staticFriction: number;
13
+ };
1
14
  export declare enum CollisionDetectionMode {
2
15
  Discrete = 0,
3
16
  Continuous = 1
@@ -1,3 +1,10 @@
1
+ export var PhysicsMaterialCombine;
2
+ (function (PhysicsMaterialCombine) {
3
+ PhysicsMaterialCombine[PhysicsMaterialCombine["Average"] = 0] = "Average";
4
+ PhysicsMaterialCombine[PhysicsMaterialCombine["Multiply"] = 1] = "Multiply";
5
+ PhysicsMaterialCombine[PhysicsMaterialCombine["Minimum"] = 2] = "Minimum";
6
+ PhysicsMaterialCombine[PhysicsMaterialCombine["Maximum"] = 3] = "Maximum";
7
+ })(PhysicsMaterialCombine || (PhysicsMaterialCombine = {}));
1
8
  export var CollisionDetectionMode;
2
9
  (function (CollisionDetectionMode) {
3
10
  CollisionDetectionMode[CollisionDetectionMode["Discrete"] = 0] = "Discrete";
@@ -1 +1 @@
1
- {"version":3,"file":"engine_physics.types.js","sourceRoot":"","sources":["../../../engine/engine_physics.types.ts"],"names":[],"mappings":"AAEA,MAAM,CAAN,IAAY,sBAGX;AAHD,WAAY,sBAAsB;IAChC,2EAAY,CAAA;IACZ,+EAAc,CAAA;AAChB,CAAC,EAHW,sBAAsB,KAAtB,sBAAsB,QAGjC;AAED,MAAM,CAAN,IAAY,oBAWX;AAXD,WAAY,oBAAoB;IAC9B,+DAAQ,CAAA;IACR,qFAAmB,CAAA;IACnB,qFAAmB,CAAA;IACnB,qFAAmB,CAAA;IACnB,oFAAmB,CAAA;IACnB,sFAAoB,CAAA;IACpB,sFAAoB,CAAA;IACpB,sFAAoB,CAAA;IACpB,qFAAoB,CAAA;IACpB,2EAAe,CAAA;AACjB,CAAC,EAXW,oBAAoB,KAApB,oBAAoB,QAW/B;AAGD,MAAM,CAAN,IAAY,IAMX;AAND,WAAY,IAAI;IACd,+BAAQ,CAAA;IACR,yBAAK,CAAA;IACL,yBAAK,CAAA;IACL,yBAAK,CAAA;IACL,8BAAQ,CAAA;AACV,CAAC,EANW,IAAI,KAAJ,IAAI,QAMf"}
1
+ {"version":3,"file":"engine_physics.types.js","sourceRoot":"","sources":["../../../engine/engine_physics.types.ts"],"names":[],"mappings":"AAGA,MAAM,CAAN,IAAY,sBAMX;AAND,WAAY,sBAAsB;IAEhC,yEAAW,CAAA;IACX,2EAAY,CAAA;IACZ,yEAAW,CAAA;IACX,yEAAW,CAAA;AACb,CAAC,EANW,sBAAsB,KAAtB,sBAAsB,QAMjC;AAUD,MAAM,CAAN,IAAY,sBAGX;AAHD,WAAY,sBAAsB;IAChC,2EAAY,CAAA;IACZ,+EAAc,CAAA;AAChB,CAAC,EAHW,sBAAsB,KAAtB,sBAAsB,QAGjC;AAED,MAAM,CAAN,IAAY,oBAWX;AAXD,WAAY,oBAAoB;IAC9B,+DAAQ,CAAA;IACR,qFAAmB,CAAA;IACnB,qFAAmB,CAAA;IACnB,qFAAmB,CAAA;IACnB,oFAAmB,CAAA;IACnB,sFAAoB,CAAA;IACpB,sFAAoB,CAAA;IACpB,sFAAoB,CAAA;IACpB,qFAAoB,CAAA;IACpB,2EAAe,CAAA;AACjB,CAAC,EAXW,oBAAoB,KAApB,oBAAoB,QAW/B;AAGD,MAAM,CAAN,IAAY,IAMX;AAND,WAAY,IAAI;IACd,+BAAQ,CAAA;IACR,yBAAK,CAAA;IACL,yBAAK,CAAA;IACL,yBAAK,CAAA;IACL,8BAAQ,CAAA;AACV,CAAC,EANW,IAAI,KAAJ,IAAI,QAMf"}
@@ -1,7 +1,7 @@
1
1
  import { getParam } from "./engine_utils";
2
2
  import { isPersistentAsset } from "./extensions/NEEDLE_persistent_assets";
3
3
  import { debugExtension } from "../engine/engine_default_parameters";
4
- import { LogType, showBalloonMessage } from "./debug/debug";
4
+ import { LogType, showBalloonMessage, showBalloonWarning } from "./debug/debug";
5
5
  import { isLocalNetwork } from "./engine_networking_utils";
6
6
  import { $BuiltInTypeFlag } from "./engine_typestore";
7
7
  const debug = getParam("debugserializer");
@@ -292,7 +292,15 @@ function checkObjectAssignments(obj, serializedData, implementationInformation)
292
292
  continue;
293
293
  const value = obj[key];
294
294
  const serialized = serializedData[key];
295
+ // check if the field is defined in the class
295
296
  if (implementationInformation?.getDefinedKey(typeName, key) === false) {
297
+ // if the field is defined but the defined key is uppercase we need to show a warning
298
+ // because all fields are serialized in lowercase
299
+ const firstCharUppercase = key.charAt(0).toUpperCase() + key.slice(1);
300
+ if (implementationInformation.getDefinedKey(typeName, firstCharUppercase)) {
301
+ showBalloonWarning("<strong>Please rename</strong> \"" + firstCharUppercase + "\" to \"" + key + "\" in " + typeName);
302
+ console.warn("Please use lowercase for field: \"" + firstCharUppercase + "\" in " + typeName, serialized, obj);
303
+ }
296
304
  continue;
297
305
  }
298
306
  if (serialized === undefined || serialized === null)
@@ -307,14 +315,16 @@ function checkObjectAssignments(obj, serializedData, implementationInformation)
307
315
  if (!hasOtherKeys) {
308
316
  showBalloonMessage(`<strong>Missing serialization for object reference!</strong>\n\nPlease change to: \n@serializable(Object3D)\n${key}? : Object3D;\n\nin script ${typeName}.ts\n<a href="https://docs.needle.tools/serializable" target="_blank">documentation</a>`, LogType.Warn);
309
317
  console.warn(typeName, key, obj[key], obj);
318
+ continue;
310
319
  }
311
320
  }
312
321
  }
313
322
  }
314
- else if (typeof value === "string") {
323
+ if (typeof value === "string") {
315
324
  if (serialized.endsWith(".gltf") || serialized.endsWith(".glb")) {
316
325
  showBalloonMessage(`<strong>Missing serialization for object reference!</strong>\n\nPlease change to: \n@serializable(AssetReference)\n${key}? : AssetReference;\n\nin script ${typeName}.ts\n<a href="https://docs.needle.tools/serializable" target="_blank">documentation</a>`, LogType.Warn);
317
326
  console.warn(typeName, key, obj[key], obj);
327
+ continue;
318
328
  }
319
329
  }
320
330
  }
@@ -343,15 +353,15 @@ function implictlyAssignPrimitiveTypes(obj, serializedData) {
343
353
  }
344
354
  }
345
355
  }
346
- function isPrimitiveType(val) {
347
- switch (typeof val) {
348
- case "number":
349
- case "string":
350
- case "boolean":
351
- return true;
352
- }
353
- return false;
356
+ }
357
+ function isPrimitiveType(val) {
358
+ switch (typeof val) {
359
+ case "number":
360
+ case "string":
361
+ case "boolean":
362
+ return true;
354
363
  }
364
+ return false;
355
365
  }
356
366
  function deserializeObjectWithType(data, typeOrConstructor, context, typeContext, currentValue) {
357
367
  // e.g. @serializable((data) => { })
@@ -1 +1 @@
1
- {"version":3,"file":"engine_serialization_core.js","sourceRoot":"","sources":["../../../engine/engine_serialization_core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine_serialization_core.js","sourceRoot":"","sources":["../../../engine/engine_serialization_core.ts"],"names":[],"mappings":"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"}
@@ -260,8 +260,8 @@ export class Context {
260
260
  this.renderer.domElement.style.width = "100%";
261
261
  this.renderer.domElement.style.height = "100%";
262
262
  if (this.composer) {
263
- this.composer.setSize(width, height);
264
- this.composer.setPixelRatio(window.devicePixelRatio);
263
+ this.composer.setSize?.call(this.composer, width, height);
264
+ this.composer.setPixelRatio?.call(this.composer, window.devicePixelRatio);
265
265
  }
266
266
  }
267
267
  }