babylonjs-editor 4.4.0 → 5.2.4

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 (401) hide show
  1. package/build/src/index.js +142 -0
  2. package/declaration/src/dashboard/create.d.ts +6 -0
  3. package/declaration/src/dashboard/item.d.ts +8 -0
  4. package/declaration/src/dashboard/main.d.ts +19 -0
  5. package/declaration/src/dashboard/menu.d.ts +1 -0
  6. package/declaration/src/dashboard/preload.d.ts +0 -0
  7. package/declaration/src/dashboard/progress.d.ts +17 -0
  8. package/declaration/src/dashboard/window-controls.d.ts +1 -0
  9. package/declaration/src/dashboard/window.d.ts +2 -0
  10. package/declaration/src/editor/dialogs/command-palette/camera.d.ts +4 -0
  11. package/declaration/src/editor/dialogs/command-palette/command-palette.d.ts +27 -0
  12. package/declaration/src/editor/dialogs/command-palette/light.d.ts +4 -0
  13. package/declaration/src/editor/dialogs/command-palette/material.d.ts +4 -0
  14. package/declaration/src/editor/dialogs/command-palette/mesh.d.ts +4 -0
  15. package/declaration/src/editor/dialogs/command-palette/node.d.ts +4 -0
  16. package/declaration/src/editor/dialogs/command-palette/particle-systems.d.ts +3 -0
  17. package/declaration/src/editor/dialogs/command-palette/project.d.ts +3 -0
  18. package/declaration/src/editor/dialogs/command-palette/shared-commands.d.ts +31 -0
  19. package/declaration/src/editor/dialogs/command-palette/sprite.d.ts +4 -0
  20. package/declaration/src/editor/dialogs/edit-preferences/edit-preferences.d.ts +24 -0
  21. package/declaration/src/editor/dialogs/edit-project/edit-project.d.ts +17 -0
  22. package/declaration/src/editor/dialogs/edit-project/plugins/component.d.ts +18 -0
  23. package/declaration/src/editor/dialogs/edit-project/plugins/item.d.ts +7 -0
  24. package/declaration/src/editor/dialogs/edit-project/textures/component.d.ts +9 -0
  25. package/declaration/src/editor/layout/animation/inspector/inspector.d.ts +21 -0
  26. package/declaration/src/editor/layout/animation/timeline/key.d.ts +24 -0
  27. package/declaration/src/editor/layout/animation/timeline/timeline.d.ts +68 -0
  28. package/declaration/src/editor/layout/animation/timeline/track.d.ts +29 -0
  29. package/declaration/src/editor/layout/animation/timeline/tracker.d.ts +17 -0
  30. package/declaration/src/editor/layout/animation/toolbar.d.ts +11 -0
  31. package/declaration/src/editor/layout/animation/tools/export.d.ts +2 -0
  32. package/declaration/src/editor/layout/animation/tools/import.d.ts +3 -0
  33. package/declaration/src/editor/layout/animation/tools/properties.d.ts +6 -0
  34. package/declaration/src/editor/layout/animation/tracks/add.d.ts +7 -0
  35. package/declaration/src/editor/layout/animation/tracks/item.d.ts +11 -0
  36. package/declaration/src/editor/layout/animation/tracks/tracks.d.ts +18 -0
  37. package/declaration/src/editor/layout/animation.d.ts +53 -0
  38. package/declaration/src/editor/layout/assets-browser/events/gui.d.ts +2 -0
  39. package/declaration/src/editor/layout/assets-browser/events/material.d.ts +2 -0
  40. package/declaration/src/editor/layout/assets-browser/events/particles.d.ts +2 -0
  41. package/declaration/src/editor/layout/assets-browser/events/scene.d.ts +2 -0
  42. package/declaration/src/editor/layout/assets-browser/items/cinematic-item.d.ts +12 -0
  43. package/declaration/src/editor/layout/assets-browser/items/gui-item.d.ts +14 -0
  44. package/declaration/src/editor/layout/assets-browser/items/hdr-item.d.ts +13 -0
  45. package/declaration/src/editor/layout/assets-browser/items/image-item.d.ts +27 -0
  46. package/declaration/src/editor/layout/assets-browser/items/item.d.ts +91 -0
  47. package/declaration/src/editor/layout/assets-browser/items/json-item.d.ts +14 -0
  48. package/declaration/src/editor/layout/assets-browser/items/material-item.d.ts +26 -0
  49. package/declaration/src/editor/layout/assets-browser/items/mesh-item.d.ts +20 -0
  50. package/declaration/src/editor/layout/assets-browser/items/navmesh-item.d.ts +12 -0
  51. package/declaration/src/editor/layout/assets-browser/items/particle-system-item.d.ts +12 -0
  52. package/declaration/src/editor/layout/assets-browser/items/scene-item.d.ts +16 -0
  53. package/declaration/src/editor/layout/assets-browser/label.d.ts +7 -0
  54. package/declaration/src/editor/layout/assets-browser/viewers/env-viewer.d.ts +1 -0
  55. package/declaration/src/editor/layout/assets-browser/viewers/material-viewer.d.ts +6 -0
  56. package/declaration/src/editor/layout/assets-browser/viewers/model-viewer.d.ts +10 -0
  57. package/declaration/src/editor/layout/assets-browser.d.ts +106 -0
  58. package/declaration/src/editor/layout/cinematic/curves/curve.d.ts +23 -0
  59. package/declaration/src/editor/layout/cinematic/curves/handle.d.ts +20 -0
  60. package/declaration/src/editor/layout/cinematic/curves/point.d.ts +16 -0
  61. package/declaration/src/editor/layout/cinematic/curves/root.d.ts +27 -0
  62. package/declaration/src/editor/layout/cinematic/curves/ticks.d.ts +9 -0
  63. package/declaration/src/editor/layout/cinematic/curves/tools/animation-group.d.ts +3 -0
  64. package/declaration/src/editor/layout/cinematic/curves/tools/property.d.ts +8 -0
  65. package/declaration/src/editor/layout/cinematic/curves/tools/sound.d.ts +2 -0
  66. package/declaration/src/editor/layout/cinematic/curves/tools/tools.d.ts +34 -0
  67. package/declaration/src/editor/layout/cinematic/curves.d.ts +21 -0
  68. package/declaration/src/editor/layout/cinematic/editor.d.ts +76 -0
  69. package/declaration/src/editor/layout/cinematic/inspector/animation-group.d.ts +8 -0
  70. package/declaration/src/editor/layout/cinematic/inspector/events/apply-impulse.d.ts +7 -0
  71. package/declaration/src/editor/layout/cinematic/inspector/events/base.d.ts +8 -0
  72. package/declaration/src/editor/layout/cinematic/inspector/events/event.d.ts +5 -0
  73. package/declaration/src/editor/layout/cinematic/inspector/events/set-enabled.d.ts +7 -0
  74. package/declaration/src/editor/layout/cinematic/inspector/key-cut.d.ts +8 -0
  75. package/declaration/src/editor/layout/cinematic/inspector/key.d.ts +9 -0
  76. package/declaration/src/editor/layout/cinematic/inspector/sound.d.ts +8 -0
  77. package/declaration/src/editor/layout/cinematic/inspector/tools.d.ts +13 -0
  78. package/declaration/src/editor/layout/cinematic/inspector.d.ts +16 -0
  79. package/declaration/src/editor/layout/cinematic/render/convert.d.ts +21 -0
  80. package/declaration/src/editor/layout/cinematic/render/dialog.d.ts +19 -0
  81. package/declaration/src/editor/layout/cinematic/render/render.d.ts +18 -0
  82. package/declaration/src/editor/layout/cinematic/render/renderer.d.ts +16 -0
  83. package/declaration/src/editor/layout/cinematic/render/tools.d.ts +21 -0
  84. package/declaration/src/editor/layout/cinematic/serialization/parse.d.ts +21 -0
  85. package/declaration/src/editor/layout/cinematic/serialization/serialize.d.ts +4 -0
  86. package/declaration/src/editor/layout/cinematic/timelines/add.d.ts +6 -0
  87. package/declaration/src/editor/layout/cinematic/timelines/keys/animation-group.d.ts +9 -0
  88. package/declaration/src/editor/layout/cinematic/timelines/keys/base.d.ts +22 -0
  89. package/declaration/src/editor/layout/cinematic/timelines/keys/event.d.ts +9 -0
  90. package/declaration/src/editor/layout/cinematic/timelines/keys/property.d.ts +9 -0
  91. package/declaration/src/editor/layout/cinematic/timelines/keys/sound.d.ts +9 -0
  92. package/declaration/src/editor/layout/cinematic/timelines/move.d.ts +18 -0
  93. package/declaration/src/editor/layout/cinematic/timelines/options.d.ts +5 -0
  94. package/declaration/src/editor/layout/cinematic/timelines/remove.d.ts +6 -0
  95. package/declaration/src/editor/layout/cinematic/timelines/tools.d.ts +4 -0
  96. package/declaration/src/editor/layout/cinematic/timelines.d.ts +25 -0
  97. package/declaration/src/editor/layout/cinematic/toolbar.d.ts +6 -0
  98. package/declaration/src/editor/layout/cinematic/tools/state.d.ts +3 -0
  99. package/declaration/src/editor/layout/cinematic/tools/sync.d.ts +6 -0
  100. package/declaration/src/editor/layout/cinematic/tracker.d.ts +10 -0
  101. package/declaration/src/editor/layout/cinematic/tracks/add.d.ts +5 -0
  102. package/declaration/src/editor/layout/cinematic/tracks/animation-group.d.ts +7 -0
  103. package/declaration/src/editor/layout/cinematic/tracks/event.d.ts +7 -0
  104. package/declaration/src/editor/layout/cinematic/tracks/property.d.ts +7 -0
  105. package/declaration/src/editor/layout/cinematic/tracks/remove.d.ts +7 -0
  106. package/declaration/src/editor/layout/cinematic/tracks/sound.d.ts +7 -0
  107. package/declaration/src/editor/layout/cinematic/tracks.d.ts +20 -0
  108. package/declaration/src/editor/layout/console/progress-log.d.ts +21 -0
  109. package/declaration/src/editor/layout/console.d.ts +40 -0
  110. package/declaration/src/editor/layout/graph/export.d.ts +19 -0
  111. package/declaration/src/editor/layout/graph/graph.d.ts +18 -0
  112. package/declaration/src/editor/layout/graph/label.d.ts +7 -0
  113. package/declaration/src/editor/layout/graph/remove.d.ts +6 -0
  114. package/declaration/src/editor/layout/graph.d.ts +100 -0
  115. package/declaration/src/editor/layout/inspector/camera/arc-rotate.d.ts +12 -0
  116. package/declaration/src/editor/layout/inspector/camera/editor.d.ts +12 -0
  117. package/declaration/src/editor/layout/inspector/camera/free.d.ts +15 -0
  118. package/declaration/src/editor/layout/inspector/camera/utils/focal.d.ts +5 -0
  119. package/declaration/src/editor/layout/inspector/camera/utils/mode.d.ts +6 -0
  120. package/declaration/src/editor/layout/inspector/decals/configuration.d.ts +6 -0
  121. package/declaration/src/editor/layout/inspector/decals/decals.d.ts +36 -0
  122. package/declaration/src/editor/layout/inspector/fields/asset.d.ts +8 -0
  123. package/declaration/src/editor/layout/inspector/fields/block.d.ts +2 -0
  124. package/declaration/src/editor/layout/inspector/fields/color.d.ts +9 -0
  125. package/declaration/src/editor/layout/inspector/fields/dimensions.d.ts +10 -0
  126. package/declaration/src/editor/layout/inspector/fields/entity.d.ts +8 -0
  127. package/declaration/src/editor/layout/inspector/fields/field.d.ts +14 -0
  128. package/declaration/src/editor/layout/inspector/fields/key.d.ts +7 -0
  129. package/declaration/src/editor/layout/inspector/fields/list.d.ts +14 -0
  130. package/declaration/src/editor/layout/inspector/fields/number.d.ts +11 -0
  131. package/declaration/src/editor/layout/inspector/fields/section.d.ts +21 -0
  132. package/declaration/src/editor/layout/inspector/fields/slider.d.ts +8 -0
  133. package/declaration/src/editor/layout/inspector/fields/string.d.ts +6 -0
  134. package/declaration/src/editor/layout/inspector/fields/switch.d.ts +5 -0
  135. package/declaration/src/editor/layout/inspector/fields/texture.d.ts +36 -0
  136. package/declaration/src/editor/layout/inspector/fields/vector.d.ts +11 -0
  137. package/declaration/src/editor/layout/inspector/file/image.d.ts +5 -0
  138. package/declaration/src/editor/layout/inspector/file/markdown.d.ts +5 -0
  139. package/declaration/src/editor/layout/inspector/file/sound.d.ts +5 -0
  140. package/declaration/src/editor/layout/inspector/file.d.ts +18 -0
  141. package/declaration/src/editor/layout/inspector/gui/gui.d.ts +12 -0
  142. package/declaration/src/editor/layout/inspector/inspector.d.ts +5 -0
  143. package/declaration/src/editor/layout/inspector/light/directional.d.ts +12 -0
  144. package/declaration/src/editor/layout/inspector/light/hemispheric.d.ts +12 -0
  145. package/declaration/src/editor/layout/inspector/light/point.d.ts +12 -0
  146. package/declaration/src/editor/layout/inspector/light/shadows.d.ts +28 -0
  147. package/declaration/src/editor/layout/inspector/light/spot.d.ts +12 -0
  148. package/declaration/src/editor/layout/inspector/material/cell.d.ts +11 -0
  149. package/declaration/src/editor/layout/inspector/material/components/alpha.d.ts +6 -0
  150. package/declaration/src/editor/layout/inspector/material/components/transparency.d.ts +7 -0
  151. package/declaration/src/editor/layout/inspector/material/components/utils.d.ts +11 -0
  152. package/declaration/src/editor/layout/inspector/material/fire.d.ts +11 -0
  153. package/declaration/src/editor/layout/inspector/material/gradient.d.ts +11 -0
  154. package/declaration/src/editor/layout/inspector/material/grid.d.ts +11 -0
  155. package/declaration/src/editor/layout/inspector/material/lava.d.ts +11 -0
  156. package/declaration/src/editor/layout/inspector/material/multi.d.ts +15 -0
  157. package/declaration/src/editor/layout/inspector/material/node.d.ts +19 -0
  158. package/declaration/src/editor/layout/inspector/material/normal.d.ts +11 -0
  159. package/declaration/src/editor/layout/inspector/material/pbr.d.ts +10 -0
  160. package/declaration/src/editor/layout/inspector/material/sky.d.ts +11 -0
  161. package/declaration/src/editor/layout/inspector/material/standard.d.ts +7 -0
  162. package/declaration/src/editor/layout/inspector/material/tri-planar.d.ts +11 -0
  163. package/declaration/src/editor/layout/inspector/material/water.d.ts +15 -0
  164. package/declaration/src/editor/layout/inspector/mesh/collision.d.ts +17 -0
  165. package/declaration/src/editor/layout/inspector/mesh/decal.d.ts +15 -0
  166. package/declaration/src/editor/layout/inspector/mesh/geometry/box.d.ts +7 -0
  167. package/declaration/src/editor/layout/inspector/mesh/geometry/capsule.d.ts +7 -0
  168. package/declaration/src/editor/layout/inspector/mesh/geometry/cylinder.d.ts +7 -0
  169. package/declaration/src/editor/layout/inspector/mesh/geometry/ground.d.ts +7 -0
  170. package/declaration/src/editor/layout/inspector/mesh/geometry/plane.d.ts +7 -0
  171. package/declaration/src/editor/layout/inspector/mesh/geometry/proxy.d.ts +1 -0
  172. package/declaration/src/editor/layout/inspector/mesh/geometry/sphere.d.ts +7 -0
  173. package/declaration/src/editor/layout/inspector/mesh/geometry/torus-knot.d.ts +7 -0
  174. package/declaration/src/editor/layout/inspector/mesh/geometry/torus.d.ts +7 -0
  175. package/declaration/src/editor/layout/inspector/mesh/geometry.d.ts +7 -0
  176. package/declaration/src/editor/layout/inspector/mesh/mesh.d.ts +32 -0
  177. package/declaration/src/editor/layout/inspector/mesh/physics.d.ts +12 -0
  178. package/declaration/src/editor/layout/inspector/mesh/skeleton.d.ts +12 -0
  179. package/declaration/src/editor/layout/inspector/metadata/custom-metadata.d.ts +14 -0
  180. package/declaration/src/editor/layout/inspector/particles/gpu-particle-system.d.ts +26 -0
  181. package/declaration/src/editor/layout/inspector/particles/gradient.d.ts +6 -0
  182. package/declaration/src/editor/layout/inspector/particles/particle-system.d.ts +22 -0
  183. package/declaration/src/editor/layout/inspector/particles/property-gradient.d.ts +13 -0
  184. package/declaration/src/editor/layout/inspector/scene/animation-groups.d.ts +7 -0
  185. package/declaration/src/editor/layout/inspector/scene/scene.d.ts +27 -0
  186. package/declaration/src/editor/layout/inspector/script/field.d.ts +9 -0
  187. package/declaration/src/editor/layout/inspector/script/script.d.ts +18 -0
  188. package/declaration/src/editor/layout/inspector/script/tools.d.ts +20 -0
  189. package/declaration/src/editor/layout/inspector/sound/sound.d.ts +17 -0
  190. package/declaration/src/editor/layout/inspector/sound/spatial.d.ts +14 -0
  191. package/declaration/src/editor/layout/inspector/sprites/sprite-manager.d.ts +27 -0
  192. package/declaration/src/editor/layout/inspector/sprites/sprite-map.d.ts +29 -0
  193. package/declaration/src/editor/layout/inspector/sprites/sprite.d.ts +27 -0
  194. package/declaration/src/editor/layout/inspector/transform.d.ts +16 -0
  195. package/declaration/src/editor/layout/inspector.d.ts +24 -0
  196. package/declaration/src/editor/layout/navmesh/components/list.d.ts +10 -0
  197. package/declaration/src/editor/layout/navmesh/components/search.d.ts +5 -0
  198. package/declaration/src/editor/layout/navmesh/editor.d.ts +34 -0
  199. package/declaration/src/editor/layout/navmesh/inspector.d.ts +7 -0
  200. package/declaration/src/editor/layout/navmesh/meshes.d.ts +7 -0
  201. package/declaration/src/editor/layout/navmesh/obstacles.d.ts +7 -0
  202. package/declaration/src/editor/layout/navmesh/toolbar.d.ts +5 -0
  203. package/declaration/src/editor/layout/navmesh/tools.d.ts +10 -0
  204. package/declaration/src/editor/layout/navmesh/types.d.ts +20 -0
  205. package/declaration/src/editor/layout/preview/axis.d.ts +30 -0
  206. package/declaration/src/editor/layout/preview/camera.d.ts +8 -0
  207. package/declaration/src/editor/layout/preview/gizmo.d.ts +45 -0
  208. package/declaration/src/editor/layout/preview/icons.d.ts +35 -0
  209. package/declaration/src/editor/layout/preview/import/gui.d.ts +8 -0
  210. package/declaration/src/editor/layout/preview/import/import.d.ts +9 -0
  211. package/declaration/src/editor/layout/preview/import/material.d.ts +16 -0
  212. package/declaration/src/editor/layout/preview/import/particles.d.ts +2 -0
  213. package/declaration/src/editor/layout/preview/import/progress.d.ts +11 -0
  214. package/declaration/src/editor/layout/preview/import/sound.d.ts +2 -0
  215. package/declaration/src/editor/layout/preview/import/texture.d.ts +17 -0
  216. package/declaration/src/editor/layout/preview/play.d.ts +92 -0
  217. package/declaration/src/editor/layout/preview/stats/row.d.ts +5 -0
  218. package/declaration/src/editor/layout/preview/stats/stats.d.ts +17 -0
  219. package/declaration/src/editor/layout/preview/stats/types.d.ts +28 -0
  220. package/declaration/src/editor/layout/preview.d.ts +140 -0
  221. package/declaration/src/editor/layout/toolbar.d.ts +17 -0
  222. package/declaration/src/editor/layout.d.ts +72 -0
  223. package/declaration/src/editor/main.d.ts +94 -0
  224. package/declaration/src/editor/menu.d.ts +1 -0
  225. package/declaration/src/editor/nodes/camera-pan-input.d.ts +30 -0
  226. package/declaration/src/editor/nodes/camera.d.ts +50 -0
  227. package/declaration/src/editor/nodes/collision.d.ts +36 -0
  228. package/declaration/src/editor/nodes/scene-link.d.ts +28 -0
  229. package/declaration/src/editor/nodes/sprite-manager.d.ts +36 -0
  230. package/declaration/src/editor/nodes/sprite-map.d.ts +38 -0
  231. package/declaration/src/editor/overrides.d.ts +1 -0
  232. package/declaration/src/editor/preload.d.ts +1 -0
  233. package/declaration/src/editor/rendering/default-pipeline.d.ts +14 -0
  234. package/declaration/src/editor/rendering/ibl-shadows.d.ts +11 -0
  235. package/declaration/src/editor/rendering/motion-blur.d.ts +11 -0
  236. package/declaration/src/editor/rendering/ssao.d.ts +11 -0
  237. package/declaration/src/editor/rendering/ssr.d.ts +11 -0
  238. package/declaration/src/editor/rendering/tools.d.ts +7 -0
  239. package/declaration/src/editor/rendering/vls.d.ts +11 -0
  240. package/declaration/src/editor/window.d.ts +23 -0
  241. package/declaration/src/editor/windows/ge/index.d.ts +13 -0
  242. package/declaration/src/editor/windows/nme/index.d.ts +15 -0
  243. package/declaration/src/editor/windows/npe/index.d.ts +15 -0
  244. package/declaration/src/editor/windows/preload.d.ts +1 -0
  245. package/declaration/src/editor/windows/scene/index.d.ts +12 -0
  246. package/declaration/src/electron/assimp/assimpjs-worker.d.ts +1 -0
  247. package/declaration/src/electron/assimp/assimpjs.d.ts +1 -0
  248. package/declaration/src/electron/events/dialog.d.ts +1 -0
  249. package/declaration/src/electron/events/editor.d.ts +1 -0
  250. package/declaration/src/electron/events/export.d.ts +1 -0
  251. package/declaration/src/electron/events/shell.d.ts +1 -0
  252. package/declaration/src/electron/events/window.d.ts +1 -0
  253. package/declaration/src/electron/node-pty.d.ts +6 -0
  254. package/declaration/src/export.d.ts +86 -0
  255. package/declaration/src/index.d.ts +7 -0
  256. package/declaration/src/loader/animation.d.ts +2 -0
  257. package/declaration/src/loader/assimpjs.d.ts +42 -0
  258. package/declaration/src/loader/maps.d.ts +4 -0
  259. package/declaration/src/loader/material.d.ts +3 -0
  260. package/declaration/src/loader/mesh.d.ts +3 -0
  261. package/declaration/src/loader/node.d.ts +4 -0
  262. package/declaration/src/loader/texture.d.ts +2 -0
  263. package/declaration/src/loader/types.d.ts +64 -0
  264. package/declaration/src/project/add/camera.d.ts +4 -0
  265. package/declaration/src/project/add/configure.d.ts +3 -0
  266. package/declaration/src/project/add/light.d.ts +6 -0
  267. package/declaration/src/project/add/material.d.ts +14 -0
  268. package/declaration/src/project/add/mesh.d.ts +12 -0
  269. package/declaration/src/project/add/node.d.ts +3 -0
  270. package/declaration/src/project/add/particles.d.ts +4 -0
  271. package/declaration/src/project/add/sprite.d.ts +6 -0
  272. package/declaration/src/project/configuration.d.ts +11 -0
  273. package/declaration/src/project/export/assets.d.ts +9 -0
  274. package/declaration/src/project/export/dialog.d.ts +23 -0
  275. package/declaration/src/project/export/export.d.ts +7 -0
  276. package/declaration/src/project/export/ktx.d.ts +29 -0
  277. package/declaration/src/project/export/lod.d.ts +7 -0
  278. package/declaration/src/project/export/materials.d.ts +1 -0
  279. package/declaration/src/project/export/physics.d.ts +7 -0
  280. package/declaration/src/project/export/progress.d.ts +11 -0
  281. package/declaration/src/project/export/scripts.d.ts +2 -0
  282. package/declaration/src/project/export/texture.d.ts +6 -0
  283. package/declaration/src/project/load/default.d.ts +3 -0
  284. package/declaration/src/project/load/install.d.ts +15 -0
  285. package/declaration/src/project/load/load.d.ts +16 -0
  286. package/declaration/src/project/load/prepare.d.ts +4 -0
  287. package/declaration/src/project/load/progress.d.ts +20 -0
  288. package/declaration/src/project/load/scene.d.ts +24 -0
  289. package/declaration/src/project/load/texture.d.ts +3 -0
  290. package/declaration/src/project/run.d.ts +3 -0
  291. package/declaration/src/project/save/dialog.d.ts +23 -0
  292. package/declaration/src/project/save/progress.d.ts +4 -0
  293. package/declaration/src/project/save/save.d.ts +4 -0
  294. package/declaration/src/project/save/scene.d.ts +2 -0
  295. package/declaration/src/project/tools/geometry.d.ts +7 -0
  296. package/declaration/src/project/tools/morph-target.d.ts +1 -0
  297. package/declaration/src/project/typings.d.ts +34 -0
  298. package/declaration/src/splash/main.d.ts +6 -0
  299. package/declaration/src/splash/preload.d.ts +0 -0
  300. package/declaration/src/tools/animation/group.d.ts +7 -0
  301. package/declaration/src/tools/animation/tools.d.ts +27 -0
  302. package/declaration/src/tools/animation/tween.d.ts +95 -0
  303. package/declaration/src/tools/augmentations.d.ts +10 -0
  304. package/declaration/src/tools/camera/focus.d.ts +7 -0
  305. package/declaration/src/tools/dialog.d.ts +14 -0
  306. package/declaration/src/tools/dom.d.ts +17 -0
  307. package/declaration/src/tools/fs.d.ts +30 -0
  308. package/declaration/src/tools/guards/material.d.ts +21 -0
  309. package/declaration/src/tools/guards/math.d.ts +26 -0
  310. package/declaration/src/tools/guards/nodes.d.ts +103 -0
  311. package/declaration/src/tools/guards/particles.d.ts +16 -0
  312. package/declaration/src/tools/guards/scene.d.ts +12 -0
  313. package/declaration/src/tools/guards/shadows.d.ts +11 -0
  314. package/declaration/src/tools/guards/sound.d.ts +6 -0
  315. package/declaration/src/tools/guards/sprites.d.ts +18 -0
  316. package/declaration/src/tools/guards/texture.d.ts +22 -0
  317. package/declaration/src/tools/ipc.d.ts +14 -0
  318. package/declaration/src/tools/light/ibl.d.ts +2 -0
  319. package/declaration/src/tools/light/shadows.d.ts +19 -0
  320. package/declaration/src/tools/local-storage.d.ts +29 -0
  321. package/declaration/src/tools/material/extract.d.ts +6 -0
  322. package/declaration/src/tools/material/material.d.ts +11 -0
  323. package/declaration/src/tools/maths/projection.d.ts +2 -0
  324. package/declaration/src/tools/maths/scalar.d.ts +8 -0
  325. package/declaration/src/tools/mesh/augmentations.d.ts +7 -0
  326. package/declaration/src/tools/mesh/collision.d.ts +7 -0
  327. package/declaration/src/tools/mesh/ground.d.ts +10 -0
  328. package/declaration/src/tools/mesh/instance.d.ts +3 -0
  329. package/declaration/src/tools/node/clone.d.ts +10 -0
  330. package/declaration/src/tools/node/metadata.d.ts +55 -0
  331. package/declaration/src/tools/node-pty.d.ts +43 -0
  332. package/declaration/src/tools/observables.d.ts +41 -0
  333. package/declaration/src/tools/os.d.ts +10 -0
  334. package/declaration/src/tools/particles/augmentations.d.ts +16 -0
  335. package/declaration/src/tools/particles/extract.d.ts +9 -0
  336. package/declaration/src/tools/particles/texture.d.ts +8 -0
  337. package/declaration/src/tools/physics/init.d.ts +5 -0
  338. package/declaration/src/tools/physics/serialization/aggregate.d.ts +33 -0
  339. package/declaration/src/tools/physics/shape.d.ts +7 -0
  340. package/declaration/src/tools/plugins/require.d.ts +7 -0
  341. package/declaration/src/tools/plugins/watch.d.ts +5 -0
  342. package/declaration/src/tools/process.d.ts +36 -0
  343. package/declaration/src/tools/project.d.ts +27 -0
  344. package/declaration/src/tools/property.d.ts +15 -0
  345. package/declaration/src/tools/recast/init.d.ts +2 -0
  346. package/declaration/src/tools/scene/materials.d.ts +7 -0
  347. package/declaration/src/tools/scene/play/compile.d.ts +4 -0
  348. package/declaration/src/tools/scene/play/override.d.ts +7 -0
  349. package/declaration/src/tools/scene/rename.d.ts +7 -0
  350. package/declaration/src/tools/scene/scene-link.d.ts +17 -0
  351. package/declaration/src/tools/scene/screenshot.d.ts +11 -0
  352. package/declaration/src/tools/sound/augmentations.d.ts +7 -0
  353. package/declaration/src/tools/sound/tools.d.ts +15 -0
  354. package/declaration/src/tools/sprite/augmentations.d.ts +8 -0
  355. package/declaration/src/tools/sprite/preview.d.ts +6 -0
  356. package/declaration/src/tools/sprite/tools.d.ts +4 -0
  357. package/declaration/src/tools/tools.d.ts +55 -0
  358. package/declaration/src/tools/undoredo.d.ts +24 -0
  359. package/declaration/src/tools/worker.d.ts +17 -0
  360. package/declaration/src/tools/workers/md5.d.ts +2 -0
  361. package/declaration/src/tools/workers/script.d.ts +9 -0
  362. package/declaration/src/tools/workers/thumbnail/main.d.ts +2 -0
  363. package/declaration/src/tools/workers/thumbnail/material.d.ts +2 -0
  364. package/declaration/src/tools/workers/thumbnail/mesh.d.ts +2 -0
  365. package/declaration/src/ui/color-picker.d.ts +15 -0
  366. package/declaration/src/ui/dialog.d.ts +13 -0
  367. package/declaration/src/ui/scene-asset-browser.d.ts +88 -0
  368. package/declaration/src/ui/shadcn/ui/alert-dialog.d.ts +20 -0
  369. package/declaration/src/ui/shadcn/ui/badge.d.ts +9 -0
  370. package/declaration/src/ui/shadcn/ui/breadcrumb.d.ts +19 -0
  371. package/declaration/src/ui/shadcn/ui/button.d.ts +11 -0
  372. package/declaration/src/ui/shadcn/ui/checkbox.d.ts +4 -0
  373. package/declaration/src/ui/shadcn/ui/command.d.ts +82 -0
  374. package/declaration/src/ui/shadcn/ui/context-menu.d.ts +27 -0
  375. package/declaration/src/ui/shadcn/ui/dialog.d.ts +19 -0
  376. package/declaration/src/ui/shadcn/ui/dropdown-menu.d.ts +27 -0
  377. package/declaration/src/ui/shadcn/ui/hover-card.d.ts +6 -0
  378. package/declaration/src/ui/shadcn/ui/input.d.ts +5 -0
  379. package/declaration/src/ui/shadcn/ui/label.d.ts +5 -0
  380. package/declaration/src/ui/shadcn/ui/menubar.d.ts +31 -0
  381. package/declaration/src/ui/shadcn/ui/popover.d.ts +7 -0
  382. package/declaration/src/ui/shadcn/ui/progress.d.ts +4 -0
  383. package/declaration/src/ui/shadcn/ui/radio-group.d.ts +5 -0
  384. package/declaration/src/ui/shadcn/ui/resizable.d.ts +23 -0
  385. package/declaration/src/ui/shadcn/ui/select.d.ts +13 -0
  386. package/declaration/src/ui/shadcn/ui/separator.d.ts +4 -0
  387. package/declaration/src/ui/shadcn/ui/slider.d.ts +4 -0
  388. package/declaration/src/ui/shadcn/ui/sonner.d.ts +4 -0
  389. package/declaration/src/ui/shadcn/ui/switch.d.ts +4 -0
  390. package/declaration/src/ui/shadcn/ui/table.d.ts +10 -0
  391. package/declaration/src/ui/shadcn/ui/tabs.d.ts +7 -0
  392. package/declaration/src/ui/shadcn/ui/textarea.d.ts +3 -0
  393. package/declaration/src/ui/shadcn/ui/toggle-group.d.ts +12 -0
  394. package/declaration/src/ui/shadcn/ui/toggle.d.ts +12 -0
  395. package/declaration/src/ui/shadcn/ui/toolbar-radio-group.d.ts +5 -0
  396. package/declaration/src/ui/shadcn/ui/tooltip.d.ts +7 -0
  397. package/declaration/src/ui/spinner.d.ts +2 -0
  398. package/declaration/src/ui/toolbar.d.ts +4 -0
  399. package/declaration/src/ui/utils.d.ts +2 -0
  400. package/package.json +122 -38
  401. package/index.d.ts +0 -6106
@@ -0,0 +1,16 @@
1
+ import { Component, ReactNode } from "react";
2
+ import { AbstractMesh, TransformNode } from "babylonjs";
3
+ import { IEditorInspectorImplementationProps } from "./inspector";
4
+ export declare class EditorTransformNodeInspector extends Component<IEditorInspectorImplementationProps<AbstractMesh>> {
5
+ /**
6
+ * Returns whether or not the given object is supported by this inspector.
7
+ * @param object defines the object to check.
8
+ * @returns true if the object is supported by this inspector.
9
+ */
10
+ static IsSupported(object: unknown): boolean;
11
+ render(): ReactNode;
12
+ private _gizmoObserver;
13
+ componentDidMount(): void;
14
+ componentWillUnmount(): void;
15
+ static GetRotationInspector(object: TransformNode, onFinishChange?: () => void): ReactNode;
16
+ }
@@ -0,0 +1,24 @@
1
+ import { Component, ReactNode } from "react";
2
+ import { Editor } from "../main";
3
+ export interface IEditorInspectorProps {
4
+ /**
5
+ * The editor reference.
6
+ */
7
+ editor: Editor;
8
+ }
9
+ export interface IEditorInspectorState {
10
+ search: string;
11
+ editedObject: unknown | null;
12
+ }
13
+ export declare class EditorInspector extends Component<IEditorInspectorProps, IEditorInspectorState> {
14
+ private static _inspectors;
15
+ constructor(props: IEditorInspectorProps);
16
+ render(): ReactNode;
17
+ /**
18
+ * Sets the edited object.
19
+ * @param editedObject defines the edited object.
20
+ */
21
+ setEditedObject(editedObject: unknown): void;
22
+ private _getContent;
23
+ private _handleSearchChanged;
24
+ }
@@ -0,0 +1,10 @@
1
+ import { AbstractMesh, Scene } from "babylonjs";
2
+ import { INavMeshObstacleConfiguration, INavMeshStaticMeshConfiguration } from "../types";
3
+ export interface INavMeshEditorListComponentProps<T> {
4
+ scene: Scene;
5
+ search: string;
6
+ items: T[];
7
+ onCreateItem: (mesh: AbstractMesh) => T;
8
+ onItemsChange: (items: T[], updateNavMesh: boolean) => void;
9
+ }
10
+ export declare function NavMeshEditorListComponent<T extends INavMeshStaticMeshConfiguration | INavMeshObstacleConfiguration>(props: INavMeshEditorListComponentProps<T>): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,5 @@
1
+ export interface INavMeshEditorSearchComponentProps {
2
+ search: string;
3
+ setSearch: (value: string) => void;
4
+ }
5
+ export declare function NavMeshEditorSearchComponent(props: INavMeshEditorSearchComponentProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,34 @@
1
+ import { Component, ReactNode } from "react";
2
+ import { CreateNavMeshResult } from "babylonjs-addons/navigation/types";
3
+ import { RecastNavigationJSPluginV2 } from "babylonjs-addons";
4
+ import { Editor } from "../../main";
5
+ import { INavMeshConfiguration } from "./types";
6
+ export interface INavmeshEditorProps {
7
+ editor: Editor;
8
+ configuration: INavMeshConfiguration;
9
+ absolutePath: string;
10
+ }
11
+ export interface INavmeshEditorState {
12
+ initializing: boolean;
13
+ }
14
+ export declare class NavMeshEditor extends Component<INavmeshEditorProps, INavmeshEditorState> {
15
+ configuration: INavMeshConfiguration;
16
+ plugin: RecastNavigationJSPluginV2;
17
+ result: CreateNavMeshResult | null;
18
+ private _debugNavMesh;
19
+ private _debugObstacles;
20
+ constructor(props: INavmeshEditorProps);
21
+ render(): ReactNode;
22
+ componentDidMount(): Promise<void>;
23
+ componentWillUnmount(): void;
24
+ refreshAll(): Promise<void>;
25
+ updateNavMesh(): Promise<void>;
26
+ createDebugObstacles(): Promise<void>;
27
+ private _disposeDebugObstacles;
28
+ save(): Promise<void>;
29
+ private _createPlugin;
30
+ private _disposePlugin;
31
+ private _createDebugNavMesh;
32
+ private _disposeDebugNavMesh;
33
+ private _getLoadingScreen;
34
+ }
@@ -0,0 +1,7 @@
1
+ import { Editor } from "../../main";
2
+ import { NavMeshEditor } from "./editor";
3
+ export interface INavMeshEditorInspectorProps {
4
+ editor: Editor;
5
+ navMeshEditor: NavMeshEditor;
6
+ }
7
+ export declare function NavMeshEditorInspector(props: INavMeshEditorInspectorProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,7 @@
1
+ import { Editor } from "../../main";
2
+ import { NavMeshEditor } from "./editor";
3
+ export interface INavMeshEditorMeshesListProps {
4
+ editor: Editor;
5
+ navMeshEditor: NavMeshEditor;
6
+ }
7
+ export declare function NavMeshEditorMeshesList(props: INavMeshEditorMeshesListProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,7 @@
1
+ import { Editor } from "../../main";
2
+ import { NavMeshEditor } from "./editor";
3
+ export interface INavMeshEditorObstaclesProps {
4
+ editor: Editor;
5
+ navMeshEditor: NavMeshEditor;
6
+ }
7
+ export declare function NavMeshEditorObstacles(props: INavMeshEditorObstaclesProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,5 @@
1
+ import { NavMeshEditor } from "./editor";
2
+ export interface INavMeshEditorToolbarProps {
3
+ navMeshEditor: NavMeshEditor;
4
+ }
5
+ export declare function NavMeshEditorToolbar(props: INavMeshEditorToolbarProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,10 @@
1
+ import { Scene, AbstractMesh } from "babylonjs";
2
+ import { INavMeshObstacleConfiguration, INavMeshStaticMeshConfiguration } from "./types";
3
+ export declare function getStaticMeshes(scene: Scene, configurations: INavMeshStaticMeshConfiguration[]): {
4
+ clonedMeshes: AbstractMesh[];
5
+ effectiveStaticMeshes: import("babylonjs").Mesh[];
6
+ };
7
+ export declare function getObstacleMeshes(scene: Scene, configurations: INavMeshObstacleConfiguration[]): {
8
+ clone: import("babylonjs").Mesh;
9
+ config: INavMeshObstacleConfiguration;
10
+ }[];
@@ -0,0 +1,20 @@
1
+ import { INavMeshParametersV2 } from "babylonjs-addons/navigation/types";
2
+ export interface INavMeshConfiguration {
3
+ navMeshParameters: INavMeshParametersV2;
4
+ staticMeshes: INavMeshStaticMeshConfiguration[];
5
+ obstacleMeshes: INavMeshObstacleConfiguration[];
6
+ }
7
+ export interface INavMeshStaticMeshConfiguration {
8
+ id: string;
9
+ enabled: boolean;
10
+ }
11
+ export interface INavMeshObstacleConfiguration {
12
+ id: string;
13
+ enabled: boolean;
14
+ type: "box" | "cylinder";
15
+ position?: number[];
16
+ extent?: number[];
17
+ angle?: number;
18
+ radius?: number;
19
+ height?: number;
20
+ }
@@ -0,0 +1,30 @@
1
+ import { Component, ReactNode } from "react";
2
+ import { Scene, AbstractMesh, Vector2 } from "babylonjs";
3
+ import { Editor } from "../../main";
4
+ export interface IEditorPreviewAxisHelperProps {
5
+ editor: Editor;
6
+ }
7
+ export interface IEditorPreviewAxisHelperState {
8
+ xLabelPosition: Vector2;
9
+ yLabelPosition: Vector2;
10
+ zLabelPosition: Vector2;
11
+ }
12
+ export declare class EditorPreviewAxisHelper extends Component<IEditorPreviewAxisHelperProps, IEditorPreviewAxisHelperState> {
13
+ scene: Scene | null;
14
+ /** @internal */
15
+ _axisMeshUnderPointer: AbstractMesh | null;
16
+ private _axisClickableMeshes;
17
+ constructor(props: IEditorPreviewAxisHelperProps);
18
+ render(): ReactNode;
19
+ componentWillUnmount(): void;
20
+ /**
21
+ * Gets wether or not icons are enabled.
22
+ */
23
+ get enabled(): boolean;
24
+ stop(): Promise<void>;
25
+ start(): Promise<void>;
26
+ private _checkAxisUnderPointer;
27
+ private _handlePointerTap;
28
+ private _createAxis;
29
+ private _createNegativeAlphaSphere;
30
+ }
@@ -0,0 +1,8 @@
1
+ import { Camera } from "babylonjs";
2
+ import { Editor } from "../../main";
3
+ export interface IEditorPreviewCameraProps {
4
+ editor: Editor;
5
+ camera: Camera;
6
+ hidden?: boolean;
7
+ }
8
+ export declare function EditorPreviewCamera(props: IEditorPreviewCameraProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,45 @@
1
+ import { GizmoCoordinatesMode, Node, Observable, PositionGizmo, RotationGizmo, ScaleGizmo, Scene, UtilityLayerRenderer, Sprite } from "babylonjs";
2
+ export declare const onGizmoNodeChangedObservable: Observable<Node | Sprite>;
3
+ export declare class EditorPreviewGizmo {
4
+ /**
5
+ * @internal
6
+ */
7
+ _gizmosLayer: UtilityLayerRenderer;
8
+ private _scalingGizmo;
9
+ private _positionGizmo;
10
+ private _rotationGizmo;
11
+ private _coordinatesMode;
12
+ private _cameraGizmo;
13
+ private _attachedNode;
14
+ private _attachedSprite;
15
+ private _spriteTransformNode;
16
+ constructor(scene: Scene);
17
+ /**
18
+ * Gets the current gizmo.
19
+ */
20
+ get currentGizmo(): PositionGizmo | RotationGizmo | ScaleGizmo | null;
21
+ /**
22
+ * Sets the gizmo type.
23
+ * @param gizmo The gizmo to set.
24
+ */
25
+ setGizmoType(gizmo: "position" | "rotation" | "scaling" | "none"): void;
26
+ /**
27
+ * Gets the reference to the node that is attached and controlled by the gizmo.
28
+ */
29
+ get attachedNode(): Node | null;
30
+ /**
31
+ * Gets the reference to the sprite that is attached and controlled by the gizmo.
32
+ */
33
+ get attachedSprite(): Sprite | null;
34
+ /**
35
+ * Sets the node that is attached and controlled by the gizmo.
36
+ * @param object The node to attach to the gizmo.
37
+ */
38
+ setAttachedObject(object: Node | Sprite | null): void;
39
+ getCoordinateMode(): GizmoCoordinatesMode;
40
+ setCoordinatesMode(mode: GizmoCoordinatesMode): void;
41
+ getCoordinatesModeString(): string;
42
+ private _updateShadowMapsForMesh;
43
+ private _attachVector3UndoRedoEvents;
44
+ private _attachRotationUndoRedoEvents;
45
+ }
@@ -0,0 +1,35 @@
1
+ import { Component, ReactNode } from "react";
2
+ import { Node, Vector2, Sound } from "babylonjs";
3
+ import { Editor } from "../../main";
4
+ export interface IEditorPreviewIconsProps {
5
+ editor: Editor;
6
+ }
7
+ export interface IEditorPreviewIconsState {
8
+ buttons: _IButtonData[];
9
+ }
10
+ interface _IButtonData {
11
+ position: Vector2;
12
+ node: Node | Sound;
13
+ }
14
+ export declare class EditorPreviewIcons extends Component<IEditorPreviewIconsProps, IEditorPreviewIconsState> {
15
+ private _tempMesh;
16
+ private _renderFunction;
17
+ constructor(props: IEditorPreviewIconsProps);
18
+ render(): ReactNode;
19
+ componentWillUnmount(): void;
20
+ /**
21
+ * Gets wether or not icons are enabled.
22
+ */
23
+ get enabled(): boolean;
24
+ /**
25
+ * Starts rendering icons on the preview scene.
26
+ */
27
+ start(): void;
28
+ private _isInFrustrum;
29
+ /**
30
+ * Stops rendering icons on the preview scene.
31
+ */
32
+ stop(): void;
33
+ private _getIcon;
34
+ }
35
+ export {};
@@ -0,0 +1,8 @@
1
+ import { AdvancedDynamicTexture } from "babylonjs-gui";
2
+ import { Editor } from "../../../main";
3
+ /**
4
+ * Imports the GUI file located at the given absolute path and adds it to the scene.
5
+ * @param editor defines the reference to the editor.
6
+ * @param absolutePath defines the absolute path to the GUI file to import.
7
+ */
8
+ export declare function applyImportedGuiFile(editor: Editor, absolutePath: string): Promise<AdvancedDynamicTexture | undefined>;
@@ -0,0 +1,9 @@
1
+ import { CubeTexture, ISceneLoaderAsyncResult, Material, Node, Scene, Texture, ColorGradingTexture, Sprite, IParticleSystem } from "babylonjs";
2
+ export declare function tryConvertSceneFile(absolutePath: string, progress?: (percent: number) => void): Promise<string>;
3
+ export declare function loadImportedSceneFile(scene: Scene, absolutePath: string): Promise<ISceneLoaderAsyncResult | null>;
4
+ export declare function configureImportedNodeIds(node: Node | Sprite | IParticleSystem): void;
5
+ export declare function configureImportedMaterial(material: Material): void;
6
+ export declare function configureImportedTexture<T extends Texture | CubeTexture | ColorGradingTexture>(texture: T, noCheckInvertY?: boolean): T;
7
+ export declare function configureEmbeddedTexture(texture: Texture, absolutePath: string): Promise<unknown>;
8
+ export declare function loadImportedMaterial(scene: Scene, absolutePath: string): Promise<Material | null>;
9
+ export declare function cleanImportedGltf(result: ISceneLoaderAsyncResult): void;
@@ -0,0 +1,16 @@
1
+ import { Material } from "babylonjs";
2
+ import { Editor } from "../../../main";
3
+ /**
4
+ * Applies the material asset located at the given absolute path to the given object.
5
+ * @param editor defines the reference to the editor.
6
+ * @param object defines the reference to the object where to apply the material. The type of the object is tested to be an AbstractMesh.
7
+ * @param absolutePath defines the absolute path to the .material asset file.
8
+ */
9
+ export declare function applyMaterialAssetToObject(editor: Editor, object: any, absolutePath: string): void;
10
+ /**
11
+ * Applies the given material to the given object.
12
+ * @param editor defines the reference to the editor.
13
+ * @param object defines the reference to the object where to apply the material. The type of the object is tested to be an AbstractMesh.
14
+ * @param material defines the reference to the material instance to apply on the object.
15
+ */
16
+ export declare function applyMaterialToObject(editor: Editor, object: any, material: Material): void;
@@ -0,0 +1,2 @@
1
+ import { Scene, ParticleSystemSet, AbstractMesh } from "babylonjs";
2
+ export declare function loadImportedParticleSystemFile(scene: Scene, targetMesh: AbstractMesh, absolutePath: string): Promise<ParticleSystemSet | null>;
@@ -0,0 +1,11 @@
1
+ import { Component, ReactNode } from "react";
2
+ export interface IEditorPreviewConvertProgressProps {
3
+ absolutePath: string;
4
+ }
5
+ export interface IEditorPreviewConvertProgressState {
6
+ value: number;
7
+ }
8
+ export declare class EditorPreviewConvertProgress extends Component<IEditorPreviewConvertProgressProps, IEditorPreviewConvertProgressState> {
9
+ constructor(props: IEditorPreviewConvertProgressProps);
10
+ render(): ReactNode;
11
+ }
@@ -0,0 +1,2 @@
1
+ import { Editor } from "../../../main";
2
+ export declare function applySoundAsset(editor: Editor, object: any, absolutePath: string): Promise<import("../../../../ui/dialog").DialogReturnType | undefined>;
@@ -0,0 +1,17 @@
1
+ import { CubeTexture, Texture, ColorGradingTexture } from "babylonjs";
2
+ import { Editor } from "../../../main";
3
+ /**
4
+ * Applies the texture asset located at the given absolute path to the given object.
5
+ * @param editor defines the reference to the editor.
6
+ * @param object defines the reference to the object where to apply the texture. The type of the object is tested.
7
+ * @param absolutePath defines the absolute path to the texture asset file (.png, .env, .jpg, etc.).
8
+ */
9
+ export declare function applyTextureAssetToObject(editor: Editor, object: any, absolutePath: string): void;
10
+ /**
11
+ * Applies the given texture to the given object. Tries to determine the correct slot to apply the texture.
12
+ * If fails, asks to choose the slot (albedo, bump, etc.).
13
+ * @param editor defines the reference to the editor.
14
+ * @param object defines the reference to the object where to apply the texture. The type of the object is tested.
15
+ * @param texture defines the reference to the texture instance to apply on the object.
16
+ */
17
+ export declare function applyTextureToObject(editor: Editor, object: any, texture: Texture | CubeTexture | ColorGradingTexture): void;
@@ -0,0 +1,92 @@
1
+ import { Component, ReactNode } from "react";
2
+ import { Scene } from "babylonjs";
3
+ import { Editor } from "../../main";
4
+ export interface IEditorPreviewPlayComponentProps {
5
+ /**
6
+ * The editor reference.
7
+ */
8
+ editor: Editor;
9
+ /**
10
+ * Defines wether or not the play button is enabled in the preview.
11
+ */
12
+ enabled: boolean;
13
+ /**
14
+ * Called on the user wants to restart the game / application (aka. refresh the page of the game / application).
15
+ */
16
+ onRestart: () => void;
17
+ }
18
+ export interface IEditorPreviewPlayComponentState {
19
+ /**
20
+ * Defines wether or not the player is being prepared.
21
+ */
22
+ preparingPlay: boolean;
23
+ /**
24
+ * Defines wether or not the game / application is currently loading.
25
+ */
26
+ loading: boolean;
27
+ /**
28
+ * Defines wether or not the game / application is playing in the editor.
29
+ */
30
+ playing: boolean;
31
+ }
32
+ export declare class EditorPreviewPlayComponent extends Component<IEditorPreviewPlayComponentProps, IEditorPreviewPlayComponentState> {
33
+ /**
34
+ * Defines the reference to the scene that is reserved for the game / application when playing.
35
+ * This scene is used to be renderer directly in the preview panel of the editor and is disposed when the
36
+ * game / application is stopped.
37
+ */
38
+ scene: Scene | null;
39
+ private _srcWatcher;
40
+ private _temporaryDirectory;
41
+ private _compiledScriptExports;
42
+ constructor(props: IEditorPreviewPlayComponentProps);
43
+ render(): ReactNode;
44
+ componentDidMount(): void;
45
+ triggerPlayScene(): void;
46
+ componentDidUpdate(_: Readonly<IEditorPreviewPlayComponentProps>, prevState: Readonly<IEditorPreviewPlayComponentState>): void;
47
+ /**
48
+ * Gets wether or not everything is ready to play the current scene of the game / application.
49
+ */
50
+ get canPlayScene(): boolean;
51
+ /**
52
+ * Sets the game / application to play or stop.
53
+ * If the game / application is not playing, it will start it.
54
+ * If the game / application is playing, it will stop it.
55
+ */
56
+ playOrStopApplication(): Promise<void>;
57
+ /**
58
+ * Restarts the game / application.
59
+ * This will just clean the current scene instance (event receivers, etc.) and reload the same scene.
60
+ */
61
+ restart(): Promise<void>;
62
+ /**
63
+ * Stops the game / application.
64
+ * It will dispose the scene and reset the state.
65
+ */
66
+ stop(): void;
67
+ /**
68
+ * Starts the game / application.
69
+ * The play process consists on:
70
+ * - the exporting the final scene without optimizations (to save export time)
71
+ * - compiling the scripts map using esbuild (located at projectAbsoluteDir/src/scripts.ts)
72
+ * - store the output of esbuild and put it in the temporary directory of the project (.bjseditor folder)
73
+ * - require the compiled script and use babylonjs-editor-tools to render the scene.
74
+ */
75
+ play(noExportScene?: boolean, noCompile?: boolean): Promise<void>;
76
+ /**
77
+ * The script that is required and executed is a bundled version of the "src/scripts.ts" file.
78
+ * Here we use esbuild to bundle the scripts and transform the imports to use the correct paths.
79
+ * @see compilePlayScript for more information.
80
+ */
81
+ private _compileScripts;
82
+ private _createAndLoadScene;
83
+ private _requireCompiledScripts;
84
+ /**
85
+ * Watches all the src directory of the project to detect changes in the scripts.
86
+ * If a change is detected, it will restart the game / application.
87
+ * TODO: change only those one that changed.
88
+ */
89
+ private _watchSrcDirectory;
90
+ private _closeWatchSrcDirectory;
91
+ hotReloadScript(scriptKey: string, compile: boolean): void;
92
+ }
@@ -0,0 +1,5 @@
1
+ export interface IStatRowProps {
2
+ label: string;
3
+ value?: number;
4
+ }
5
+ export declare function StatRow(props: IStatRowProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,17 @@
1
+ import { Observable } from "babylonjs";
2
+ import { Editor } from "../../../main";
3
+ import { StatsValuesType } from "./types";
4
+ export declare class Stats {
5
+ /**
6
+ * Defines the observable called when the stats values have been updated.
7
+ */
8
+ onValuesChangedObservable: Observable<StatsValuesType>;
9
+ private _editor;
10
+ private _intervalId;
11
+ private _values;
12
+ private _engineInstrumentation;
13
+ private _sceneInstrumentation;
14
+ constructor(editor: Editor);
15
+ dispose(): void;
16
+ private _computeStats;
17
+ }
@@ -0,0 +1,28 @@
1
+ export type StatsValuesType = {
2
+ averageFPS?: number;
3
+ instantaneousFPS?: number;
4
+ averageFrameTime?: number;
5
+ instantaneousFrameTime?: number;
6
+ activeFaces?: number;
7
+ activeIndices?: number;
8
+ activeBones?: number;
9
+ activeParticles?: number;
10
+ activeMeshes?: number;
11
+ drawCalls?: number;
12
+ totalVertices?: number;
13
+ totalMeshes?: number;
14
+ totalMaterials?: number;
15
+ totalTextures?: number;
16
+ totalLights?: number;
17
+ gpuFrameTime?: number;
18
+ gpuFrameTimeAvarage?: number;
19
+ absoluteFPS?: number;
20
+ render?: number;
21
+ frameTotal?: number;
22
+ interFrame?: number;
23
+ meshSelection?: number;
24
+ renderTargets?: number;
25
+ animations?: number;
26
+ particles?: number;
27
+ physics?: number;
28
+ };
@@ -0,0 +1,140 @@
1
+ import { Component, ReactNode } from "react";
2
+ import { AbstractEngine, Camera, ISceneLoaderAsyncResult, Scene } from "babylonjs";
3
+ import { Editor } from "../main";
4
+ import { EditorCamera } from "../nodes/camera";
5
+ import { EditorPreviewGizmo } from "./preview/gizmo";
6
+ import { EditorPreviewIcons } from "./preview/icons";
7
+ import { EditorPreviewAxisHelper } from "./preview/axis";
8
+ import { EditorPreviewPlayComponent } from "./preview/play";
9
+ import { Stats } from "./preview/stats/stats";
10
+ import { StatsValuesType } from "./preview/stats/types";
11
+ export interface IEditorPreviewProps {
12
+ /**
13
+ * The editor reference.
14
+ */
15
+ editor: Editor;
16
+ }
17
+ export interface IEditorPreviewState {
18
+ /**
19
+ * Defines the information message drawn over the preview to tell the user what is happening.
20
+ */
21
+ informationMessage: ReactNode;
22
+ isFocused: boolean;
23
+ rightClickedObject?: any;
24
+ pickingEnabled: boolean;
25
+ showStatsValues: boolean;
26
+ statsValues?: StatsValuesType;
27
+ playEnabled: boolean;
28
+ playSceneLoadingProgress: number;
29
+ activeGizmo: "position" | "rotation" | "scaling" | "none";
30
+ /**
31
+ * Defines the fixed dimensions of the preview canvas.
32
+ * "fit" means the canvas will fit the entire panel container.
33
+ */
34
+ fixedDimensions: "720p" | "1080p" | "4k" | "fit";
35
+ }
36
+ export declare class EditorPreview extends Component<IEditorPreviewProps, IEditorPreviewState> {
37
+ /**
38
+ * The engine of the preview.
39
+ */
40
+ engine: AbstractEngine;
41
+ /**
42
+ * The scene of the preview.
43
+ */
44
+ scene: Scene;
45
+ /**
46
+ * The camera of the preview.
47
+ */
48
+ camera: EditorCamera;
49
+ /**
50
+ * The gizmo manager of the preview
51
+ */
52
+ gizmo: EditorPreviewGizmo;
53
+ /**
54
+ * The helper drawn over the scene to help visualizing and selecting nodes like lights, cameras, particle systems, etc.
55
+ */
56
+ icons: EditorPreviewIcons;
57
+ /**
58
+ * The helper drawn over the scene to help visualizing the axis according to the current camera view.
59
+ */
60
+ axis: EditorPreviewAxisHelper;
61
+ /**
62
+ * The play component of the preview.
63
+ */
64
+ play: EditorPreviewPlayComponent;
65
+ /**
66
+ * The current statistics of the preview.
67
+ * This is used to display the FPS and other values.
68
+ */
69
+ statistics: Stats;
70
+ /**
71
+ * Defines the reference to the canvas drawn in the preview.
72
+ */
73
+ canvas: HTMLCanvasElement | null;
74
+ private _renderScene;
75
+ private _mouseDownPosition;
76
+ private _objectUnderPointer;
77
+ private _workingCanvas;
78
+ private _mainView;
79
+ /** @internal */
80
+ _previewCamera: Camera | null;
81
+ constructor(props: IEditorPreviewProps);
82
+ render(): ReactNode;
83
+ /**
84
+ * Sets whether or not to render the scene.
85
+ * @param render defines whether or not to render the scene.
86
+ */
87
+ setRenderScene(render: boolean): void;
88
+ /**
89
+ * Resizes the engine.
90
+ */
91
+ resize(): void;
92
+ /**
93
+ * Resets the preview component by re-creating the engine and an empty scene.
94
+ */
95
+ reset(): Promise<void>;
96
+ /**
97
+ * Sets the fixed dimensions of the renderer. This is particularly useful to test the rendering
98
+ * performances and the aspect ratio of the scene in case it'll be renderer in fullscreen.
99
+ */
100
+ setFixedDimensions(fixedDimensions: "720p" | "1080p" | "4k" | "fit"): void;
101
+ /**
102
+ * Tries to focused the given object or the first one selected in the graph.
103
+ */
104
+ focusObject(object?: any): void;
105
+ /**
106
+ * Sets the given camera active as a preview.
107
+ * This helps to visualize what the selected camera sees when being manipulated
108
+ * using gizmos for example.
109
+ * When "null", the preview is removed.
110
+ * @param camera the camera to activate the preview
111
+ */
112
+ setCameraPreviewActive(camera: Camera | null): void;
113
+ private _onGotIconsRef;
114
+ private _onGotCanvasRef;
115
+ private _createWebgpuEngine;
116
+ /** @internal */
117
+ _handleMouseLeave(): void;
118
+ private _mouseMoveTimeoutId;
119
+ private _handleMouseMove;
120
+ private _handleMouseDown;
121
+ private _handleDoubleClick;
122
+ private _handleMouseUp;
123
+ private _getPickingInfo;
124
+ private _resetPointerContextInfo;
125
+ private _highlightCurrentMeshUnderPointer;
126
+ private _restoreCurrentMeshUnderPointer;
127
+ private _getToolbar;
128
+ private _getEditToolbar;
129
+ private _switchToCamera;
130
+ /**
131
+ * Sets the currently active gizmo. Set "none" to deactivate the gizmo.
132
+ * @param gizmo defines the type of gizmo to activate.
133
+ */
134
+ setActiveGizmo(gizmo: "position" | "rotation" | "scaling" | "none"): void;
135
+ importSceneFile(absolutePath: string, useCloudConverter: boolean): Promise<ISceneLoaderAsyncResult | null>;
136
+ private _handleDrop;
137
+ private _handleGraphNodesDropped;
138
+ private _handleSpritesDropped;
139
+ private _handleAssetsDropped;
140
+ }