@needle-tools/engine 4.3.0-alpha → 4.3.0-alpha.1

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 (101) hide show
  1. package/CHANGELOG.md +3 -0
  2. package/dist/needle-engine.bundle.js +1467 -222
  3. package/dist/needle-engine.bundle.light.js +1467 -222
  4. package/dist/needle-engine.bundle.light.min.js +32 -32
  5. package/dist/needle-engine.bundle.light.umd.cjs +3 -3
  6. package/dist/needle-engine.bundle.min.js +3 -3
  7. package/dist/needle-engine.bundle.umd.cjs +3 -3
  8. package/dist/needle-engine.light.d.ts +9 -9
  9. package/lib/engine/engine_types.d.ts +162 -17
  10. package/lib/engine-components/Animator.d.ts +129 -21
  11. package/lib/engine-components/Animator.js +115 -21
  12. package/lib/engine-components/Animator.js.map +1 -1
  13. package/lib/engine-components/AnimatorController.d.ts +161 -32
  14. package/lib/engine-components/AnimatorController.js +176 -29
  15. package/lib/engine-components/AnimatorController.js.map +1 -1
  16. package/lib/engine-components/AudioListener.d.ts +16 -5
  17. package/lib/engine-components/AudioListener.js +16 -5
  18. package/lib/engine-components/AudioListener.js.map +1 -1
  19. package/lib/engine-components/AudioSource.d.ts +120 -28
  20. package/lib/engine-components/AudioSource.js +120 -37
  21. package/lib/engine-components/AudioSource.js.map +1 -1
  22. package/lib/engine-components/AvatarLoader.d.ts +61 -0
  23. package/lib/engine-components/AvatarLoader.js +61 -1
  24. package/lib/engine-components/AvatarLoader.js.map +1 -1
  25. package/lib/engine-components/AxesHelper.d.ts +19 -1
  26. package/lib/engine-components/AxesHelper.js +19 -1
  27. package/lib/engine-components/AxesHelper.js.map +1 -1
  28. package/lib/engine-components/BoxHelperComponent.d.ts +26 -0
  29. package/lib/engine-components/BoxHelperComponent.js +26 -0
  30. package/lib/engine-components/BoxHelperComponent.js.map +1 -1
  31. package/lib/engine-components/Camera.d.ts +126 -37
  32. package/lib/engine-components/Camera.js +139 -37
  33. package/lib/engine-components/Camera.js.map +1 -1
  34. package/lib/engine-components/CameraUtils.js +20 -0
  35. package/lib/engine-components/CameraUtils.js.map +1 -1
  36. package/lib/engine-components/Collider.d.ts +95 -21
  37. package/lib/engine-components/Collider.js +100 -23
  38. package/lib/engine-components/Collider.js.map +1 -1
  39. package/lib/engine-components/Component.d.ts +554 -106
  40. package/lib/engine-components/Component.js +352 -81
  41. package/lib/engine-components/Component.js.map +1 -1
  42. package/lib/engine-components/DragControls.d.ts +95 -21
  43. package/lib/engine-components/DragControls.js +126 -32
  44. package/lib/engine-components/DragControls.js.map +1 -1
  45. package/lib/engine-components/DropListener.d.ts +99 -16
  46. package/lib/engine-components/DropListener.js +119 -14
  47. package/lib/engine-components/DropListener.js.map +1 -1
  48. package/lib/engine-components/Light.d.ts +102 -5
  49. package/lib/engine-components/Light.js +102 -44
  50. package/lib/engine-components/Light.js.map +1 -1
  51. package/lib/engine-components/NeedleMenu.d.ts +28 -11
  52. package/lib/engine-components/NeedleMenu.js +28 -11
  53. package/lib/engine-components/NeedleMenu.js.map +1 -1
  54. package/lib/engine-components/Networking.d.ts +37 -5
  55. package/lib/engine-components/Networking.js +37 -5
  56. package/lib/engine-components/Networking.js.map +1 -1
  57. package/lib/engine-components/SceneSwitcher.js +44 -0
  58. package/lib/engine-components/SceneSwitcher.js.map +1 -1
  59. package/lib/engine-components/SpatialTrigger.d.ts +66 -1
  60. package/lib/engine-components/SpatialTrigger.js +74 -2
  61. package/lib/engine-components/SpatialTrigger.js.map +1 -1
  62. package/lib/engine-components/SpectatorCamera.d.ts +66 -4
  63. package/lib/engine-components/SpectatorCamera.js +132 -6
  64. package/lib/engine-components/SpectatorCamera.js.map +1 -1
  65. package/lib/engine-components/SyncedTransform.d.ts +45 -6
  66. package/lib/engine-components/SyncedTransform.js +45 -6
  67. package/lib/engine-components/SyncedTransform.js.map +1 -1
  68. package/lib/engine-components/TransformGizmo.d.ts +49 -3
  69. package/lib/engine-components/TransformGizmo.js +49 -3
  70. package/lib/engine-components/TransformGizmo.js.map +1 -1
  71. package/lib/engine-components/webxr/WebXR.d.ts +131 -22
  72. package/lib/engine-components/webxr/WebXR.js +132 -23
  73. package/lib/engine-components/webxr/WebXR.js.map +1 -1
  74. package/lib/engine-components-experimental/networking/PlayerSync.d.ts +82 -9
  75. package/lib/engine-components-experimental/networking/PlayerSync.js +76 -11
  76. package/lib/engine-components-experimental/networking/PlayerSync.js.map +1 -1
  77. package/package.json +1 -1
  78. package/src/engine/engine_types.ts +179 -18
  79. package/src/engine-components/Animator.ts +142 -22
  80. package/src/engine-components/AnimatorController.ts +184 -34
  81. package/src/engine-components/AudioListener.ts +16 -5
  82. package/src/engine-components/AudioSource.ts +126 -37
  83. package/src/engine-components/AvatarLoader.ts +61 -2
  84. package/src/engine-components/AxesHelper.ts +21 -1
  85. package/src/engine-components/BoxHelperComponent.ts +26 -0
  86. package/src/engine-components/Camera.ts +147 -41
  87. package/src/engine-components/CameraUtils.ts +20 -0
  88. package/src/engine-components/Collider.ts +102 -27
  89. package/src/engine-components/Component.ts +605 -129
  90. package/src/engine-components/DragControls.ts +134 -38
  91. package/src/engine-components/DropListener.ts +143 -23
  92. package/src/engine-components/Light.ts +105 -44
  93. package/src/engine-components/NeedleMenu.ts +29 -11
  94. package/src/engine-components/Networking.ts +37 -6
  95. package/src/engine-components/SceneSwitcher.ts +48 -1
  96. package/src/engine-components/SpatialTrigger.ts +80 -3
  97. package/src/engine-components/SpectatorCamera.ts +136 -18
  98. package/src/engine-components/SyncedTransform.ts +50 -7
  99. package/src/engine-components/TransformGizmo.ts +49 -4
  100. package/src/engine-components/webxr/WebXR.ts +144 -27
  101. package/src/engine-components-experimental/networking/PlayerSync.ts +85 -13
@@ -1 +1 @@
1
- {"version":3,"file":"Camera.js","sourceRoot":"","sources":["../../src/engine-components/Camera.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,gCAAgC,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAGvI,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,6CAA6C,CAAC;AAE3E,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEjF,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,qFAAqF;AACrF,MAAM,CAAN,IAAY,UAQX;AARD,WAAY,UAAU;IAClB,2CAAQ,CAAA;IACR,yCAAyC;IACzC,+CAAU,CAAA;IACV,0GAA0G;IAC1G,uDAAc,CAAA;IACd,oDAAoD;IACpD,6DAAiB,CAAA;AACrB,CAAC,EARW,UAAU,KAAV,UAAU,QAQrB;AAED,MAAM,KAAK,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;AACnC,MAAM,qBAAqB,GAAG,QAAQ,CAAC,uBAAuB,CAAC,CAAC;AAEhE;;;GAGG;AACH,MAAM,OAAO,MAAO,SAAQ,SAAS;IAEjC,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,wFAAwF;IACxF,IAAI,MAAM;QACN,IAAI,IAAI,CAAC,IAAI,YAAY,iBAAiB;YAAE,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;QACpE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAC5D,CAAC;IAED,IAAI,MAAM,CAAC,KAAa;QACpB,IAAI,IAAI,CAAC,IAAI,YAAY,iBAAiB,EAAE;YACxC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,KAAK,EAAE;gBAC5B,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;gBACzB,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC;aACtC;SACJ;IACL,CAAC;IACD,iHAAiH;IACjH,IAAI,WAAW;QACX,IAAI,IAAI,CAAC,IAAI,YAAY,iBAAiB,EAAE;YACxC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;SACxB;QACD,OAAO,IAAI,CAAC,IAAI,CAAC;IACrB,CAAC;IAED,IAAI,WAAW,CAAC,GAAuB;QACnC,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,IAAI,GAAG,CAAC;QACxC,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;QAChB,IAAI,OAAO,IAAI,IAAI,CAAC,IAAI,EAAE;YACtB,IAAI,IAAI,CAAC,IAAI,YAAY,iBAAiB,EAAE;gBACxC,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE;oBACzB,OAAO,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;oBAC/D,OAAO;iBACV;gBACD,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;gBAC1B,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC;aACtC;SACJ;IACL,CAAC;IAED,8EAA8E;IAC9E,IAAI,aAAa,KAAa,OAAO,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;IAE3D,IAAI,aAAa,CAAC,GAAG;QACjB,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,IAAI,GAAG,CAAC;QAC3C,IAAI,CAAC,cAAc,GAAG,GAAG,CAAC;QAC1B,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE;YACjD,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;YACrB,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC;SACtC;IACL,CAAC;IACO,cAAc,GAAW,GAAG,CAAC;IAErC,6EAA6E;IAC7E,IAAI,YAAY,KAAa,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;IAEzD,IAAI,YAAY,CAAC,GAAG;QAChB,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,IAAI,GAAG,CAAC;QAC1C,IAAI,CAAC,aAAa,GAAG,GAAG,CAAC;QACzB,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,EAAE;YAChD,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;YACpB,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC;SACtC;IACL,CAAC;IACO,aAAa,GAAW,IAAI,CAAC;IAErC;;OAEG;IACH,kBAAkB;QACd,IAAI,IAAI,CAAC,IAAI,EAAE;YACX,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC;YACrC,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC;YACnC,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC;SACtC;IACL,CAAC;IAED,0GAA0G;IAE1G,IAAW,UAAU;QACjB,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IACD,IAAW,UAAU,CAAC,GAAe;QACjC,IAAI,GAAG,KAAK,IAAI,CAAC,WAAW;YAAE,OAAO;QACrC,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC;QACvB,IAAI,CAAC,+BAA+B,EAAE,CAAC;IAC3C,CAAC;IAEM,YAAY,GAAY,KAAK,CAAC;IAE9B,gBAAgB,GAAW,CAAC,CAAC;IAG7B,iBAAiB,GAAW,CAAC,CAAC;IAErC;;;MAGE;IAEF,IAAW,WAAW,CAAC,GAAW;QAC9B,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC;QACxB,IAAI,IAAI,CAAC,IAAI,EAAE;YACX,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,GAAG,CAAC;SAC/B;IACL,CAAC;IACD,IAAW,WAAW;QAClB,IAAI,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;QAC5C,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IACO,YAAY,GAAW,UAAU,CAAC;IAE1C;;QAEI;IACJ,IAAW,YAAY,CAAC,GAAW;QAC/B,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;IAC5C,CAAC;IAED,qEAAqE;IAErE,IAAW,oBAAoB,CAAC,GAAuB;QACnD,IAAI,GAAG,KAAK,IAAI,CAAC,qBAAqB;YAAE,OAAO;QAC/C,IAAI,GAAG,KAAK,SAAS;YACjB,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;;YAEvC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC/D,IAAI,CAAC,+BAA+B,EAAE,CAAC;IAC3C,CAAC;IACD,IAAW,oBAAoB;QAC3B,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACtC,CAAC;IACO,qBAAqB,GAAY,SAAS,CAAC;IAEnD,oEAAoE;IAEpE,IAAW,mBAAmB,CAAC,GAAuB;QAClD,IAAI,GAAG,KAAK,IAAI,CAAC,oBAAoB;YAAE,OAAO;QAC9C,IAAI,GAAG,KAAK,SAAS;YACjB,IAAI,CAAC,oBAAoB,GAAG,SAAS,CAAC;;YAEtC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC/D,IAAI,CAAC,+BAA+B,EAAE,CAAC;IAC3C,CAAC;IACD,IAAW,mBAAmB;QAC1B,OAAO,IAAI,CAAC,oBAAoB,CAAC;IACrC,CAAC;IACO,oBAAoB,GAAY,SAAS,CAAC;IAElD,mEAAmE;IAEnE,IAAW,kBAAkB,CAAC,GAAsB;QAChD,IAAI,GAAG,KAAK,IAAI,CAAC,mBAAmB;YAAE,OAAO;QAC7C,IAAI,GAAG,KAAK,SAAS;YACjB,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAC;;YAErC,IAAI,CAAC,mBAAmB,GAAG,GAAG,CAAC;QACnC,IAAI,CAAC,+BAA+B,EAAE,CAAC;IAC3C,CAAC;IACD,IAAW,kBAAkB;QACzB,OAAO,IAAI,CAAC,mBAAmB,CAAC;IACpC,CAAC;IACO,mBAAmB,GAAW,SAAS,CAAC;IAEhD,2CAA2C;IAE3C,IAAW,oBAAoB,CAAC,GAAuB;QACnD,IAAI,CAAC,qBAAqB,GAAG,GAAG,CAAC;IACrC,CAAC;IACD,IAAW,oBAAoB;QAC3B,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACtC,CAAC;IACO,qBAAqB,GAAY,SAAS,CAAC;IAEnD,yFAAyF;IAEzF,IAAW,eAAe;QACtB,OAAO,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC;IACzC,CAAC;IACD,IAAW,eAAe,CAAC,GAAqB;QAC5C,IAAI,CAAC,GAAG;YAAE,OAAO;QACjB,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;YACxB,IAAI,CAAC,GAAG,CAAC,KAAK;gBAAE,OAAO;YACvB,IAAI,CAAC,gBAAgB,GAAG,GAAG,CAAC,KAAK,EAAE,CAAC;SACvC;;YACI,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrC,gFAAgF;QAChF,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS;YAAE,IAAI,CAAC,gBAAgB,CAAC,KAAK,GAAG,CAAC,CAAC;QAC7D,IAAI,CAAC,+BAA+B,EAAE,CAAC;IAC3C,CAAC;IAED;;MAEE;IAEF,IAAW,aAAa,CAAC,EAAwB;QAC7C,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;IAC7B,CAAC;IACD,IAAW,aAAa;QACpB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC/B,CAAC;IACO,cAAc,GAAyB,IAAI,CAAC;IAE5C,gBAAgB,CAAa;IAC7B,IAAI,CAAU;IACd,IAAI,GAAkD,IAAI,CAAC;IAC3D,WAAW,GAAe,UAAU,CAAC,UAAU,CAAC;IAChD,OAAO,CAAgB;IAE/B;;;;OAIG;IACH,IAAW,GAAG;QACV,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IACD;;;OAGG;IACH,IAAW,WAAW;QAClB,IAAI,IAAI,CAAC,gBAAgB;YACrB,IAAI,CAAC,WAAW,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC,IAAK,CAAC;IACtB,CAAC;IAEO,MAAM,CAAC,OAAO,GAAY,IAAI,OAAO,EAAE,CAAC;IACxC,MAAM,CAAC,UAAU,GAAY,IAAI,OAAO,EAAE,CAAC;IAC5C,gBAAgB,CAAC,CAAS,EAAE,CAAS,EAAE,GAAS;QACnD,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC;QAC7B,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC;QAC9B,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACrB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,gCAAgC,CAAC,MAAM,CAAC,CAAC;QAC5D,IAAI,qBAAqB;YAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC1K,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACd,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QACtB,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;QAChE,MAAM,WAAW,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;QAC1C,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACrB,GAAG,CAAC,SAAS,EAAE,CAAC;QAChB,IAAI,GAAG,EAAE;YACL,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;YAC1B,OAAO,GAAG,CAAC;SACd;aACI;YACD,OAAO,IAAI,GAAG,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;SACpD;IACL,CAAC;IAEO,QAAQ,CAAW;IAC3B;;;OAGG;IACI,UAAU;QACb,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAChB,IAAI,CAAC,QAAQ,GAAG,IAAI,OAAO,EAAE,CAAC;YAC9B,IAAI,CAAC,aAAa,EAAE,CAAC;SACxB;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IACD,qGAAqG;IAC9F,aAAa;QAChB,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,IAAI,CAAC,QAAQ,GAAG,IAAI,OAAO,EAAE,CAAC;QAClD,IAAI,CAAC,QAAQ,CAAC,uBAAuB,CAAC,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAChJ,CAAC;IACD;;OAEG;IACI,yBAAyB,CAAC,MAAe,EAAE,WAAqB;QACnE,IAAI,WAAW,EAAE;YACb,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;SACnH;QACD,IAAI,MAAM,KAAK,IAAI,CAAC,iBAAiB;YAAE,OAAO,MAAM,CAAC;QACrD,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC/C,CAAC;IACgB,iBAAiB,GAAG,IAAI,OAAO,EAAE,CAAC;IAGnD,gBAAgB;IAChB,KAAK;QACD,IAAI,qBAAqB,EAAE;YACvB,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,GAAG,CAAC,EAAE;gBACzC,MAAM,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC;gBACvB,MAAM,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC;gBACvB,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;gBAClD,MAAM,GAAG,GAAG,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;gBAC1C,MAAM,SAAS,GAAG,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;gBAC1E,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;YAC7D,CAAC,CAAC,CAAC;SACN;IACL,CAAC;IAED,gBAAgB;IAChB,QAAQ;QACJ,IAAI,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,CAAC,IAAI,kBAAkB,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QAC7G,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,IAAI,CAAC,GAAG,IAAI,YAAY,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE;YAC/D,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;YACpC,aAAa,CAAC,IAAI,CAAC,CAAC;SACvB;QACD,IAAI,CAAC,+BAA+B,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;IAChE,CAAC;IAED,gBAAgB;IAChB,SAAS;QACL,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IAGD,gBAAgB;IAChB,cAAc;QACV,IAAI,IAAI,CAAC,IAAI,EAAE;YAEX,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACf,IAAI,CAAC,aAAa,EAAE,CAAC;aACxB;YAED,gDAAgD;YAChD,IAAI,IAAI,CAAC,WAAW,KAAK,UAAU,CAAC,UAAU;gBAC1C,IAAI,CAAC,+BAA+B,EAAE,CAAC;YAE3C,IAAI,IAAI,CAAC,cAAc,EAAE;gBACrB,IAAI,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE;oBAClC,gFAAgF;oBAChF,IAAI,CAAC,IAAI,CAAC,8BAA8B,CAAC,EAAE;wBACvC,IAAI,CAAC,8BAA8B,CAAC,GAAG,IAAI,CAAC;wBAC5C,OAAO,CAAC,IAAI,CAAC,mJAAmJ,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,CAAA;qBACpM;iBACJ;gBAED,2GAA2G;gBAC3G,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;gBACvC,MAAM,iBAAiB,GAAG,IAAI,CAAC,CAAA,oCAAoC;gBACnE,MAAM,QAAQ,GAAG,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC;gBACtE,IAAI,QAAQ,EAAE;oBACV,qEAAqE;oBACrE,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC;oBACjD,IAAI,CAAC,eAAe,EAAE,CAAC;oBACvB,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;oBACpE,OAAO,EAAE,eAAe,EAAE,CAAC;iBAC9B;aACJ;SACJ;IACL,CAAC;IAED;;QAEI;IACJ,WAAW;QACP,IAAI,IAAI,CAAC,IAAI;YAAE,OAAO;QAEtB,MAAM,oBAAoB,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QAEzD,6EAA6E;QAC7E,IAAI,GAAG,GAAkD,IAAI,CAAC;QAC9D,IAAI,oBAAoB,EAAE;YACtB,GAAG,GAAG,IAAI,CAAC,UAAiB,CAAC;YAC7B,GAAG,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC;YACxB,IAAI,GAAG,YAAY,iBAAiB;gBAChC,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC;SAC3B;;YAEG,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAkD,CAAC;QACvF,IAAI,GAAG,IAAI,GAAG,CAAC,QAAQ,EAAE;YACrB,IAAI,GAAG,YAAY,iBAAiB,EAAE;gBAClC,IAAI,IAAI,CAAC,IAAI;oBACT,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;gBACxB,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC;gBAC/B,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC;gBAC7B,GAAG,CAAC,sBAAsB,EAAE,CAAC;aAChC;SACJ;aACI,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACzB,GAAG,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;YAC/H,IAAI,IAAI,CAAC,WAAW;gBAChB,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC;YAC/B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;SAC5B;aACI;YACD,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,GAAG,GAAG,CAAC;YAC3C,GAAG,GAAG,IAAI,kBAAkB,CAAC,MAAM,CAAC,UAAU,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,GAAG,MAAM,EAAE,MAAM,CAAC,WAAW,GAAG,MAAM,EAAE,MAAM,CAAC,WAAW,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;YAC1L,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;SAC5B;QACD,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;QAEhB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC;QAE1C,IAAI,IAAI,CAAC,GAAG,IAAI,YAAY,EAAE;YAC1B,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;SACvC;IACL,CAAC;IAED,+BAA+B,CAAC,IAA+B;QAC3D,IAAI,IAAI,CAAC,OAAO,CAAC,mBAAmB,KAAK,IAAI,EAAE;YAC3C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;SAC9B;IACL,CAAC;IAED,2EAA2E;IAC3E,eAAe,CAAC,IAA+B;QAC3C,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACZ,IAAI,KAAK;gBAAE,OAAO,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAA;YACnE,OAAO;SACV;QAED,yFAAyF;QACzF,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC;QAE7B,IAAI,KAAK,EAAE;YACP,MAAM,GAAG,GAAG,YAAY,IAAI,CAAC,IAAI,mBAAmB,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;YACnF,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;SACtB;QACD,QAAQ,IAAI,CAAC,WAAW,EAAE;YACtB,KAAK,UAAU,CAAC,IAAI;gBAChB,OAAO;YAEX,KAAK,UAAU,CAAC,MAAM;gBAClB,IAAI,MAAM,CAAC,6BAA6B,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;oBACpD,IAAI,CAAC,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,iBAAiB,GAAG,KAAK,EAAE;wBAC3D,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC;wBACrC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;wBACjD,OAAO;qBACV;iBACJ;gBAED,gHAAgH;gBAChH,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,EAAE,WAAW,KAAK,IAAI;oBACrE,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAE5B,0CAA0C;gBAC1C,IAAI,IAAI,CAAC,qBAAqB,KAAK,SAAS;oBACxC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,oBAAoB,GAAG,IAAI,CAAC,qBAAqB,CAAC;qBACpE,IAAI,KAAK;oBAAE,OAAO,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,iCAAiC,CAAC,CAAA;gBACpF,IAAI,IAAI,CAAC,oBAAoB,KAAK,SAAS;oBACvC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,mBAAmB,GAAG,IAAI,CAAC,oBAAoB,CAAC;gBACvE,IAAI,IAAI,CAAC,mBAAmB,KAAK,SAAS;oBACtC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,kBAAkB,GAAG,IAAI,CAAC,mBAAmB,CAAC;qBAChE,IAAI,KAAK;oBAAE,OAAO,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,gCAAgC,CAAC,CAAA;gBAEnF,MAAM;YACV,KAAK,UAAU,CAAC,UAAU;gBACtB,IAAI,IAAI,CAAC,gBAAgB,EAAE;oBACvB,IAAI,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC;oBACxC,6DAA6D;oBAC7D,IAAI,MAAM,CAAC,6BAA6B,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;wBACpD,KAAK,GAAG,IAAI,CAAC,iBAAiB,IAAI,CAAC,CAAC;qBACvC;oBACD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC;oBACrC,iDAAiD;oBACjD,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE;wBACvB,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,mBAAmB,EAAE,CAAC,CAAC;qBAClG;yBAAM;wBACH,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,gBAAgB,EAAE,KAAK,CAAC,CAAC;qBACrE;iBACJ;qBACI;oBACD,IAAI,KAAK;wBAAE,OAAO,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,4BAA4B,EAAE,IAAI,CAAC,CAAA;iBACnF;gBACD,MAAM;YACV,KAAK,UAAU,CAAC,aAAa;gBACzB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,IAAI,CAAA;gBACpC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;gBACjD,MAAM;SACb;IACL,CAAC;IAED;;OAEG;IACH,gBAAgB;QACZ,IAAI,CAAC,IAAI,CAAC,OAAO;YACb,IAAI,CAAC,OAAO,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;IACzB,CAAC;IAED;;QAEI;IACJ,MAAM,CAAC,6BAA6B,CAAC,OAAgB;QACjD,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,UAAU,EAAE,CAAC;QAClD,IAAI,CAAC,OAAO;YAAE,OAAO,KAAK,CAAC;QAC3B,IAAI,OAAO,OAAO,CAAC,cAAc,CAAC,KAAK,SAAS,EAAE;YAC9C,OAAO,OAAO,CAAC,cAAc,CAAC,CAAC;SAClC;QACD,MAAM,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,CAAC;QAC1D,IAAI,KAAK;YACL,kBAAkB,CAAC,0BAA0B,GAAG,oBAAoB,GAAG,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;QACzG,IAAI,WAAW,GAAG,oBAAoB,KAAK,UAAU,IAAI,oBAAoB,KAAK,aAAa,CAAC;QAChG,IAAI,OAAO,CAAC,MAAM,EAAE;YAChB,IAAI,oBAAoB,KAAK,QAAQ,EAAE;gBACnC,wEAAwE;gBACxE,sEAAsE;gBACtE,IAAI,SAAS,CAAC,SAAS,EAAE,QAAQ,CAAC,eAAe,CAAC,EAAE;oBAChD,WAAW,GAAG,IAAI,CAAC;iBACtB;gBACD,uBAAuB;qBAClB,IAAI,SAAS,CAAC,SAAS,EAAE,QAAQ,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,SAAS,EAAE,QAAQ,CAAC,uBAAuB,CAAC,EAAE;oBACzG,WAAW,GAAG,IAAI,CAAC;iBACtB;aACJ;SACJ;QAED,OAAO,CAAC,cAAc,CAAC,GAAG,WAAW,CAAC;QACtC,OAAO,WAAW,CAAC;IACvB,CAAC;;AAjfD;IADC,YAAY,EAAE;oCAQd;AASD;IADC,YAAY,EAAE;yCAcd;AAKD;IADC,YAAY,EAAE;2CAQd;AAMD;IADC,YAAY,EAAE;0CAQd;AAgBD;IADC,YAAY,EAAE;wCAGd;AAOD;IADC,YAAY,EAAE;4CACsB;AAErC;IADC,YAAY,EAAE;gDACqB;AAGpC;IADC,YAAY,EAAE;iDACsB;AAOrC;IADC,YAAY,EAAE;yCAMd;AAgBD;IADC,YAAY,EAAE;kDAQd;AAQD;IADC,YAAY,EAAE;iDAQd;AAQD;IADC,YAAY,CAAC,KAAK,CAAC;gDAQnB;AAQD;IADC,YAAY,EAAE;kDAGd;AAQD;IADC,YAAY,CAAC,SAAS,CAAC;6CAGvB;AAiBD;IADC,YAAY,CAAC,aAAa,CAAC;2CAG3B;AAyTL,MAAM,YAAY;IAEN,OAAO,CAAS;IAChB,OAAO,CAAW;IAE1B,IAAI,OAAO,KAAK,OAAO,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IAE/C,YAAY,MAAc;QACtB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IAC1B,CAAC;IAED,KAAK;QACD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAY,CAAC;QACrF,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACf,IAAI,CAAC,IAAI,CAAC,gCAAgC,CAAC,EAAE;gBACzC,IAAI,CAAC,gCAAgC,CAAC,GAAG,IAAI,CAAC;gBAC9C,OAAO,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,OAAO,CAAC,IAAI,6BAA6B,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;aACnG;SACJ;aACI,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC,OAAO,EAAE;YACrD,IAAI,KAAK;gBACL,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,CAAC,OAAO,CAAC,IAAI,eAAe,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YAC1F,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,gCAAgC,CAAC;YACxD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC;SAChD;IACL,CAAC;CACJ;AAGD,SAAS,aAAa,CAAC,GAAW;IAC9B,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;IACtC,IAAI,SAAS,EAAE;QACX,IAAI,GAAG,CAAC,OAAO,CAAC,mBAAmB,KAAK,GAAG,EAAE;YACzC,UAAU,CAAC,iBAAiB,CAAC,GAAG,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;SAC/D;KAEJ;AACL,CAAC"}
1
+ {"version":3,"file":"Camera.js","sourceRoot":"","sources":["../../src/engine-components/Camera.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,13 @@ import { RGBAColor } from "../engine/js-extensions/index.js";
7
7
  import { Camera, ClearFlags } from "./Camera.js";
8
8
  import { OrbitControls } from "./OrbitControls.js";
9
9
  const debug = getParam("debugmissingcamera");
10
+ /**
11
+ * Handler for missing camera events. Creates a default fallback camera when no camera is found in the scene.
12
+ * Sets up camera properties based on the context and HTML element attributes.
13
+ *
14
+ * @param evt The context event containing scene and configuration information
15
+ * @returns The created camera component
16
+ */
10
17
  ContextRegistry.registerCallback(ContextEvent.MissingCamera, (evt) => {
11
18
  if (debug)
12
19
  console.warn("Creating missing camera");
@@ -43,6 +50,12 @@ ContextRegistry.registerCallback(ContextEvent.MissingCamera, (evt) => {
43
50
  }
44
51
  return cam;
45
52
  });
53
+ /**
54
+ * Handler for context creation events. Checks if camera controls should be added
55
+ * to the main camera when the context is created.
56
+ *
57
+ * @param evt The context creation event containing the context information
58
+ */
46
59
  ContextRegistry.registerCallback(ContextEvent.ContextCreated, (evt) => {
47
60
  if (!evt.context.mainCamera) {
48
61
  if (debug)
@@ -62,6 +75,13 @@ ContextRegistry.registerCallback(ContextEvent.ContextCreated, (evt) => {
62
75
  createDefaultCameraControls(evt.context);
63
76
  }
64
77
  });
78
+ /**
79
+ * Creates default orbit camera controls for the specified camera.
80
+ * Configures auto-rotation and auto-fit settings based on HTML attributes.
81
+ *
82
+ * @param context The rendering context
83
+ * @param cam Optional camera component to attach controls to (uses main camera if not specified)
84
+ */
65
85
  function createDefaultCameraControls(context, cam) {
66
86
  cam = cam ?? context.mainCameraComponent;
67
87
  const cameraObject = cam?.gameObject;
@@ -1 +1 @@
1
- {"version":3,"file":"CameraUtils.js","sourceRoot":"","sources":["../../src/engine-components/CameraUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CameraUtils.js","sourceRoot":"","sources":["../../src/engine-components/CameraUtils.ts"],"names":[],"mappings":"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"}
@@ -5,33 +5,37 @@ import { Behaviour } from "./Component.js";
5
5
  import { Rigidbody } from "./RigidBody.js";
6
6
  /**
7
7
  * Collider is the base class for all colliders. A collider is a physical shape that is used to detect collisions with other objects in the scene.
8
- * Colliders are used in combination with a Rigidbody to create physical interactions between objects.
8
+ * Colliders are used in combination with a {@link Rigidbody} to create physical interactions between objects.
9
9
  * Colliders are registered with the physics engine when they are enabled and removed when they are disabled.
10
10
  * @category Physics
11
11
  * @group Components
12
12
  */
13
13
  export declare class Collider extends Behaviour implements ICollider {
14
- /** @internal */
14
+ /**
15
+ * Identifies this component as a collider.
16
+ * @internal
17
+ */
15
18
  get isCollider(): any;
16
19
  /**
17
- * The Rigidbody that this collider is attached to.
20
+ * The {@link Rigidbody} that this collider is attached to. This handles the physics simulation for this collider.
18
21
  */
19
22
  attachedRigidbody: Rigidbody | null;
20
23
  /**
21
24
  * When `true` the collider will not be used for collision detection but will still trigger events.
25
+ * Trigger colliders can trigger events when other colliders enter their space, without creating a physical response/collision.
22
26
  */
23
27
  isTrigger: boolean;
24
28
  /**
25
- * The physics material that is used for the collider. This material defines physical properties of the collider such as friction and bounciness.
29
+ * The physics material that defines physical properties of the collider such as friction and bounciness.
26
30
  */
27
31
  sharedMaterial?: PhysicsMaterial;
28
32
  /**
29
- * The layers that the collider is assigned to.
33
+ * The layers that this collider belongs to. Used for filtering collision detection.
34
+ * @default [0]
30
35
  */
31
36
  membership: number[];
32
37
  /**
33
- * The layers that the collider will interact with.
34
- * @inheritdoc
38
+ * The layers that this collider will interact with. Used for filtering collision detection.
35
39
  */
36
40
  filter?: number[];
37
41
  /** @internal */
@@ -42,73 +46,143 @@ export declare class Collider extends Behaviour implements ICollider {
42
46
  onEnable(): void;
43
47
  /** @internal */
44
48
  onDisable(): void;
45
- /** Returns the underlying physics body from the physics engine (if any) - the component must be enabled and active in the scene */
49
+ /**
50
+ * Returns the underlying physics body from the physics engine.
51
+ * Only available if the component is enabled and active in the scene.
52
+ */
46
53
  get body(): any;
47
54
  /**
48
- * Apply the collider properties to the physics engine.
55
+ * Updates the collider's properties in the physics engine.
56
+ * Use this when you've changed collider properties and need to sync with the physics engine.
49
57
  */
50
58
  updateProperties: () => void;
51
- /** Requests an update of the physics material in the physics engine */
59
+ /**
60
+ * Updates the physics material in the physics engine.
61
+ * Call this after changing the sharedMaterial property.
62
+ */
52
63
  updatePhysicsMaterial(): void;
53
64
  }
54
65
  /**
55
- * SphereCollider is a collider that represents a sphere shape.
66
+ * SphereCollider represents a sphere-shaped collision volume.
67
+ * Useful for objects that are roughly spherical in shape or need a simple collision boundary.
56
68
  * @category Physics
57
69
  * @group Components
58
70
  */
59
71
  export declare class SphereCollider extends Collider implements ISphereCollider {
72
+ /**
73
+ * The radius of the sphere collider.
74
+ */
60
75
  radius: number;
76
+ /**
77
+ * The center position of the sphere collider relative to the transform's position.
78
+ */
61
79
  center: Vector3;
80
+ /**
81
+ * Registers the sphere collider with the physics engine and sets up scale change monitoring.
82
+ */
62
83
  onEnable(): void;
84
+ /**
85
+ * Removes scale change monitoring when the collider is disabled.
86
+ */
63
87
  onDisable(): void;
88
+ /**
89
+ * Updates collider properties when validated in the editor or inspector.
90
+ */
64
91
  onValidate(): void;
65
92
  }
66
93
  /**
67
- * BoxCollider is a collider that represents a box shape.
94
+ * BoxCollider represents a box-shaped collision volume.
95
+ * Ideal for rectangular objects or objects that need a simple cuboid collision boundary.
68
96
  * @category Physics
69
97
  * @group Components
70
98
  */
71
99
  export declare class BoxCollider extends Collider implements IBoxCollider {
100
+ /**
101
+ * Creates and adds a BoxCollider to the given object.
102
+ * @param obj The object to add the collider to
103
+ * @param opts Configuration options for the collider and optional rigidbody
104
+ * @returns The newly created BoxCollider
105
+ */
72
106
  static add(obj: Mesh | Object3D, opts?: {
73
107
  rigidbody: boolean;
74
108
  debug?: boolean;
75
109
  }): BoxCollider;
110
+ /**
111
+ * The size of the box collider along each axis.
112
+ */
76
113
  size: Vector3;
114
+ /**
115
+ * The center position of the box collider relative to the transform's position.
116
+ */
77
117
  center: Vector3;
78
- /** @internal */
118
+ /**
119
+ * Registers the box collider with the physics engine and sets up scale change monitoring.
120
+ * @internal
121
+ */
79
122
  onEnable(): void;
80
- /** @internal */
123
+ /**
124
+ * Removes scale change monitoring when the collider is disabled.
125
+ * @internal
126
+ */
81
127
  onDisable(): void;
82
- /** @internal */
128
+ /**
129
+ * Updates collider properties when validated in the editor or inspector.
130
+ * @internal
131
+ */
83
132
  onValidate(): void;
133
+ /**
134
+ * Automatically fits the collider to the geometry of the object.
135
+ * Sets the size and center based on the object's bounding box.
136
+ * @param opts Options object with a debug flag to visualize the bounding box
137
+ */
84
138
  autoFit(opts?: {
85
139
  debug?: boolean;
86
140
  }): void;
87
141
  }
88
142
  /**
89
- * MeshCollider is a collider that represents a mesh shape.
90
- * The mesh collider can be used to create a collider from a mesh.
143
+ * MeshCollider creates a collision shape from a mesh geometry.
144
+ * Allows for complex collision shapes that match the exact geometry of an object.
91
145
  * @category Physics
92
146
  * @group Components
93
147
  */
94
148
  export declare class MeshCollider extends Collider {
95
149
  /**
96
- * The mesh that is used for the collider.
150
+ * The mesh that is used to create the collision shape.
151
+ * If not set, the collider will try to use the mesh of the object it's attached to.
97
152
  */
98
153
  sharedMesh?: Mesh;
99
- /** When `true` the collider won't have holes or entrances.
100
- * If you wan't this mesh collider to be able to *contain* other objects this should be set to `false` */
154
+ /**
155
+ * When `true` the collider is treated as a solid object without holes.
156
+ * Set to `false` if you want this mesh collider to be able to contain other objects.
157
+ */
101
158
  convex: boolean;
159
+ /**
160
+ * Creates and registers the mesh collider with the physics engine.
161
+ * Handles both individual meshes and mesh groups.
162
+ */
102
163
  onEnable(): void;
103
164
  }
104
165
  /**
105
- * CapsuleCollider is a collider that represents a capsule shape.
166
+ * CapsuleCollider represents a capsule-shaped collision volume (cylinder with hemispherical ends).
167
+ * Ideal for character controllers and objects that need a rounded collision shape.
106
168
  * @category Physics
107
169
  * @group Components
108
170
  */
109
171
  export declare class CapsuleCollider extends Collider {
172
+ /**
173
+ * The center position of the capsule collider relative to the transform's position.
174
+ */
110
175
  center: Vector3;
176
+ /**
177
+ * The radius of the capsule's cylindrical body and hemispherical ends.
178
+ */
111
179
  radius: number;
180
+ /**
181
+ * The total height of the capsule including both hemispherical ends.
182
+ */
112
183
  height: number;
184
+ /**
185
+ * Registers the capsule collider with the physics engine.
186
+ */
113
187
  onEnable(): void;
114
188
  }
@@ -5,46 +5,51 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
7
  import { Group, Mesh, Vector3 } from "three";
8
+ import { isDevEnvironment } from "../engine/debug/index.js";
8
9
  import { addComponent } from "../engine/engine_components.js";
9
10
  import { Gizmos } from "../engine/engine_gizmos.js";
10
11
  import { serializable } from "../engine/engine_serialization_decorator.js";
11
12
  import { getBoundingBox } from "../engine/engine_three_utils.js";
12
13
  import { validate } from "../engine/engine_util_decorator.js";
13
- import { unwatchWrite, watchWrite } from "../engine/engine_utils.js";
14
+ import { getParam, unwatchWrite, watchWrite } from "../engine/engine_utils.js";
14
15
  import { NEEDLE_progressive } from "../engine/extensions/NEEDLE_progressive.js";
15
16
  import { Behaviour } from "./Component.js";
16
17
  import { Rigidbody } from "./RigidBody.js";
17
18
  /**
18
19
  * Collider is the base class for all colliders. A collider is a physical shape that is used to detect collisions with other objects in the scene.
19
- * Colliders are used in combination with a Rigidbody to create physical interactions between objects.
20
+ * Colliders are used in combination with a {@link Rigidbody} to create physical interactions between objects.
20
21
  * Colliders are registered with the physics engine when they are enabled and removed when they are disabled.
21
22
  * @category Physics
22
23
  * @group Components
23
24
  */
24
25
  export class Collider extends Behaviour {
25
- /** @internal */
26
+ /**
27
+ * Identifies this component as a collider.
28
+ * @internal
29
+ */
26
30
  get isCollider() {
27
31
  return true;
28
32
  }
29
33
  /**
30
- * The Rigidbody that this collider is attached to.
34
+ * The {@link Rigidbody} that this collider is attached to. This handles the physics simulation for this collider.
31
35
  */
32
36
  attachedRigidbody = null;
33
37
  /**
34
38
  * When `true` the collider will not be used for collision detection but will still trigger events.
39
+ * Trigger colliders can trigger events when other colliders enter their space, without creating a physical response/collision.
35
40
  */
36
41
  isTrigger = false;
37
42
  /**
38
- * The physics material that is used for the collider. This material defines physical properties of the collider such as friction and bounciness.
43
+ * The physics material that defines physical properties of the collider such as friction and bounciness.
39
44
  */
40
45
  sharedMaterial;
41
46
  /**
42
- * The layers that the collider is assigned to.
47
+ * The layers that this collider belongs to. Used for filtering collision detection.
48
+ * @default [0]
43
49
  */
44
50
  membership = [0];
45
51
  /**
46
- * The layers that the collider will interact with.
47
- * @inheritdoc
52
+ * The layers that this collider will interact with. Used for filtering collision detection.
48
53
  */
49
54
  filter;
50
55
  /** @internal */
@@ -68,17 +73,24 @@ export class Collider extends Behaviour {
68
73
  onDisable() {
69
74
  this.context.physics.engine?.removeBody(this);
70
75
  }
71
- /** Returns the underlying physics body from the physics engine (if any) - the component must be enabled and active in the scene */
76
+ /**
77
+ * Returns the underlying physics body from the physics engine.
78
+ * Only available if the component is enabled and active in the scene.
79
+ */
72
80
  get body() {
73
81
  return this.context.physics.engine?.getBody(this);
74
82
  }
75
83
  /**
76
- * Apply the collider properties to the physics engine.
84
+ * Updates the collider's properties in the physics engine.
85
+ * Use this when you've changed collider properties and need to sync with the physics engine.
77
86
  */
78
87
  updateProperties = () => {
79
88
  this.context.physics.engine?.updateProperties(this);
80
89
  };
81
- /** Requests an update of the physics material in the physics engine */
90
+ /**
91
+ * Updates the physics material in the physics engine.
92
+ * Call this after changing the sharedMaterial property.
93
+ */
82
94
  updatePhysicsMaterial() {
83
95
  this.context.physics.engine?.updatePhysicsMaterial(this);
84
96
  }
@@ -99,22 +111,38 @@ __decorate([
99
111
  serializable()
100
112
  ], Collider.prototype, "filter", void 0);
101
113
  /**
102
- * SphereCollider is a collider that represents a sphere shape.
114
+ * SphereCollider represents a sphere-shaped collision volume.
115
+ * Useful for objects that are roughly spherical in shape or need a simple collision boundary.
103
116
  * @category Physics
104
117
  * @group Components
105
118
  */
106
119
  export class SphereCollider extends Collider {
120
+ /**
121
+ * The radius of the sphere collider.
122
+ */
107
123
  radius = .5;
124
+ /**
125
+ * The center position of the sphere collider relative to the transform's position.
126
+ */
108
127
  center = new Vector3(0, 0, 0);
128
+ /**
129
+ * Registers the sphere collider with the physics engine and sets up scale change monitoring.
130
+ */
109
131
  onEnable() {
110
132
  super.onEnable();
111
133
  this.context.physics.engine?.addSphereCollider(this);
112
134
  watchWrite(this.gameObject.scale, this.updateProperties);
113
135
  }
136
+ /**
137
+ * Removes scale change monitoring when the collider is disabled.
138
+ */
114
139
  onDisable() {
115
140
  super.onDisable();
116
141
  unwatchWrite(this.gameObject.scale, this.updateProperties);
117
142
  }
143
+ /**
144
+ * Updates collider properties when validated in the editor or inspector.
145
+ */
118
146
  onValidate() {
119
147
  this.updateProperties();
120
148
  }
@@ -127,11 +155,18 @@ __decorate([
127
155
  serializable(Vector3)
128
156
  ], SphereCollider.prototype, "center", void 0);
129
157
  /**
130
- * BoxCollider is a collider that represents a box shape.
158
+ * BoxCollider represents a box-shaped collision volume.
159
+ * Ideal for rectangular objects or objects that need a simple cuboid collision boundary.
131
160
  * @category Physics
132
161
  * @group Components
133
162
  */
134
163
  export class BoxCollider extends Collider {
164
+ /**
165
+ * Creates and adds a BoxCollider to the given object.
166
+ * @param obj The object to add the collider to
167
+ * @param opts Configuration options for the collider and optional rigidbody
168
+ * @returns The newly created BoxCollider
169
+ */
135
170
  static add(obj, opts) {
136
171
  const collider = addComponent(obj, BoxCollider);
137
172
  collider.autoFit();
@@ -140,23 +175,43 @@ export class BoxCollider extends Collider {
140
175
  }
141
176
  return collider;
142
177
  }
178
+ /**
179
+ * The size of the box collider along each axis.
180
+ */
143
181
  size = new Vector3(1, 1, 1);
182
+ /**
183
+ * The center position of the box collider relative to the transform's position.
184
+ */
144
185
  center = new Vector3(0, 0, 0);
145
- /** @internal */
186
+ /**
187
+ * Registers the box collider with the physics engine and sets up scale change monitoring.
188
+ * @internal
189
+ */
146
190
  onEnable() {
147
191
  super.onEnable();
148
192
  this.context.physics.engine?.addBoxCollider(this, this.size);
149
193
  watchWrite(this.gameObject.scale, this.updateProperties);
150
194
  }
151
- /** @internal */
195
+ /**
196
+ * Removes scale change monitoring when the collider is disabled.
197
+ * @internal
198
+ */
152
199
  onDisable() {
153
200
  super.onDisable();
154
201
  unwatchWrite(this.gameObject.scale, this.updateProperties);
155
202
  }
156
- /** @internal */
203
+ /**
204
+ * Updates collider properties when validated in the editor or inspector.
205
+ * @internal
206
+ */
157
207
  onValidate() {
158
208
  this.updateProperties();
159
209
  }
210
+ /**
211
+ * Automatically fits the collider to the geometry of the object.
212
+ * Sets the size and center based on the object's bounding box.
213
+ * @param opts Options object with a debug flag to visualize the bounding box
214
+ */
160
215
  autoFit(opts) {
161
216
  const obj = this.gameObject;
162
217
  // we need to transform the object into identity
@@ -195,19 +250,26 @@ __decorate([
195
250
  serializable(Vector3)
196
251
  ], BoxCollider.prototype, "center", void 0);
197
252
  /**
198
- * MeshCollider is a collider that represents a mesh shape.
199
- * The mesh collider can be used to create a collider from a mesh.
253
+ * MeshCollider creates a collision shape from a mesh geometry.
254
+ * Allows for complex collision shapes that match the exact geometry of an object.
200
255
  * @category Physics
201
256
  * @group Components
202
257
  */
203
258
  export class MeshCollider extends Collider {
204
259
  /**
205
- * The mesh that is used for the collider.
260
+ * The mesh that is used to create the collision shape.
261
+ * If not set, the collider will try to use the mesh of the object it's attached to.
206
262
  */
207
263
  sharedMesh;
208
- /** When `true` the collider won't have holes or entrances.
209
- * If you wan't this mesh collider to be able to *contain* other objects this should be set to `false` */
264
+ /**
265
+ * When `true` the collider is treated as a solid object without holes.
266
+ * Set to `false` if you want this mesh collider to be able to contain other objects.
267
+ */
210
268
  convex = false;
269
+ /**
270
+ * Creates and registers the mesh collider with the physics engine.
271
+ * Handles both individual meshes and mesh groups.
272
+ */
211
273
  onEnable() {
212
274
  super.onEnable();
213
275
  if (!this.context.physics.engine)
@@ -256,7 +318,9 @@ export class MeshCollider extends Collider {
256
318
  });
257
319
  }
258
320
  else {
259
- console.warn("A MeshCollider mesh is assigned, but it's neither a Mesh nor a Group. Please report a bug!", this, this.sharedMesh);
321
+ if (isDevEnvironment() || getParam("showcolliders")) {
322
+ console.warn(`[MeshCollider] A MeshCollider mesh is assigned to an unknown object on \"${this.gameObject.name}\", but it's neither a Mesh nor a Group. Please double check that you attached the collider component to the right object and report a bug otherwise!`, this);
323
+ }
260
324
  }
261
325
  }
262
326
  }
@@ -268,14 +332,27 @@ __decorate([
268
332
  serializable()
269
333
  ], MeshCollider.prototype, "convex", void 0);
270
334
  /**
271
- * CapsuleCollider is a collider that represents a capsule shape.
335
+ * CapsuleCollider represents a capsule-shaped collision volume (cylinder with hemispherical ends).
336
+ * Ideal for character controllers and objects that need a rounded collision shape.
272
337
  * @category Physics
273
338
  * @group Components
274
339
  */
275
340
  export class CapsuleCollider extends Collider {
341
+ /**
342
+ * The center position of the capsule collider relative to the transform's position.
343
+ */
276
344
  center = new Vector3(0, 0, 0);
345
+ /**
346
+ * The radius of the capsule's cylindrical body and hemispherical ends.
347
+ */
277
348
  radius = .5;
349
+ /**
350
+ * The total height of the capsule including both hemispherical ends.
351
+ */
278
352
  height = 2;
353
+ /**
354
+ * Registers the capsule collider with the physics engine.
355
+ */
279
356
  onEnable() {
280
357
  super.onEnable();
281
358
  this.context.physics.engine?.addCapsuleCollider(this, this.height, this.radius);
@@ -1 +1 @@
1
- {"version":3,"file":"Collider.js","sourceRoot":"","sources":["../../src/engine-components/Collider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Collider.js","sourceRoot":"","sources":["../../src/engine-components/Collider.ts"],"names":[],"mappings":"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"}