@babylonjs/core 6.24.0 → 6.25.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 (378) hide show
  1. package/Buffers/buffer.align.d.ts +25 -0
  2. package/Buffers/buffer.align.js +120 -0
  3. package/Buffers/buffer.align.js.map +1 -0
  4. package/Buffers/buffer.d.ts +15 -3
  5. package/Buffers/buffer.js +27 -7
  6. package/Buffers/buffer.js.map +1 -1
  7. package/Buffers/index.d.ts +1 -0
  8. package/Buffers/index.js +1 -0
  9. package/Buffers/index.js.map +1 -1
  10. package/Cameras/Inputs/BaseCameraPointersInput.js +0 -3
  11. package/Cameras/Inputs/BaseCameraPointersInput.js.map +1 -1
  12. package/Cameras/Inputs/flyCameraMouseInput.js +1 -4
  13. package/Cameras/Inputs/flyCameraMouseInput.js.map +1 -1
  14. package/Cameras/Inputs/freeCameraMouseInput.js +0 -6
  15. package/Cameras/Inputs/freeCameraMouseInput.js.map +1 -1
  16. package/Cameras/RigModes/index.d.ts +0 -1
  17. package/Cameras/RigModes/index.js +0 -1
  18. package/Cameras/RigModes/index.js.map +1 -1
  19. package/Cameras/RigModes/vrRigMode.js +1 -1
  20. package/Cameras/RigModes/vrRigMode.js.map +1 -1
  21. package/Cameras/VR/index.d.ts +0 -1
  22. package/Cameras/VR/index.js +0 -1
  23. package/Cameras/VR/index.js.map +1 -1
  24. package/Cameras/VR/vrExperienceHelper.d.ts +7 -66
  25. package/Cameras/VR/vrExperienceHelper.js +17 -702
  26. package/Cameras/VR/vrExperienceHelper.js.map +1 -1
  27. package/Cameras/camera.d.ts +15 -20
  28. package/Cameras/camera.js +41 -36
  29. package/Cameras/camera.js.map +1 -1
  30. package/Cameras/targetCamera.js +1 -1
  31. package/Cameras/targetCamera.js.map +1 -1
  32. package/Debug/debugLayer.js +2 -2
  33. package/Debug/debugLayer.js.map +1 -1
  34. package/Engines/Extensions/index.d.ts +0 -1
  35. package/Engines/Extensions/index.js +0 -1
  36. package/Engines/Extensions/index.js.map +1 -1
  37. package/Engines/WebGL/webGLRenderTargetWrapper.d.ts +4 -0
  38. package/Engines/WebGL/webGLRenderTargetWrapper.js +4 -0
  39. package/Engines/WebGL/webGLRenderTargetWrapper.js.map +1 -1
  40. package/Engines/WebGPU/webgpuCacheRenderPipeline.js +8 -7
  41. package/Engines/WebGPU/webgpuCacheRenderPipeline.js.map +1 -1
  42. package/Engines/WebGPU/webgpuCacheSampler.js +1 -1
  43. package/Engines/WebGPU/webgpuCacheSampler.js.map +1 -1
  44. package/Engines/WebGPU/webgpuTintWASM.js +4 -10
  45. package/Engines/WebGPU/webgpuTintWASM.js.map +1 -1
  46. package/Engines/constants.d.ts +0 -4
  47. package/Engines/constants.js +0 -4
  48. package/Engines/constants.js.map +1 -1
  49. package/Engines/engine.d.ts +38 -258
  50. package/Engines/engine.js +0 -65
  51. package/Engines/engine.js.map +1 -1
  52. package/Engines/engineFactory.js +9 -14
  53. package/Engines/engineFactory.js.map +1 -1
  54. package/Engines/engineFeatures.d.ts +2 -0
  55. package/Engines/engineFeatures.js.map +1 -1
  56. package/Engines/nativeEngine.js +1 -0
  57. package/Engines/nativeEngine.js.map +1 -1
  58. package/Engines/nullEngine.js +1 -0
  59. package/Engines/nullEngine.js.map +1 -1
  60. package/Engines/thinEngine.d.ts +22 -5
  61. package/Engines/thinEngine.js +55 -22
  62. package/Engines/thinEngine.js.map +1 -1
  63. package/Engines/webgpuEngine.d.ts +1 -0
  64. package/Engines/webgpuEngine.js +9 -14
  65. package/Engines/webgpuEngine.js.map +1 -1
  66. package/FlowGraph/Blocks/Data/Logic/flowGraphBitwiseBlocks.d.ts +9 -8
  67. package/FlowGraph/Blocks/Data/Logic/flowGraphBitwiseBlocks.js +34 -16
  68. package/FlowGraph/Blocks/Data/Logic/flowGraphBitwiseBlocks.js.map +1 -1
  69. package/FlowGraph/Blocks/Data/Logic/flowGraphLogicBlocks.d.ts +4 -3
  70. package/FlowGraph/Blocks/Data/Logic/flowGraphLogicBlocks.js +14 -6
  71. package/FlowGraph/Blocks/Data/Logic/flowGraphLogicBlocks.js.map +1 -1
  72. package/FlowGraph/Blocks/Data/Math/flowGraphMatrixBlocks.d.ts +19 -14
  73. package/FlowGraph/Blocks/Data/Math/flowGraphMatrixBlocks.js +64 -27
  74. package/FlowGraph/Blocks/Data/Math/flowGraphMatrixBlocks.js.map +1 -1
  75. package/FlowGraph/Blocks/Data/Math/flowGraphNumberMathBlocks.d.ts +39 -41
  76. package/FlowGraph/Blocks/Data/Math/flowGraphNumberMathBlocks.js +152 -74
  77. package/FlowGraph/Blocks/Data/Math/flowGraphNumberMathBlocks.js.map +1 -1
  78. package/FlowGraph/Blocks/Data/Math/flowGraphVector2MathBlocks.d.ts +13 -12
  79. package/FlowGraph/Blocks/Data/Math/flowGraphVector2MathBlocks.js +42 -21
  80. package/FlowGraph/Blocks/Data/Math/flowGraphVector2MathBlocks.js.map +1 -1
  81. package/FlowGraph/Blocks/Data/Math/flowGraphVector3MathBlocks.d.ts +17 -13
  82. package/FlowGraph/Blocks/Data/Math/flowGraphVector3MathBlocks.js +62 -26
  83. package/FlowGraph/Blocks/Data/Math/flowGraphVector3MathBlocks.js.map +1 -1
  84. package/FlowGraph/Blocks/Data/Math/flowGraphVector4MathBlocks.d.ts +13 -9
  85. package/FlowGraph/Blocks/Data/Math/flowGraphVector4MathBlocks.js +46 -18
  86. package/FlowGraph/Blocks/Data/Math/flowGraphVector4MathBlocks.js.map +1 -1
  87. package/FlowGraph/Blocks/Data/flowGraphBinaryOperationBlock.d.ts +4 -1
  88. package/FlowGraph/Blocks/Data/flowGraphBinaryOperationBlock.js +6 -2
  89. package/FlowGraph/Blocks/Data/flowGraphBinaryOperationBlock.js.map +1 -1
  90. package/FlowGraph/Blocks/Data/flowGraphConditionalDataBlock.d.ts +3 -1
  91. package/FlowGraph/Blocks/Data/flowGraphConditionalDataBlock.js +7 -2
  92. package/FlowGraph/Blocks/Data/flowGraphConditionalDataBlock.js.map +1 -1
  93. package/FlowGraph/Blocks/Data/flowGraphConstantBlock.d.ts +5 -3
  94. package/FlowGraph/Blocks/Data/flowGraphConstantBlock.js +10 -5
  95. package/FlowGraph/Blocks/Data/flowGraphConstantBlock.js.map +1 -1
  96. package/FlowGraph/Blocks/Data/flowGraphConstantOperationBlock.d.ts +4 -1
  97. package/FlowGraph/Blocks/Data/flowGraphConstantOperationBlock.js +6 -2
  98. package/FlowGraph/Blocks/Data/flowGraphConstantOperationBlock.js.map +1 -1
  99. package/FlowGraph/Blocks/Data/flowGraphCoordinateTransformBlock.d.ts +3 -1
  100. package/FlowGraph/Blocks/Data/flowGraphCoordinateTransformBlock.js +7 -2
  101. package/FlowGraph/Blocks/Data/flowGraphCoordinateTransformBlock.js.map +1 -1
  102. package/FlowGraph/Blocks/Data/flowGraphGetVariableBlock.d.ts +3 -1
  103. package/FlowGraph/Blocks/Data/flowGraphGetVariableBlock.js +7 -2
  104. package/FlowGraph/Blocks/Data/flowGraphGetVariableBlock.js.map +1 -1
  105. package/FlowGraph/Blocks/Data/flowGraphUnaryOperationBlock.d.ts +4 -1
  106. package/FlowGraph/Blocks/Data/flowGraphUnaryOperationBlock.js +6 -2
  107. package/FlowGraph/Blocks/Data/flowGraphUnaryOperationBlock.js.map +1 -1
  108. package/FlowGraph/Blocks/Event/flowGraphMeshPickEventBlock.d.ts +6 -2
  109. package/FlowGraph/Blocks/Event/flowGraphMeshPickEventBlock.js +12 -3
  110. package/FlowGraph/Blocks/Event/flowGraphMeshPickEventBlock.js.map +1 -1
  111. package/FlowGraph/Blocks/Event/flowGraphReceiveCustomEventBlock.d.ts +5 -3
  112. package/FlowGraph/Blocks/Event/flowGraphReceiveCustomEventBlock.js +11 -6
  113. package/FlowGraph/Blocks/Event/flowGraphReceiveCustomEventBlock.js.map +1 -1
  114. package/FlowGraph/Blocks/Event/flowGraphSceneReadyEventBlock.d.ts +1 -0
  115. package/FlowGraph/Blocks/Event/flowGraphSceneReadyEventBlock.js +7 -2
  116. package/FlowGraph/Blocks/Event/flowGraphSceneReadyEventBlock.js.map +1 -1
  117. package/FlowGraph/Blocks/Event/flowGraphSceneTickEventBlock.d.ts +1 -0
  118. package/FlowGraph/Blocks/Event/flowGraphSceneTickEventBlock.js +7 -2
  119. package/FlowGraph/Blocks/Event/flowGraphSceneTickEventBlock.js.map +1 -1
  120. package/FlowGraph/Blocks/Execution/Animation/flowGraphPauseAnimationBlock.d.ts +3 -1
  121. package/FlowGraph/Blocks/Execution/Animation/flowGraphPauseAnimationBlock.js +7 -2
  122. package/FlowGraph/Blocks/Execution/Animation/flowGraphPauseAnimationBlock.js.map +1 -1
  123. package/FlowGraph/Blocks/Execution/Animation/flowGraphPlayAnimationBlock.d.ts +3 -1
  124. package/FlowGraph/Blocks/Execution/Animation/flowGraphPlayAnimationBlock.js +8 -3
  125. package/FlowGraph/Blocks/Execution/Animation/flowGraphPlayAnimationBlock.js.map +1 -1
  126. package/FlowGraph/Blocks/Execution/Animation/flowGraphStopAnimationBlock.d.ts +3 -1
  127. package/FlowGraph/Blocks/Execution/Animation/flowGraphStopAnimationBlock.js +7 -2
  128. package/FlowGraph/Blocks/Execution/Animation/flowGraphStopAnimationBlock.js.map +1 -1
  129. package/FlowGraph/Blocks/Execution/Audio/flowGraphPlayAudioBlock.d.ts +3 -1
  130. package/FlowGraph/Blocks/Execution/Audio/flowGraphPlayAudioBlock.js +7 -2
  131. package/FlowGraph/Blocks/Execution/Audio/flowGraphPlayAudioBlock.js.map +1 -1
  132. package/FlowGraph/Blocks/Execution/Audio/flowGraphStopAudioBlock.d.ts +3 -1
  133. package/FlowGraph/Blocks/Execution/Audio/flowGraphStopAudioBlock.js +7 -2
  134. package/FlowGraph/Blocks/Execution/Audio/flowGraphStopAudioBlock.js.map +1 -1
  135. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphBranchBlock.d.ts +3 -1
  136. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphBranchBlock.js +7 -2
  137. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphBranchBlock.js.map +1 -1
  138. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphCounterBlock.d.ts +3 -1
  139. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphCounterBlock.js +7 -2
  140. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphCounterBlock.js.map +1 -1
  141. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDebounceBlock.d.ts +3 -1
  142. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDebounceBlock.js +7 -2
  143. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDebounceBlock.js.map +1 -1
  144. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDoNBlock.d.ts +3 -1
  145. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDoNBlock.js +7 -2
  146. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphDoNBlock.js.map +1 -1
  147. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphFlipFlopBlock.d.ts +3 -1
  148. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphFlipFlopBlock.js +7 -2
  149. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphFlipFlopBlock.js.map +1 -1
  150. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphForLoopBlock.d.ts +3 -1
  151. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphForLoopBlock.js +7 -2
  152. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphForLoopBlock.js.map +1 -1
  153. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphMultiGateBlock.d.ts +6 -3
  154. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphMultiGateBlock.js +22 -16
  155. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphMultiGateBlock.js.map +1 -1
  156. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphSwitchBlock.d.ts +7 -4
  157. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphSwitchBlock.js +15 -10
  158. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphSwitchBlock.js.map +1 -1
  159. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphThrottleBlock.d.ts +3 -1
  160. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphThrottleBlock.js +7 -2
  161. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphThrottleBlock.js.map +1 -1
  162. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphTimerBlock.d.ts +3 -1
  163. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphTimerBlock.js +8 -3
  164. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphTimerBlock.js.map +1 -1
  165. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWaitAllBlock.d.ts +7 -4
  166. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWaitAllBlock.js +14 -7
  167. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWaitAllBlock.js.map +1 -1
  168. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWhileLoopBlock.d.ts +5 -3
  169. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWhileLoopBlock.js +9 -4
  170. package/FlowGraph/Blocks/Execution/ControlFlow/flowGraphWhileLoopBlock.js.map +1 -1
  171. package/FlowGraph/Blocks/Execution/flowGraphLogBlock.d.ts +3 -1
  172. package/FlowGraph/Blocks/Execution/flowGraphLogBlock.js +7 -2
  173. package/FlowGraph/Blocks/Execution/flowGraphLogBlock.js.map +1 -1
  174. package/FlowGraph/Blocks/Execution/flowGraphSendCustomEventBlock.d.ts +3 -1
  175. package/FlowGraph/Blocks/Execution/flowGraphSendCustomEventBlock.js +8 -3
  176. package/FlowGraph/Blocks/Execution/flowGraphSendCustomEventBlock.js.map +1 -1
  177. package/FlowGraph/Blocks/Execution/flowGraphSetPropertyBlock.d.ts +3 -1
  178. package/FlowGraph/Blocks/Execution/flowGraphSetPropertyBlock.js +7 -2
  179. package/FlowGraph/Blocks/Execution/flowGraphSetPropertyBlock.js.map +1 -1
  180. package/FlowGraph/Blocks/Execution/flowGraphSetVariableBlock.d.ts +3 -1
  181. package/FlowGraph/Blocks/Execution/flowGraphSetVariableBlock.js +7 -2
  182. package/FlowGraph/Blocks/Execution/flowGraphSetVariableBlock.js.map +1 -1
  183. package/FlowGraph/flowGraph.d.ts +41 -3
  184. package/FlowGraph/flowGraph.js +135 -0
  185. package/FlowGraph/flowGraph.js.map +1 -1
  186. package/FlowGraph/flowGraphAsyncExecutionBlock.d.ts +2 -1
  187. package/FlowGraph/flowGraphAsyncExecutionBlock.js +2 -2
  188. package/FlowGraph/flowGraphAsyncExecutionBlock.js.map +1 -1
  189. package/FlowGraph/flowGraphBlock.d.ts +15 -3
  190. package/FlowGraph/flowGraphBlock.js +50 -7
  191. package/FlowGraph/flowGraphBlock.js.map +1 -1
  192. package/FlowGraph/flowGraphConnection.d.ts +34 -4
  193. package/FlowGraph/flowGraphConnection.js +49 -3
  194. package/FlowGraph/flowGraphConnection.js.map +1 -1
  195. package/FlowGraph/flowGraphContext.d.ts +25 -5
  196. package/FlowGraph/flowGraphContext.js +86 -4
  197. package/FlowGraph/flowGraphContext.js.map +1 -1
  198. package/FlowGraph/flowGraphCoordinator.d.ts +7 -1
  199. package/FlowGraph/flowGraphCoordinator.js +18 -2
  200. package/FlowGraph/flowGraphCoordinator.js.map +1 -1
  201. package/FlowGraph/flowGraphDataConnection.d.ts +4 -11
  202. package/FlowGraph/flowGraphDataConnection.js +16 -14
  203. package/FlowGraph/flowGraphDataConnection.js.map +1 -1
  204. package/FlowGraph/flowGraphExecutionBlock.d.ts +8 -3
  205. package/FlowGraph/flowGraphExecutionBlock.js +37 -6
  206. package/FlowGraph/flowGraphExecutionBlock.js.map +1 -1
  207. package/FlowGraph/flowGraphRichTypes.d.ts +5 -9
  208. package/FlowGraph/flowGraphRichTypes.js +29 -44
  209. package/FlowGraph/flowGraphRichTypes.js.map +1 -1
  210. package/FlowGraph/flowGraphSignalConnection.js +2 -0
  211. package/FlowGraph/flowGraphSignalConnection.js.map +1 -1
  212. package/FlowGraph/flowGraphVariableDefinitions.d.ts +22 -2
  213. package/FlowGraph/flowGraphVariableDefinitions.js +29 -0
  214. package/FlowGraph/flowGraphVariableDefinitions.js.map +1 -1
  215. package/FlowGraph/flowGraphWithOnDoneExecutionBlock.d.ts +2 -1
  216. package/FlowGraph/flowGraphWithOnDoneExecutionBlock.js +2 -2
  217. package/FlowGraph/flowGraphWithOnDoneExecutionBlock.js.map +1 -1
  218. package/Gamepads/gamepadManager.js +0 -5
  219. package/Gamepads/gamepadManager.js.map +1 -1
  220. package/Gamepads/index.d.ts +0 -1
  221. package/Gamepads/index.js +0 -2
  222. package/Gamepads/index.js.map +1 -1
  223. package/Gizmos/gizmo.js +1 -4
  224. package/Gizmos/gizmo.js.map +1 -1
  225. package/Materials/GreasedLine/greasedLineMaterialDefaults.d.ts +24 -0
  226. package/Materials/GreasedLine/greasedLineMaterialDefaults.js +19 -0
  227. package/Materials/GreasedLine/greasedLineMaterialDefaults.js.map +1 -0
  228. package/Materials/GreasedLine/greasedLineMaterialInterfaces.d.ts +243 -0
  229. package/Materials/GreasedLine/greasedLineMaterialInterfaces.js +55 -0
  230. package/Materials/GreasedLine/greasedLineMaterialInterfaces.js.map +1 -0
  231. package/Materials/GreasedLine/greasedLinePluginMaterial.d.ts +253 -0
  232. package/Materials/{greasedLinePluginMaterial.js → GreasedLine/greasedLinePluginMaterial.js} +148 -205
  233. package/Materials/GreasedLine/greasedLinePluginMaterial.js.map +1 -0
  234. package/Materials/{greasedLineSimpleMaterial.d.ts → GreasedLine/greasedLineSimpleMaterial.d.ts} +20 -48
  235. package/Materials/{greasedLineSimpleMaterial.js → GreasedLine/greasedLineSimpleMaterial.js} +74 -91
  236. package/Materials/GreasedLine/greasedLineSimpleMaterial.js.map +1 -0
  237. package/Materials/Node/Blocks/Input/prePassTextureBlock.d.ts +1 -1
  238. package/Materials/Node/Blocks/Input/prePassTextureBlock.js.map +1 -1
  239. package/Materials/Node/nodeMaterial.js +2 -2
  240. package/Materials/Node/nodeMaterial.js.map +1 -1
  241. package/Materials/Textures/texture.js +1 -0
  242. package/Materials/Textures/texture.js.map +1 -1
  243. package/Materials/index.d.ts +4 -1
  244. package/Materials/index.js +4 -1
  245. package/Materials/index.js.map +1 -1
  246. package/Materials/shadowDepthWrapper.d.ts +1 -0
  247. package/Materials/shadowDepthWrapper.js +17 -4
  248. package/Materials/shadowDepthWrapper.js.map +1 -1
  249. package/Maths/math.vector.d.ts +32 -22
  250. package/Maths/math.vector.js +54 -43
  251. package/Maths/math.vector.js.map +1 -1
  252. package/Meshes/Builders/greasedLineBuilder.d.ts +7 -6
  253. package/Meshes/Builders/greasedLineBuilder.js +65 -31
  254. package/Meshes/Builders/greasedLineBuilder.js.map +1 -1
  255. package/Meshes/Compression/dracoCompression.js +7 -7
  256. package/Meshes/Compression/dracoCompression.js.map +1 -1
  257. package/Meshes/Compression/meshoptCompression.js +2 -2
  258. package/Meshes/Compression/meshoptCompression.js.map +1 -1
  259. package/Meshes/GreasedLine/greasedLineBaseMesh.d.ts +216 -0
  260. package/Meshes/GreasedLine/greasedLineBaseMesh.js +247 -0
  261. package/Meshes/GreasedLine/greasedLineBaseMesh.js.map +1 -0
  262. package/Meshes/GreasedLine/greasedLineMesh.d.ts +93 -0
  263. package/Meshes/{greasedLineMesh.js → GreasedLine/greasedLineMesh.js} +29 -223
  264. package/Meshes/GreasedLine/greasedLineMesh.js.map +1 -0
  265. package/Meshes/GreasedLine/greasedLineRibbonMesh.d.ts +107 -0
  266. package/Meshes/GreasedLine/greasedLineRibbonMesh.js +462 -0
  267. package/Meshes/GreasedLine/greasedLineRibbonMesh.js.map +1 -0
  268. package/Meshes/Node/Blocks/Instances/instantiateRadialBlock.d.ts +1 -1
  269. package/Meshes/Node/Blocks/Instances/instantiateRadialBlock.js.map +1 -1
  270. package/Meshes/Node/Blocks/Sources/meshBlock.d.ts +9 -2
  271. package/Meshes/Node/Blocks/Sources/meshBlock.js +17 -5
  272. package/Meshes/Node/Blocks/Sources/meshBlock.js.map +1 -1
  273. package/Meshes/Node/Blocks/Textures/geometryTextureBlock.d.ts +15 -0
  274. package/Meshes/Node/Blocks/Textures/geometryTextureBlock.js +50 -1
  275. package/Meshes/Node/Blocks/Textures/geometryTextureBlock.js.map +1 -1
  276. package/Meshes/Node/Blocks/Textures/geometryTextureFetchBlock.js +5 -5
  277. package/Meshes/Node/Blocks/Textures/geometryTextureFetchBlock.js.map +1 -1
  278. package/Meshes/Node/nodeGeometry.d.ts +1 -2
  279. package/Meshes/Node/nodeGeometry.js +5 -6
  280. package/Meshes/Node/nodeGeometry.js.map +1 -1
  281. package/Meshes/Node/nodeGeometryBlock.d.ts +1 -2
  282. package/Meshes/Node/nodeGeometryBlock.js +1 -2
  283. package/Meshes/Node/nodeGeometryBlock.js.map +1 -1
  284. package/Meshes/geometry.js +6 -12
  285. package/Meshes/geometry.js.map +1 -1
  286. package/Meshes/index.d.ts +3 -1
  287. package/Meshes/index.js +3 -1
  288. package/Meshes/index.js.map +1 -1
  289. package/Meshes/instancedMesh.js +9 -9
  290. package/Meshes/instancedMesh.js.map +1 -1
  291. package/Meshes/mesh.d.ts +4 -0
  292. package/Meshes/mesh.js +10 -1
  293. package/Meshes/mesh.js.map +1 -1
  294. package/Misc/basis.js +4 -4
  295. package/Misc/basis.js.map +1 -1
  296. package/Misc/deepCopier.js +3 -0
  297. package/Misc/deepCopier.js.map +1 -1
  298. package/Misc/fileTools.d.ts +2 -0
  299. package/Misc/fileTools.js +12 -3
  300. package/Misc/fileTools.js.map +1 -1
  301. package/Misc/greasedLineTools.d.ts +52 -5
  302. package/Misc/greasedLineTools.js +180 -10
  303. package/Misc/greasedLineTools.js.map +1 -1
  304. package/Misc/khronosTextureContainer2.js +21 -24
  305. package/Misc/khronosTextureContainer2.js.map +1 -1
  306. package/Misc/tools.d.ts +42 -2
  307. package/Misc/tools.js +102 -2
  308. package/Misc/tools.js.map +1 -1
  309. package/Particles/solidParticleSystem.d.ts +1 -1
  310. package/Particles/solidParticleSystem.js +2 -2
  311. package/Particles/solidParticleSystem.js.map +1 -1
  312. package/PostProcesses/RenderPipeline/Pipelines/defaultRenderingPipeline.js +9 -2
  313. package/PostProcesses/RenderPipeline/Pipelines/defaultRenderingPipeline.js.map +1 -1
  314. package/PostProcesses/motionBlurPostProcess.js +4 -1
  315. package/PostProcesses/motionBlurPostProcess.js.map +1 -1
  316. package/PostProcesses/postProcess.js +1 -6
  317. package/PostProcesses/postProcess.js.map +1 -1
  318. package/Rendering/geometryBufferRenderer.js +4 -0
  319. package/Rendering/geometryBufferRenderer.js.map +1 -1
  320. package/Shaders/ShadersInclude/bonesDeclaration.js +1 -1
  321. package/Shaders/ShadersInclude/bonesDeclaration.js.map +1 -1
  322. package/Shaders/ShadersInclude/morphTargetsVertexGlobalDeclaration.js +1 -2
  323. package/Shaders/ShadersInclude/morphTargetsVertexGlobalDeclaration.js.map +1 -1
  324. package/Shaders/greasedLine.fragment.js +2 -5
  325. package/Shaders/greasedLine.fragment.js.map +1 -1
  326. package/Shaders/greasedLine.vertex.js +15 -4
  327. package/Shaders/greasedLine.vertex.js.map +1 -1
  328. package/XR/webXRDefaultExperience.d.ts +1 -1
  329. package/XR/webXRDefaultExperience.js +1 -1
  330. package/XR/webXRDefaultExperience.js.map +1 -1
  331. package/package.json +1 -1
  332. package/scene.d.ts +17 -10
  333. package/scene.js +25 -30
  334. package/scene.js.map +1 -1
  335. package/Cameras/RigModes/webVRRigMode.d.ts +0 -5
  336. package/Cameras/RigModes/webVRRigMode.js +0 -34
  337. package/Cameras/RigModes/webVRRigMode.js.map +0 -1
  338. package/Cameras/VR/webVRCamera.d.ts +0 -316
  339. package/Cameras/VR/webVRCamera.js +0 -618
  340. package/Cameras/VR/webVRCamera.js.map +0 -1
  341. package/Engines/Extensions/engine.webVR.d.ts +0 -91
  342. package/Engines/Extensions/engine.webVR.js +0 -195
  343. package/Engines/Extensions/engine.webVR.js.map +0 -1
  344. package/FlowGraph/Blocks/Execution/flowGraphCustomFunctionBlock.d.ts +0 -23
  345. package/FlowGraph/Blocks/Execution/flowGraphCustomFunctionBlock.js +0 -18
  346. package/FlowGraph/Blocks/Execution/flowGraphCustomFunctionBlock.js.map +0 -1
  347. package/Gamepads/Controllers/daydreamController.d.ts +0 -38
  348. package/Gamepads/Controllers/daydreamController.js +0 -70
  349. package/Gamepads/Controllers/daydreamController.js.map +0 -1
  350. package/Gamepads/Controllers/gearVRController.d.ts +0 -39
  351. package/Gamepads/Controllers/gearVRController.js +0 -79
  352. package/Gamepads/Controllers/gearVRController.js.map +0 -1
  353. package/Gamepads/Controllers/genericController.d.ts +0 -34
  354. package/Gamepads/Controllers/genericController.js +0 -48
  355. package/Gamepads/Controllers/genericController.js.map +0 -1
  356. package/Gamepads/Controllers/index.d.ts +0 -8
  357. package/Gamepads/Controllers/index.js +0 -9
  358. package/Gamepads/Controllers/index.js.map +0 -1
  359. package/Gamepads/Controllers/oculusTouchController.d.ts +0 -78
  360. package/Gamepads/Controllers/oculusTouchController.js +0 -196
  361. package/Gamepads/Controllers/oculusTouchController.js.map +0 -1
  362. package/Gamepads/Controllers/poseEnabledController.d.ts +0 -219
  363. package/Gamepads/Controllers/poseEnabledController.js +0 -293
  364. package/Gamepads/Controllers/poseEnabledController.js.map +0 -1
  365. package/Gamepads/Controllers/viveController.d.ts +0 -52
  366. package/Gamepads/Controllers/viveController.js +0 -115
  367. package/Gamepads/Controllers/viveController.js.map +0 -1
  368. package/Gamepads/Controllers/webVRController.d.ts +0 -85
  369. package/Gamepads/Controllers/webVRController.js +0 -122
  370. package/Gamepads/Controllers/webVRController.js.map +0 -1
  371. package/Gamepads/Controllers/windowsMotionController.d.ts +0 -212
  372. package/Gamepads/Controllers/windowsMotionController.js +0 -519
  373. package/Gamepads/Controllers/windowsMotionController.js.map +0 -1
  374. package/Materials/greasedLinePluginMaterial.d.ts +0 -496
  375. package/Materials/greasedLinePluginMaterial.js.map +0 -1
  376. package/Materials/greasedLineSimpleMaterial.js.map +0 -1
  377. package/Meshes/greasedLineMesh.d.ts +0 -204
  378. package/Meshes/greasedLineMesh.js.map +0 -1
@@ -1,5 +0,0 @@
1
- import type { Camera } from "../camera";
2
- /**
3
- * @internal
4
- */
5
- export declare function setWebVRRigMode(camera: Camera, rigParams: any): void;
@@ -1,34 +0,0 @@
1
- import { Matrix } from "../../Maths/math.vector.js";
2
- import { Viewport } from "../../Maths/math.viewport.js";
3
- /**
4
- * @internal
5
- */
6
- export function setWebVRRigMode(camera, rigParams) {
7
- if (rigParams.vrDisplay) {
8
- const leftEye = rigParams.vrDisplay.getEyeParameters("left");
9
- const rightEye = rigParams.vrDisplay.getEyeParameters("right");
10
- //Left eye
11
- camera._rigCameras[0].viewport = new Viewport(0, 0, 0.5, 1.0);
12
- camera._rigCameras[0].setCameraRigParameter("left", true);
13
- //leaving this for future reference
14
- camera._rigCameras[0].setCameraRigParameter("specs", rigParams.specs);
15
- camera._rigCameras[0].setCameraRigParameter("eyeParameters", leftEye);
16
- camera._rigCameras[0].setCameraRigParameter("frameData", rigParams.frameData);
17
- camera._rigCameras[0].setCameraRigParameter("parentCamera", rigParams.parentCamera);
18
- camera._rigCameras[0]._cameraRigParams.vrWorkMatrix = new Matrix();
19
- camera._rigCameras[0].getProjectionMatrix = camera._getWebVRProjectionMatrix;
20
- camera._rigCameras[0].parent = camera;
21
- camera._rigCameras[0]._getViewMatrix = camera._getWebVRViewMatrix;
22
- //Right eye
23
- camera._rigCameras[1].viewport = new Viewport(0.5, 0, 0.5, 1.0);
24
- camera._rigCameras[1].setCameraRigParameter("eyeParameters", rightEye);
25
- camera._rigCameras[1].setCameraRigParameter("specs", rigParams.specs);
26
- camera._rigCameras[1].setCameraRigParameter("frameData", rigParams.frameData);
27
- camera._rigCameras[1].setCameraRigParameter("parentCamera", rigParams.parentCamera);
28
- camera._rigCameras[1]._cameraRigParams.vrWorkMatrix = new Matrix();
29
- camera._rigCameras[1].getProjectionMatrix = camera._getWebVRProjectionMatrix;
30
- camera._rigCameras[1].parent = camera;
31
- camera._rigCameras[1]._getViewMatrix = camera._getWebVRViewMatrix;
32
- }
33
- }
34
- //# sourceMappingURL=webVRRigMode.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"webVRRigMode.js","sourceRoot":"","sources":["../../../../../dev/core/src/Cameras/RigModes/webVRRigMode.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAErD;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,MAAc,EAAE,SAAc;IAC1D,IAAI,SAAS,CAAC,SAAS,EAAE;QACrB,MAAM,OAAO,GAAG,SAAS,CAAC,SAAS,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QAC7D,MAAM,QAAQ,GAAG,SAAS,CAAC,SAAS,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAE/D,UAAU;QACV,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,IAAI,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAC9D,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAC1D,mCAAmC;QACnC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,OAAO,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC;QACtE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;QACtE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,WAAW,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAC9E,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,cAAc,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC;QACpF,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,YAAY,GAAG,IAAI,MAAM,EAAE,CAAC;QACnE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,mBAAmB,GAAG,MAAM,CAAC,yBAAyB,CAAC;QAC7E,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC;QACtC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,cAAc,GAAG,MAAM,CAAC,mBAAmB,CAAC;QAElE,WAAW;QACX,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,IAAI,QAAQ,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAChE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;QACvE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,OAAO,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC;QACtE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,WAAW,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAC9E,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,cAAc,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC;QACpF,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,YAAY,GAAG,IAAI,MAAM,EAAE,CAAC;QACnE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,mBAAmB,GAAG,MAAM,CAAC,yBAAyB,CAAC;QAC7E,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC;QACtC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,cAAc,GAAG,MAAM,CAAC,mBAAmB,CAAC;KACrE;AACL,CAAC","sourcesContent":["import type { Camera } from \"../camera\";\r\nimport { Matrix } from \"../../Maths/math.vector\";\r\nimport { Viewport } from \"../../Maths/math.viewport\";\r\n\r\n/**\r\n * @internal\r\n */\r\nexport function setWebVRRigMode(camera: Camera, rigParams: any) {\r\n if (rigParams.vrDisplay) {\r\n const leftEye = rigParams.vrDisplay.getEyeParameters(\"left\");\r\n const rightEye = rigParams.vrDisplay.getEyeParameters(\"right\");\r\n\r\n //Left eye\r\n camera._rigCameras[0].viewport = new Viewport(0, 0, 0.5, 1.0);\r\n camera._rigCameras[0].setCameraRigParameter(\"left\", true);\r\n //leaving this for future reference\r\n camera._rigCameras[0].setCameraRigParameter(\"specs\", rigParams.specs);\r\n camera._rigCameras[0].setCameraRigParameter(\"eyeParameters\", leftEye);\r\n camera._rigCameras[0].setCameraRigParameter(\"frameData\", rigParams.frameData);\r\n camera._rigCameras[0].setCameraRigParameter(\"parentCamera\", rigParams.parentCamera);\r\n camera._rigCameras[0]._cameraRigParams.vrWorkMatrix = new Matrix();\r\n camera._rigCameras[0].getProjectionMatrix = camera._getWebVRProjectionMatrix;\r\n camera._rigCameras[0].parent = camera;\r\n camera._rigCameras[0]._getViewMatrix = camera._getWebVRViewMatrix;\r\n\r\n //Right eye\r\n camera._rigCameras[1].viewport = new Viewport(0.5, 0, 0.5, 1.0);\r\n camera._rigCameras[1].setCameraRigParameter(\"eyeParameters\", rightEye);\r\n camera._rigCameras[1].setCameraRigParameter(\"specs\", rigParams.specs);\r\n camera._rigCameras[1].setCameraRigParameter(\"frameData\", rigParams.frameData);\r\n camera._rigCameras[1].setCameraRigParameter(\"parentCamera\", rigParams.parentCamera);\r\n camera._rigCameras[1]._cameraRigParams.vrWorkMatrix = new Matrix();\r\n camera._rigCameras[1].getProjectionMatrix = camera._getWebVRProjectionMatrix;\r\n camera._rigCameras[1].parent = camera;\r\n camera._rigCameras[1]._getViewMatrix = camera._getWebVRViewMatrix;\r\n }\r\n}\r\n"]}
@@ -1,316 +0,0 @@
1
- import type { Nullable } from "../../types";
2
- import { Observable } from "../../Misc/observable";
3
- import { FreeCamera } from "../../Cameras/freeCamera";
4
- import type { Scene } from "../../scene";
5
- import { Quaternion, Matrix, Vector3 } from "../../Maths/math.vector";
6
- import type { WebVRController } from "../../Gamepads/Controllers/webVRController";
7
- import { Node } from "../../node";
8
- import type { Ray } from "../../Culling/ray";
9
- import "../../Engines/Extensions/engine.webVR";
10
- /**
11
- * This is a copy of VRPose. See https://developer.mozilla.org/en-US/docs/Web/API/VRPose
12
- * IMPORTANT!! The data is right-hand data.
13
- * @export
14
- * @interface DevicePose
15
- */
16
- export interface DevicePose {
17
- /**
18
- * The position of the device, values in array are [x,y,z].
19
- */
20
- readonly position: Nullable<Float32Array>;
21
- /**
22
- * The linearVelocity of the device, values in array are [x,y,z].
23
- */
24
- readonly linearVelocity: Nullable<Float32Array>;
25
- /**
26
- * The linearAcceleration of the device, values in array are [x,y,z].
27
- */
28
- readonly linearAcceleration: Nullable<Float32Array>;
29
- /**
30
- * The orientation of the device in a quaternion array, values in array are [x,y,z,w].
31
- */
32
- readonly orientation: Nullable<Float32Array>;
33
- /**
34
- * The angularVelocity of the device, values in array are [x,y,z].
35
- */
36
- readonly angularVelocity: Nullable<Float32Array>;
37
- /**
38
- * The angularAcceleration of the device, values in array are [x,y,z].
39
- */
40
- readonly angularAcceleration: Nullable<Float32Array>;
41
- }
42
- /**
43
- * Interface representing a pose controlled object in Babylon.
44
- * A pose controlled object has both regular pose values as well as pose values
45
- * from an external device such as a VR head mounted display
46
- */
47
- export interface PoseControlled {
48
- /**
49
- * The position of the object in babylon space.
50
- */
51
- position: Vector3;
52
- /**
53
- * The rotation quaternion of the object in babylon space.
54
- */
55
- rotationQuaternion: Quaternion;
56
- /**
57
- * The position of the device in babylon space.
58
- */
59
- devicePosition?: Vector3;
60
- /**
61
- * The rotation quaternion of the device in babylon space.
62
- */
63
- deviceRotationQuaternion: Quaternion;
64
- /**
65
- * The raw pose coming from the device.
66
- */
67
- rawPose: Nullable<DevicePose>;
68
- /**
69
- * The scale of the device to be used when translating from device space to babylon space.
70
- */
71
- deviceScaleFactor: number;
72
- /**
73
- * Updates the poseControlled values based on the input device pose.
74
- * @param poseData the pose data to update the object with
75
- */
76
- updateFromDevice(poseData: DevicePose): void;
77
- }
78
- /**
79
- * Set of options to customize the webVRCamera
80
- */
81
- export interface WebVROptions {
82
- /**
83
- * Sets if the webVR camera should be tracked to the vrDevice. (default: true)
84
- */
85
- trackPosition?: boolean;
86
- /**
87
- * Sets the scale of the vrDevice in babylon space. (default: 1)
88
- */
89
- positionScale?: number;
90
- /**
91
- * If there are more than one VRDisplays, this will choose the display matching this name. (default: pick first vrDisplay)
92
- */
93
- displayName?: string;
94
- /**
95
- * Should the native controller meshes be initialized. (default: true)
96
- */
97
- controllerMeshes?: boolean;
98
- /**
99
- * Creating a default HemiLight only on controllers. (default: true)
100
- */
101
- defaultLightingOnControllers?: boolean;
102
- /**
103
- * If you don't want to use the default VR button of the helper. (default: false)
104
- */
105
- useCustomVRButton?: boolean;
106
- /**
107
- * If you'd like to provide your own button to the VRHelper. (default: standard babylon vr button)
108
- */
109
- customVRButton?: HTMLButtonElement;
110
- /**
111
- * To change the length of the ray for gaze/controllers. Will be scaled by positionScale. (default: 100)
112
- */
113
- rayLength?: number;
114
- /**
115
- * To change the default offset from the ground to account for user's height in meters. Will be scaled by positionScale. (default: 1.7)
116
- */
117
- defaultHeight?: number;
118
- /**
119
- * If multiview should be used if available (default: false)
120
- */
121
- useMultiview?: boolean;
122
- }
123
- /**
124
- * This represents a WebVR camera.
125
- * The WebVR camera is Babylon's simple interface to interaction with Windows Mixed Reality, HTC Vive and Oculus Rift.
126
- * @deprecated Use WebXR instead - https://doc.babylonjs.com/features/featuresDeepDive/webXR
127
- * @example https://doc.babylonjs.com/features/featuresDeepDive/cameras/webVRCamera
128
- */
129
- export declare class WebVRFreeCamera extends FreeCamera implements PoseControlled {
130
- private _webVROptions;
131
- /**
132
- * @internal
133
- * The vrDisplay tied to the camera. See https://developer.mozilla.org/en-US/docs/Web/API/VRDisplay
134
- */
135
- _vrDevice: any;
136
- /**
137
- * The rawPose of the vrDevice.
138
- */
139
- rawPose: Nullable<DevicePose>;
140
- private _onVREnabled;
141
- private _specsVersion;
142
- private _attached;
143
- private _frameData;
144
- protected _descendants: Array<Node>;
145
- private _deviceRoomPosition;
146
- /** @internal */
147
- _deviceRoomRotationQuaternion: Quaternion;
148
- private _standingMatrix;
149
- /**
150
- * Represents device position in babylon space.
151
- */
152
- devicePosition: Vector3;
153
- /**
154
- * Represents device rotation in babylon space.
155
- */
156
- deviceRotationQuaternion: Quaternion;
157
- /**
158
- * The scale of the device to be used when translating from device space to babylon space.
159
- */
160
- deviceScaleFactor: number;
161
- private _deviceToWorld;
162
- private _worldToDevice;
163
- /**
164
- * References to the webVR controllers for the vrDevice.
165
- */
166
- controllers: Array<WebVRController>;
167
- /**
168
- * Emits an event when a controller is attached.
169
- */
170
- onControllersAttachedObservable: Observable<WebVRController[]>;
171
- /**
172
- * Emits an event when a controller's mesh has been loaded;
173
- */
174
- onControllerMeshLoadedObservable: Observable<WebVRController>;
175
- /**
176
- * Emits an event when the HMD's pose has been updated.
177
- */
178
- onPoseUpdatedFromDeviceObservable: Observable<any>;
179
- private _poseSet;
180
- /**
181
- * If the rig cameras be used as parent instead of this camera.
182
- */
183
- rigParenting: boolean;
184
- private _lightOnControllers;
185
- private _defaultHeight?;
186
- /**
187
- * Instantiates a WebVRFreeCamera.
188
- * @param name The name of the WebVRFreeCamera
189
- * @param position The starting anchor position for the camera
190
- * @param scene The scene the camera belongs to
191
- * @param _webVROptions a set of customizable options for the webVRCamera
192
- */
193
- constructor(name: string, position: Vector3, scene?: Scene, _webVROptions?: WebVROptions);
194
- protected _setRigMode: any;
195
- /**
196
- * Gets the device distance from the ground in meters.
197
- * @returns the distance in meters from the vrDevice to ground in device space. If standing matrix is not supported for the vrDevice 0 is returned.
198
- */
199
- deviceDistanceToRoomGround(): number;
200
- /**
201
- * Enables the standing matrix when supported. This can be used to position the user's view the correct height from the ground.
202
- * @param callback will be called when the standing matrix is set. Callback parameter is if the standing matrix is supported.
203
- */
204
- useStandingMatrix(callback?: (bool: boolean) => void): void;
205
- /**
206
- * Enables the standing matrix when supported. This can be used to position the user's view the correct height from the ground.
207
- * @returns A promise with a boolean set to if the standing matrix is supported.
208
- */
209
- useStandingMatrixAsync(): Promise<boolean>;
210
- /**
211
- * Disposes the camera
212
- */
213
- dispose(): void;
214
- /**
215
- * Gets a vrController by name.
216
- * @param name The name of the controller to retrieve
217
- * @returns the controller matching the name specified or null if not found
218
- */
219
- getControllerByName(name: string): Nullable<WebVRController>;
220
- private _leftController;
221
- /**
222
- * The controller corresponding to the users left hand.
223
- */
224
- get leftController(): Nullable<WebVRController>;
225
- private _rightController;
226
- /**
227
- * The controller corresponding to the users right hand.
228
- */
229
- get rightController(): Nullable<WebVRController>;
230
- /**
231
- * Casts a ray forward from the vrCamera's gaze.
232
- * @param length Length of the ray (default: 100)
233
- * @returns the ray corresponding to the gaze
234
- */
235
- getForwardRay(length?: number): Ray;
236
- /**
237
- * @internal
238
- * Updates the camera based on device's frame data
239
- */
240
- _checkInputs(): void;
241
- /**
242
- * Updates the poseControlled values based on the input device pose.
243
- * @param poseData Pose coming from the device
244
- */
245
- updateFromDevice(poseData: DevicePose): void;
246
- private _detachIfAttached;
247
- /**
248
- * WebVR's attach control will start broadcasting frames to the device.
249
- * Note that in certain browsers (chrome for example) this function must be called
250
- * within a user-interaction callback. Example:
251
- * <pre> scene.onPointerDown = function() { camera.attachControl(canvas); }</pre>
252
- *
253
- * @param noPreventDefault prevent the default html element operation when attaching the vrDevice
254
- */
255
- attachControl(noPreventDefault?: boolean): void;
256
- /**
257
- * Detach the current controls from the specified dom element.
258
- */
259
- detachControl(): void;
260
- /**
261
- * @returns the name of this class
262
- */
263
- getClassName(): string;
264
- /**
265
- * Calls resetPose on the vrDisplay
266
- * See: https://developer.mozilla.org/en-US/docs/Web/API/VRDisplay/resetPose
267
- */
268
- resetToCurrentRotation(): void;
269
- /**
270
- * @internal
271
- * Updates the rig cameras (left and right eye)
272
- */
273
- _updateRigCameras(): void;
274
- private _workingVector;
275
- private _oneVector;
276
- private _workingMatrix;
277
- private _updateCacheCalled;
278
- private _correctPositionIfNotTrackPosition;
279
- /**
280
- * @internal
281
- * Updates the cached values of the camera
282
- * @param ignoreParentClass ignores updating the parent class's cache (default: false)
283
- */
284
- _updateCache(ignoreParentClass?: boolean): void;
285
- /**
286
- * @internal
287
- * Get current device position in babylon world
288
- */
289
- _computeDevicePosition(): void;
290
- /**
291
- * Updates the current device position and rotation in the babylon world
292
- */
293
- update(): void;
294
- /**
295
- * @internal
296
- * Gets the view matrix of this camera (Always set to identity as left and right eye cameras contain the actual view matrix)
297
- * @returns an identity matrix
298
- */
299
- _getViewMatrix(): Matrix;
300
- private _tmpMatrix;
301
- /**
302
- * This function is called by the two RIG cameras.
303
- * 'this' is the left or right camera (and NOT (!!!) the WebVRFreeCamera instance)
304
- * @internal
305
- */
306
- _getWebVRViewMatrix(): Matrix;
307
- /** @internal */
308
- _getWebVRProjectionMatrix(): Matrix;
309
- private _onGamepadConnectedObserver;
310
- private _onGamepadDisconnectedObserver;
311
- private _updateCacheWhenTrackingDisabledObserver;
312
- /**
313
- * Initializes the controllers and their meshes
314
- */
315
- initControllers(): void;
316
- }