@fps-games/editor 0.1.5-beta.5 → 0.1.7-beta.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 (469) hide show
  1. package/dist/agent-bridge/capabilities/assets.d.ts +8 -0
  2. package/dist/agent-bridge/capabilities/assets.d.ts.map +1 -0
  3. package/dist/agent-bridge/capabilities/assets.js +226 -0
  4. package/dist/agent-bridge/capabilities/assets.js.map +1 -0
  5. package/dist/agent-bridge/capabilities/editor-state.d.ts +5 -0
  6. package/dist/agent-bridge/capabilities/editor-state.d.ts.map +1 -0
  7. package/dist/agent-bridge/capabilities/editor-state.js +72 -0
  8. package/dist/agent-bridge/capabilities/editor-state.js.map +1 -0
  9. package/dist/agent-bridge/capabilities/host-lifecycle.d.ts +4 -0
  10. package/dist/agent-bridge/capabilities/host-lifecycle.d.ts.map +1 -0
  11. package/dist/agent-bridge/capabilities/host-lifecycle.js +87 -0
  12. package/dist/agent-bridge/capabilities/host-lifecycle.js.map +1 -0
  13. package/dist/agent-bridge/capabilities/prefabs.d.ts +5 -0
  14. package/dist/agent-bridge/capabilities/prefabs.d.ts.map +1 -0
  15. package/dist/agent-bridge/capabilities/prefabs.js +735 -0
  16. package/dist/agent-bridge/capabilities/prefabs.js.map +1 -0
  17. package/dist/agent-bridge/capabilities/scene-objects.d.ts +9 -0
  18. package/dist/agent-bridge/capabilities/scene-objects.d.ts.map +1 -0
  19. package/dist/agent-bridge/capabilities/scene-objects.js +394 -0
  20. package/dist/agent-bridge/capabilities/scene-objects.js.map +1 -0
  21. package/dist/agent-bridge/capabilities/selection.d.ts +5 -0
  22. package/dist/agent-bridge/capabilities/selection.d.ts.map +1 -0
  23. package/dist/agent-bridge/capabilities/selection.js +57 -0
  24. package/dist/agent-bridge/capabilities/selection.js.map +1 -0
  25. package/dist/agent-bridge/capabilities/shadows.d.ts +5 -0
  26. package/dist/agent-bridge/capabilities/shadows.d.ts.map +1 -0
  27. package/dist/agent-bridge/capabilities/shadows.js +1876 -0
  28. package/dist/agent-bridge/capabilities/shadows.js.map +1 -0
  29. package/dist/agent-bridge/capabilities/transform.d.ts +5 -0
  30. package/dist/agent-bridge/capabilities/transform.d.ts.map +1 -0
  31. package/dist/agent-bridge/capabilities/transform.js +162 -0
  32. package/dist/agent-bridge/capabilities/transform.js.map +1 -0
  33. package/dist/agent-bridge/capabilities/ui-regions.d.ts +4 -0
  34. package/dist/agent-bridge/capabilities/ui-regions.d.ts.map +1 -0
  35. package/dist/agent-bridge/capabilities/ui-regions.js +168 -0
  36. package/dist/agent-bridge/capabilities/ui-regions.js.map +1 -0
  37. package/dist/agent-bridge/capabilities/viewport.d.ts +5 -0
  38. package/dist/agent-bridge/capabilities/viewport.d.ts.map +1 -0
  39. package/dist/agent-bridge/capabilities/viewport.js +407 -0
  40. package/dist/agent-bridge/capabilities/viewport.js.map +1 -0
  41. package/dist/agent-bridge/capability-sources.d.ts +6 -0
  42. package/dist/agent-bridge/capability-sources.d.ts.map +1 -0
  43. package/dist/agent-bridge/capability-sources.js +26 -0
  44. package/dist/agent-bridge/capability-sources.js.map +1 -0
  45. package/dist/agent-bridge/diagnostics.d.ts +12 -0
  46. package/dist/agent-bridge/diagnostics.d.ts.map +1 -0
  47. package/dist/agent-bridge/diagnostics.js +45 -0
  48. package/dist/agent-bridge/diagnostics.js.map +1 -0
  49. package/dist/agent-bridge/index.d.ts +5 -0
  50. package/dist/agent-bridge/index.d.ts.map +1 -0
  51. package/dist/agent-bridge/index.js +5 -0
  52. package/dist/agent-bridge/index.js.map +1 -0
  53. package/dist/agent-bridge/register.d.ts +4 -0
  54. package/dist/agent-bridge/register.d.ts.map +1 -0
  55. package/dist/agent-bridge/register.js +908 -0
  56. package/dist/agent-bridge/register.js.map +1 -0
  57. package/dist/agent-bridge/shared.d.ts +189 -0
  58. package/dist/agent-bridge/shared.d.ts.map +1 -0
  59. package/dist/agent-bridge/shared.js +39 -0
  60. package/dist/agent-bridge/shared.js.map +1 -0
  61. package/dist/agent-bridge/source-types.d.ts +90 -0
  62. package/dist/agent-bridge/source-types.d.ts.map +1 -0
  63. package/dist/agent-bridge/source-types.js +2 -0
  64. package/dist/agent-bridge/source-types.js.map +1 -0
  65. package/dist/build-info.json +17 -17
  66. package/dist/local-editor-agent-actions.d.ts +8 -1
  67. package/dist/local-editor-agent-actions.d.ts.map +1 -1
  68. package/dist/local-editor-agent-actions.js +171 -12
  69. package/dist/local-editor-agent-actions.js.map +1 -1
  70. package/dist/local-editor-agent-bridge-transport.d.ts +95 -0
  71. package/dist/local-editor-agent-bridge-transport.d.ts.map +1 -0
  72. package/dist/local-editor-agent-bridge-transport.js +340 -0
  73. package/dist/local-editor-agent-bridge-transport.js.map +1 -0
  74. package/dist/local-editor-agent-bridge.d.ts +2 -0
  75. package/dist/local-editor-agent-bridge.d.ts.map +1 -0
  76. package/dist/local-editor-agent-bridge.js +2 -0
  77. package/dist/local-editor-agent-bridge.js.map +1 -0
  78. package/dist/local-editor-agent-context.d.ts +29 -1
  79. package/dist/local-editor-agent-context.d.ts.map +1 -1
  80. package/dist/local-editor-agent-context.js +403 -0
  81. package/dist/local-editor-agent-context.js.map +1 -1
  82. package/dist/local-editor-harness.d.ts +128 -6
  83. package/dist/local-editor-harness.d.ts.map +1 -1
  84. package/dist/local-editor-harness.js +2730 -151
  85. package/dist/local-editor-harness.js.map +1 -1
  86. package/dist/local-editor-marker-graph.d.ts +92 -0
  87. package/dist/local-editor-marker-graph.d.ts.map +1 -0
  88. package/dist/local-editor-marker-graph.js +1432 -0
  89. package/dist/local-editor-marker-graph.js.map +1 -0
  90. package/dist/local-editor-performance-stats.js +1 -1
  91. package/dist/local-editor-performance-stats.js.map +1 -1
  92. package/dist/playable-babylon-facade.d.ts +2 -2
  93. package/dist/playable-babylon-facade.d.ts.map +1 -1
  94. package/dist/playable-babylon-facade.js +1 -1
  95. package/dist/playable-babylon-facade.js.map +1 -1
  96. package/dist/playable-babylon-rendering.js +20 -0
  97. package/dist/playable-babylon-rendering.js.map +1 -1
  98. package/dist/playable-local-editor-host.d.ts +57 -7
  99. package/dist/playable-local-editor-host.d.ts.map +1 -1
  100. package/dist/playable-local-editor-host.js +25 -1
  101. package/dist/playable-local-editor-host.js.map +1 -1
  102. package/dist/playable-sdk.d.ts +4 -2
  103. package/dist/playable-sdk.d.ts.map +1 -1
  104. package/dist/playable-sdk.js +2 -1
  105. package/dist/playable-sdk.js.map +1 -1
  106. package/node_modules/@fps-games/babylon-renderer/dist/shadows/blob-shadow-system.d.ts.map +1 -1
  107. package/node_modules/@fps-games/babylon-renderer/dist/shadows/blob-shadow-system.js +6 -4
  108. package/node_modules/@fps-games/babylon-renderer/dist/shadows/blob-shadow-system.js.map +1 -1
  109. package/node_modules/@fps-games/babylon-renderer/dist/shadows/planar-shadow-shaders.d.ts.map +1 -1
  110. package/node_modules/@fps-games/babylon-renderer/dist/shadows/planar-shadow-shaders.js +103 -1
  111. package/node_modules/@fps-games/babylon-renderer/dist/shadows/planar-shadow-shaders.js.map +1 -1
  112. package/node_modules/@fps-games/babylon-renderer/dist/shadows/planar-shadow-system.d.ts.map +1 -1
  113. package/node_modules/@fps-games/babylon-renderer/dist/shadows/planar-shadow-system.js +330 -27
  114. package/node_modules/@fps-games/babylon-renderer/dist/shadows/planar-shadow-system.js.map +1 -1
  115. package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-artifact-system.d.ts.map +1 -1
  116. package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-artifact-system.js +159 -0
  117. package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-artifact-system.js.map +1 -1
  118. package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-baker.js +8 -1
  119. package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-baker.js.map +1 -1
  120. package/node_modules/@fps-games/babylon-renderer/dist/shadows/types.d.ts +53 -2
  121. package/node_modules/@fps-games/babylon-renderer/dist/shadows/types.d.ts.map +1 -1
  122. package/node_modules/@fps-games/babylon-renderer/dist/shadows/types.js +1 -0
  123. package/node_modules/@fps-games/babylon-renderer/dist/shadows/types.js.map +1 -1
  124. package/node_modules/@fps-games/babylon-renderer/package.json +1 -1
  125. package/node_modules/@fps-games/editor-babylon/dist/camera-controller.d.ts.map +1 -1
  126. package/node_modules/@fps-games/editor-babylon/dist/camera-controller.js +11 -0
  127. package/node_modules/@fps-games/editor-babylon/dist/camera-controller.js.map +1 -1
  128. package/node_modules/@fps-games/editor-babylon/dist/editor-sky.d.ts +3 -1
  129. package/node_modules/@fps-games/editor-babylon/dist/editor-sky.d.ts.map +1 -1
  130. package/node_modules/@fps-games/editor-babylon/dist/editor-sky.js +114 -18
  131. package/node_modules/@fps-games/editor-babylon/dist/editor-sky.js.map +1 -1
  132. package/node_modules/@fps-games/editor-babylon/dist/editor-world.d.ts +1 -0
  133. package/node_modules/@fps-games/editor-babylon/dist/editor-world.d.ts.map +1 -1
  134. package/node_modules/@fps-games/editor-babylon/dist/editor-world.js +3 -0
  135. package/node_modules/@fps-games/editor-babylon/dist/editor-world.js.map +1 -1
  136. package/node_modules/@fps-games/editor-babylon/dist/index.d.ts +3 -0
  137. package/node_modules/@fps-games/editor-babylon/dist/index.d.ts.map +1 -1
  138. package/node_modules/@fps-games/editor-babylon/dist/index.js +3 -0
  139. package/node_modules/@fps-games/editor-babylon/dist/index.js.map +1 -1
  140. package/node_modules/@fps-games/editor-babylon/dist/marker-overlay.d.ts +52 -0
  141. package/node_modules/@fps-games/editor-babylon/dist/marker-overlay.d.ts.map +1 -0
  142. package/node_modules/@fps-games/editor-babylon/dist/marker-overlay.js +1395 -0
  143. package/node_modules/@fps-games/editor-babylon/dist/marker-overlay.js.map +1 -0
  144. package/node_modules/@fps-games/editor-babylon/dist/material-property-adapter.d.ts.map +1 -1
  145. package/node_modules/@fps-games/editor-babylon/dist/material-property-adapter.js +4 -65
  146. package/node_modules/@fps-games/editor-babylon/dist/material-property-adapter.js.map +1 -1
  147. package/node_modules/@fps-games/editor-babylon/dist/material-slot-source-resolver.d.ts +28 -0
  148. package/node_modules/@fps-games/editor-babylon/dist/material-slot-source-resolver.d.ts.map +1 -0
  149. package/node_modules/@fps-games/editor-babylon/dist/material-slot-source-resolver.js +235 -0
  150. package/node_modules/@fps-games/editor-babylon/dist/material-slot-source-resolver.js.map +1 -0
  151. package/node_modules/@fps-games/editor-babylon/dist/prefab-comparison-preview-controller.d.ts +37 -0
  152. package/node_modules/@fps-games/editor-babylon/dist/prefab-comparison-preview-controller.d.ts.map +1 -0
  153. package/node_modules/@fps-games/editor-babylon/dist/prefab-comparison-preview-controller.js +451 -0
  154. package/node_modules/@fps-games/editor-babylon/dist/prefab-comparison-preview-controller.js.map +1 -0
  155. package/node_modules/@fps-games/editor-babylon/dist/projection-asset-container-importer.d.ts.map +1 -1
  156. package/node_modules/@fps-games/editor-babylon/dist/projection-asset-container-importer.js +14 -3
  157. package/node_modules/@fps-games/editor-babylon/dist/projection-asset-container-importer.js.map +1 -1
  158. package/node_modules/@fps-games/editor-babylon/dist/projection-pick-resolver.d.ts +1 -0
  159. package/node_modules/@fps-games/editor-babylon/dist/projection-pick-resolver.d.ts.map +1 -1
  160. package/node_modules/@fps-games/editor-babylon/dist/projection-pick-resolver.js +20 -4
  161. package/node_modules/@fps-games/editor-babylon/dist/projection-pick-resolver.js.map +1 -1
  162. package/node_modules/@fps-games/editor-babylon/dist/projection-source-owner-path.d.ts +3 -6
  163. package/node_modules/@fps-games/editor-babylon/dist/projection-source-owner-path.d.ts.map +1 -1
  164. package/node_modules/@fps-games/editor-babylon/dist/projection-source-owner-path.js +4 -37
  165. package/node_modules/@fps-games/editor-babylon/dist/projection-source-owner-path.js.map +1 -1
  166. package/node_modules/@fps-games/editor-babylon/dist/projection.d.ts +74 -1
  167. package/node_modules/@fps-games/editor-babylon/dist/projection.d.ts.map +1 -1
  168. package/node_modules/@fps-games/editor-babylon/dist/projection.js +641 -52
  169. package/node_modules/@fps-games/editor-babylon/dist/projection.js.map +1 -1
  170. package/node_modules/@fps-games/editor-babylon/dist/scene-view-camera-controller.d.ts +11 -0
  171. package/node_modules/@fps-games/editor-babylon/dist/scene-view-camera-controller.d.ts.map +1 -1
  172. package/node_modules/@fps-games/editor-babylon/dist/scene-view-camera-controller.js +113 -29
  173. package/node_modules/@fps-games/editor-babylon/dist/scene-view-camera-controller.js.map +1 -1
  174. package/node_modules/@fps-games/editor-babylon/dist/shadow-preview-controller.d.ts +13 -1
  175. package/node_modules/@fps-games/editor-babylon/dist/shadow-preview-controller.d.ts.map +1 -1
  176. package/node_modules/@fps-games/editor-babylon/dist/shadow-preview-controller.js +543 -3
  177. package/node_modules/@fps-games/editor-babylon/dist/shadow-preview-controller.js.map +1 -1
  178. package/node_modules/@fps-games/editor-babylon/package.json +5 -5
  179. package/node_modules/@fps-games/editor-browser/dist/index.d.ts +8 -2
  180. package/node_modules/@fps-games/editor-browser/dist/index.d.ts.map +1 -1
  181. package/node_modules/@fps-games/editor-browser/dist/index.js +4 -0
  182. package/node_modules/@fps-games/editor-browser/dist/index.js.map +1 -1
  183. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-asset-kind.d.ts +5 -0
  184. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-asset-kind.d.ts.map +1 -0
  185. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-asset-kind.js +23 -0
  186. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-asset-kind.js.map +1 -0
  187. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-context-menu.js +1 -1
  188. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-context-menu.js.map +1 -1
  189. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-actions.d.ts.map +1 -1
  190. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-actions.js +76 -9
  191. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-actions.js.map +1 -1
  192. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-attach-dialog.d.ts.map +1 -1
  193. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-attach-dialog.js +3 -2
  194. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-attach-dialog.js.map +1 -1
  195. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-command-adapter.d.ts +21 -0
  196. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-command-adapter.d.ts.map +1 -0
  197. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-command-adapter.js +75 -0
  198. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-command-adapter.js.map +1 -0
  199. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-controller.d.ts +2 -0
  200. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-controller.d.ts.map +1 -1
  201. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-controller.js +326 -72
  202. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-controller.js.map +1 -1
  203. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-scope.d.ts +5 -0
  204. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-scope.d.ts.map +1 -0
  205. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-scope.js +92 -0
  206. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-scope.js.map +1 -0
  207. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-tree.d.ts +4 -1
  208. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-tree.d.ts.map +1 -1
  209. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-tree.js +22 -7
  210. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-tree.js.map +1 -1
  211. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-view.d.ts +4 -0
  212. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-view.d.ts.map +1 -1
  213. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-view.js +24 -11
  214. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-view.js.map +1 -1
  215. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-icons.d.ts +1 -1
  216. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-icons.d.ts.map +1 -1
  217. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-icons.js +7 -0
  218. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-icons.js.map +1 -1
  219. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panel-registry.js +1 -1
  220. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panel-registry.js.map +1 -1
  221. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panels.d.ts +4 -0
  222. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panels.d.ts.map +1 -1
  223. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panels.js +1471 -29
  224. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panels.js.map +1 -1
  225. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-prefab-stage.d.ts +70 -0
  226. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-prefab-stage.d.ts.map +1 -0
  227. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-prefab-stage.js +171 -0
  228. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-prefab-stage.js.map +1 -0
  229. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-primitives.d.ts +1 -1
  230. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-primitives.d.ts.map +1 -1
  231. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-primitives.js +2 -2
  232. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-primitives.js.map +1 -1
  233. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-shared.d.ts.map +1 -1
  234. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-shared.js +9 -2
  235. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-shared.js.map +1 -1
  236. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-types.d.ts +301 -3
  237. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-types.d.ts.map +1 -1
  238. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-workbench.d.ts +12 -1
  239. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-workbench.d.ts.map +1 -1
  240. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-workbench.js +13 -1
  241. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-workbench.js.map +1 -1
  242. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.d.ts +6 -4
  243. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.d.ts.map +1 -1
  244. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.js +1501 -122
  245. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.js.map +1 -1
  246. package/node_modules/@fps-games/editor-browser/package.json +3 -3
  247. package/node_modules/@fps-games/editor-core/dist/agent-bridge.d.ts +18 -0
  248. package/node_modules/@fps-games/editor-core/dist/agent-bridge.d.ts.map +1 -0
  249. package/node_modules/@fps-games/editor-core/dist/agent-bridge.js +102 -0
  250. package/node_modules/@fps-games/editor-core/dist/agent-bridge.js.map +1 -0
  251. package/node_modules/@fps-games/editor-core/dist/index.d.ts +1 -0
  252. package/node_modules/@fps-games/editor-core/dist/index.d.ts.map +1 -1
  253. package/node_modules/@fps-games/editor-core/dist/index.js +1 -0
  254. package/node_modules/@fps-games/editor-core/dist/index.js.map +1 -1
  255. package/node_modules/@fps-games/editor-core/dist/scene-graph.d.ts +1 -1
  256. package/node_modules/@fps-games/editor-core/dist/scene-graph.d.ts.map +1 -1
  257. package/node_modules/@fps-games/editor-core/dist/viewport-tools.d.ts +3 -1
  258. package/node_modules/@fps-games/editor-core/dist/viewport-tools.d.ts.map +1 -1
  259. package/node_modules/@fps-games/editor-core/dist/viewport-tools.js +1 -0
  260. package/node_modules/@fps-games/editor-core/dist/viewport-tools.js.map +1 -1
  261. package/node_modules/@fps-games/editor-core/package.json +2 -2
  262. package/node_modules/@fps-games/editor-forge-play/package.json +2 -2
  263. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/config.d.ts +3 -0
  264. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/config.d.ts.map +1 -0
  265. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/config.js +9 -0
  266. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/config.js.map +1 -0
  267. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/generated-module.d.ts +6 -0
  268. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/generated-module.d.ts.map +1 -0
  269. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/generated-module.js +89 -0
  270. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/generated-module.js.map +1 -0
  271. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/identity.d.ts +18 -0
  272. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/identity.d.ts.map +1 -0
  273. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/identity.js +121 -0
  274. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/identity.js.map +1 -0
  275. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/index.d.ts +4 -0
  276. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/index.d.ts.map +1 -0
  277. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/index.js +3 -0
  278. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/index.js.map +1 -0
  279. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/metadata.d.ts +27 -0
  280. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/metadata.d.ts.map +1 -0
  281. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/metadata.js +782 -0
  282. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/metadata.js.map +1 -0
  283. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/node.d.ts +5 -0
  284. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/node.d.ts.map +1 -0
  285. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/node.js +5 -0
  286. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/node.js.map +1 -0
  287. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/registry.d.ts +80 -0
  288. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/registry.d.ts.map +1 -0
  289. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/registry.js +600 -0
  290. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/registry.js.map +1 -0
  291. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/types.d.ts +51 -0
  292. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/types.d.ts.map +1 -0
  293. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/types.js +2 -0
  294. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/types.js.map +1 -0
  295. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/catalog.d.ts.map +1 -1
  296. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/catalog.js +17 -3
  297. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/catalog.js.map +1 -1
  298. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/document.d.ts.map +1 -1
  299. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/document.js +2 -1
  300. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/document.js.map +1 -1
  301. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/types.d.ts +3 -2
  302. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/types.d.ts.map +1 -1
  303. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/document.d.ts +1 -1
  304. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/document.d.ts.map +1 -1
  305. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/document.js +48 -20
  306. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/document.js.map +1 -1
  307. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/index.d.ts +1 -1
  308. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/index.d.ts.map +1 -1
  309. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/index.js +1 -1
  310. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/index.js.map +1 -1
  311. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/placement.d.ts.map +1 -1
  312. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/placement.js +2 -1
  313. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/placement.js.map +1 -1
  314. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/types.d.ts +3 -0
  315. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/types.d.ts.map +1 -1
  316. package/node_modules/@fps-games/editor-playable-sdk/dist/document/helpers.d.ts +97 -2
  317. package/node_modules/@fps-games/editor-playable-sdk/dist/document/helpers.d.ts.map +1 -1
  318. package/node_modules/@fps-games/editor-playable-sdk/dist/document/helpers.js +1143 -8
  319. package/node_modules/@fps-games/editor-playable-sdk/dist/document/helpers.js.map +1 -1
  320. package/node_modules/@fps-games/editor-playable-sdk/dist/document/types.d.ts +145 -2
  321. package/node_modules/@fps-games/editor-playable-sdk/dist/document/types.d.ts.map +1 -1
  322. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/index.d.ts +1 -1
  323. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/index.d.ts.map +1 -1
  324. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/index.js +1 -1
  325. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/index.js.map +1 -1
  326. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/schema.d.ts.map +1 -1
  327. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/schema.js +24 -9
  328. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/schema.js.map +1 -1
  329. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/validators.d.ts +6 -0
  330. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/validators.d.ts.map +1 -1
  331. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/validators.js +31 -0
  332. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/validators.js.map +1 -1
  333. package/node_modules/@fps-games/editor-playable-sdk/dist/index.d.ts +3 -0
  334. package/node_modules/@fps-games/editor-playable-sdk/dist/index.d.ts.map +1 -1
  335. package/node_modules/@fps-games/editor-playable-sdk/dist/index.js +3 -0
  336. package/node_modules/@fps-games/editor-playable-sdk/dist/index.js.map +1 -1
  337. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/document-sections.d.ts +82 -2
  338. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/document-sections.d.ts.map +1 -1
  339. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/document-sections.js +396 -22
  340. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/document-sections.js.map +1 -1
  341. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/index.d.ts +1 -1
  342. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/index.d.ts.map +1 -1
  343. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/index.js +1 -1
  344. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/index.js.map +1 -1
  345. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/validation.d.ts.map +1 -1
  346. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/validation.js +0 -3
  347. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/validation.js.map +1 -1
  348. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/math.d.ts +29 -1
  349. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/math.d.ts.map +1 -1
  350. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/math.js +143 -0
  351. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/math.js.map +1 -1
  352. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/lifecycle.d.ts.map +1 -1
  353. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/lifecycle.js +3 -7
  354. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/lifecycle.js.map +1 -1
  355. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/binding.d.ts.map +1 -1
  356. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/binding.js +6 -0
  357. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/binding.js.map +1 -1
  358. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/types.d.ts +2 -10
  359. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/types.d.ts.map +1 -1
  360. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/field-patch.d.ts.map +1 -1
  361. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/field-patch.js +107 -11
  362. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/field-patch.js.map +1 -1
  363. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/reducer.d.ts.map +1 -1
  364. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/reducer.js +4 -1
  365. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/reducer.js.map +1 -1
  366. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/transform.d.ts.map +1 -1
  367. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/transform.js +19 -1
  368. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/transform.js.map +1 -1
  369. package/node_modules/@fps-games/editor-playable-sdk/dist/rendering-profile/panel.d.ts.map +1 -1
  370. package/node_modules/@fps-games/editor-playable-sdk/dist/rendering-profile/panel.js +19 -3
  371. package/node_modules/@fps-games/editor-playable-sdk/dist/rendering-profile/panel.js.map +1 -1
  372. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/assets.d.ts +1 -2
  373. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/assets.d.ts.map +1 -1
  374. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/assets.js +0 -14
  375. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/assets.js.map +1 -1
  376. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/import-plan.d.ts +1 -7
  377. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/import-plan.d.ts.map +1 -1
  378. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/import-plan.js +3 -32
  379. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/import-plan.js.map +1 -1
  380. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/nodes.d.ts.map +1 -1
  381. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/nodes.js +82 -63
  382. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/nodes.js.map +1 -1
  383. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/types.d.ts +7 -23
  384. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/types.d.ts.map +1 -1
  385. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/compiler.d.ts +5 -0
  386. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/compiler.d.ts.map +1 -0
  387. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/compiler.js +996 -0
  388. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/compiler.js.map +1 -0
  389. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/index.d.ts +3 -0
  390. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/index.d.ts.map +1 -0
  391. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/index.js +3 -0
  392. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/index.js.map +1 -0
  393. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/types.d.ts +152 -0
  394. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/types.d.ts.map +1 -0
  395. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/types.js +2 -0
  396. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/types.js.map +1 -0
  397. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/protocol.d.ts.map +1 -1
  398. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/protocol.js +44 -2
  399. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/protocol.js.map +1 -1
  400. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/descriptors.d.ts +1 -0
  401. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/descriptors.d.ts.map +1 -1
  402. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/descriptors.js +244 -12
  403. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/descriptors.js.map +1 -1
  404. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/inspector.d.ts.map +1 -1
  405. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/inspector.js +216 -67
  406. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/inspector.js.map +1 -1
  407. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/object.d.ts.map +1 -1
  408. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/object.js +7 -4
  409. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/object.js.map +1 -1
  410. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/patch.d.ts.map +1 -1
  411. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/patch.js +45 -1
  412. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/patch.js.map +1 -1
  413. package/node_modules/@fps-games/editor-playable-sdk/dist/session/hierarchy.d.ts.map +1 -1
  414. package/node_modules/@fps-games/editor-playable-sdk/dist/session/hierarchy.js +2 -1
  415. package/node_modules/@fps-games/editor-playable-sdk/dist/session/hierarchy.js.map +1 -1
  416. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/index.d.ts +5 -0
  417. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/index.d.ts.map +1 -0
  418. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/index.js +5 -0
  419. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/index.js.map +1 -0
  420. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/legacy.d.ts +21 -0
  421. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/legacy.d.ts.map +1 -0
  422. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/legacy.js +158 -0
  423. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/legacy.js.map +1 -0
  424. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/quality.d.ts +5 -0
  425. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/quality.d.ts.map +1 -0
  426. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/quality.js +83 -0
  427. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/quality.js.map +1 -0
  428. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/resolver.d.ts +35 -0
  429. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/resolver.d.ts.map +1 -0
  430. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/resolver.js +363 -0
  431. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/resolver.js.map +1 -0
  432. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/types.d.ts +105 -0
  433. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/types.d.ts.map +1 -0
  434. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/types.js +6 -0
  435. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/types.js.map +1 -0
  436. package/node_modules/@fps-games/editor-playable-sdk/dist/static-shadows/artifact.d.ts +3 -0
  437. package/node_modules/@fps-games/editor-playable-sdk/dist/static-shadows/artifact.d.ts.map +1 -1
  438. package/node_modules/@fps-games/editor-playable-sdk/dist/static-shadows/artifact.js +44 -0
  439. package/node_modules/@fps-games/editor-playable-sdk/dist/static-shadows/artifact.js.map +1 -1
  440. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/asset-authoring.d.ts +26 -0
  441. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/asset-authoring.d.ts.map +1 -0
  442. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/asset-authoring.js +105 -0
  443. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/asset-authoring.js.map +1 -0
  444. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/index.d.ts +3 -0
  445. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/index.d.ts.map +1 -1
  446. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/index.js +3 -0
  447. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/index.js.map +1 -1
  448. package/node_modules/@fps-games/editor-playable-sdk/package.json +3 -3
  449. package/node_modules/@fps-games/editor-protocol/dist/agent-bridge.d.ts +1127 -0
  450. package/node_modules/@fps-games/editor-protocol/dist/agent-bridge.d.ts.map +1 -0
  451. package/node_modules/@fps-games/editor-protocol/dist/agent-bridge.js +2180 -0
  452. package/node_modules/@fps-games/editor-protocol/dist/agent-bridge.js.map +1 -0
  453. package/node_modules/@fps-games/editor-protocol/dist/agent-trace.d.ts +68 -0
  454. package/node_modules/@fps-games/editor-protocol/dist/agent-trace.d.ts.map +1 -0
  455. package/node_modules/@fps-games/editor-protocol/dist/agent-trace.js +23 -0
  456. package/node_modules/@fps-games/editor-protocol/dist/agent-trace.js.map +1 -0
  457. package/node_modules/@fps-games/editor-protocol/dist/agent.d.ts +57 -3
  458. package/node_modules/@fps-games/editor-protocol/dist/agent.d.ts.map +1 -1
  459. package/node_modules/@fps-games/editor-protocol/dist/agent.js.map +1 -1
  460. package/node_modules/@fps-games/editor-protocol/dist/index.d.ts +21 -0
  461. package/node_modules/@fps-games/editor-protocol/dist/index.d.ts.map +1 -1
  462. package/node_modules/@fps-games/editor-protocol/dist/index.js +3 -0
  463. package/node_modules/@fps-games/editor-protocol/dist/index.js.map +1 -1
  464. package/node_modules/@fps-games/editor-protocol/dist/marker-graph.d.ts +128 -0
  465. package/node_modules/@fps-games/editor-protocol/dist/marker-graph.d.ts.map +1 -0
  466. package/node_modules/@fps-games/editor-protocol/dist/marker-graph.js +2 -0
  467. package/node_modules/@fps-games/editor-protocol/dist/marker-graph.js.map +1 -0
  468. package/node_modules/@fps-games/editor-protocol/package.json +1 -1
  469. package/package.json +8 -8
@@ -0,0 +1,451 @@
1
+ const MAIN_CAMERA_LAYER_MASK = 0x0fffffff;
2
+ const MESH_CLONE_LAYER_MASK = 0x10000000;
3
+ const INSTANCED_MESH_LAYER_MASK = 0x20000000;
4
+ const COMPARISON_LAYER_MASK = MESH_CLONE_LAYER_MASK | INSTANCED_MESH_LAYER_MASK;
5
+ const ORBIT_POINTER_PIXEL_TO_RADIAN = 0.008;
6
+ const ZOOM_WHEEL_DELTA_TO_SCALE = 0.0012;
7
+ export function createBabylonPrefabComparisonPreviewController(options) {
8
+ const cameras = new Map();
9
+ const viewState = createInitialComparisonViewState();
10
+ let active = false;
11
+ let disposed = false;
12
+ let savedActiveCamera = null;
13
+ let savedActiveCameras;
14
+ let savedEditorCameraLayerMask = null;
15
+ let savedEditorCameraViewport = null;
16
+ let savedSkyLayerMask = null;
17
+ function sync(surfaces) {
18
+ if (disposed)
19
+ return false;
20
+ const canvasRect = readRenderCanvasRect(options.scene);
21
+ if (!canvasRect || surfaces.length === 0)
22
+ return clear({ resetViewState: false });
23
+ const visibleProjectionIds = new Set();
24
+ let changed = false;
25
+ for (const surface of surfaces) {
26
+ const projectedNode = options.projection.getProjectedNode(surface.projectionNodeId);
27
+ const viewport = resolveSurfaceViewport(surface.rect, canvasRect);
28
+ const layerMask = resolveComparisonLayerMask(surface);
29
+ if (!projectedNode || !viewport || layerMask == null)
30
+ continue;
31
+ const fit = resolveProjectionFit(options.babylon, projectedNode);
32
+ visibleProjectionIds.add(surface.projectionNodeId);
33
+ applyProjectionLayerMask(projectedNode, layerMask);
34
+ const existing = cameras.get(surface.projectionNodeId);
35
+ const cameraState = ensureCamera(surface, layerMask);
36
+ if (!cameraState)
37
+ continue;
38
+ if (!existing)
39
+ changed = true;
40
+ if (cameraState.layerMask !== layerMask)
41
+ changed = true;
42
+ if (!viewportsEqual(cameraState.viewport, viewport))
43
+ changed = true;
44
+ cameraState.projectionNodeId = surface.projectionNodeId;
45
+ cameraState.layerMask = layerMask;
46
+ cameraState.viewport = viewport;
47
+ if (!vectorsEqual(cameraState.target, fit.target))
48
+ changed = true;
49
+ if (Math.abs(cameraState.requiredRadius - fit.requiredRadius) > 0.0001)
50
+ changed = true;
51
+ cameraState.target = fit.target;
52
+ cameraState.requiredRadius = fit.requiredRadius;
53
+ cameraState.camera.layerMask = layerMask;
54
+ applyCameraViewport(options.babylon, cameraState.camera, viewport);
55
+ }
56
+ for (const [projectionNodeId, cameraState] of cameras) {
57
+ if (visibleProjectionIds.has(projectionNodeId))
58
+ continue;
59
+ cameraState.camera.dispose?.();
60
+ cameras.delete(projectionNodeId);
61
+ changed = true;
62
+ }
63
+ if (cameras.size === 0)
64
+ return clear() || changed;
65
+ if (syncSharedComparisonViewState())
66
+ changed = true;
67
+ applyComparisonCameraFrames();
68
+ if (!active)
69
+ changed = true;
70
+ activateSceneCameras();
71
+ return changed;
72
+ }
73
+ function prepareFrame() {
74
+ if (disposed || !active)
75
+ return;
76
+ ensureSceneCamerasActive();
77
+ applyComparisonCameraFrames();
78
+ applySkyLayerMask();
79
+ }
80
+ function adjustView(input) {
81
+ if (disposed || !active || cameras.size === 0)
82
+ return false;
83
+ if (input.kind === 'orbit') {
84
+ if (!Number.isFinite(input.deltaX) || !Number.isFinite(input.deltaY))
85
+ return false;
86
+ if (Math.abs(input.deltaX) < 0.001 && Math.abs(input.deltaY) < 0.001)
87
+ return false;
88
+ viewState.alpha -= input.deltaX * ORBIT_POINTER_PIXEL_TO_RADIAN;
89
+ viewState.beta = clamp(viewState.beta + input.deltaY * ORBIT_POINTER_PIXEL_TO_RADIAN, 0.08, Math.PI - 0.08);
90
+ viewState.userAdjusted = true;
91
+ applyComparisonCameraFrames();
92
+ return true;
93
+ }
94
+ if (!Number.isFinite(input.deltaY) || Math.abs(input.deltaY) < 0.001)
95
+ return false;
96
+ const nextRadius = clamp(viewState.radius * Math.exp(input.deltaY * ZOOM_WHEEL_DELTA_TO_SCALE), viewState.minRadius, viewState.maxRadius);
97
+ if (Math.abs(nextRadius - viewState.radius) < 0.0001)
98
+ return false;
99
+ viewState.radius = nextRadius;
100
+ viewState.userAdjusted = true;
101
+ applyComparisonCameraFrames();
102
+ return true;
103
+ }
104
+ function clear(clearOptions = {}) {
105
+ if (disposed)
106
+ return false;
107
+ const hadState = active || cameras.size > 0;
108
+ for (const cameraState of cameras.values())
109
+ cameraState.camera.dispose?.();
110
+ cameras.clear();
111
+ restoreSceneCameras();
112
+ restoreSkyLayerMask();
113
+ if (clearOptions.resetViewState !== false)
114
+ resetComparisonViewState(viewState);
115
+ return hadState;
116
+ }
117
+ function dispose() {
118
+ if (disposed)
119
+ return;
120
+ clear();
121
+ disposed = true;
122
+ }
123
+ function ensureCamera(surface, layerMask) {
124
+ const existing = cameras.get(surface.projectionNodeId);
125
+ if (existing)
126
+ return existing;
127
+ const camera = createComparisonCamera(options.babylon, options.scene, surface.projectionNodeId);
128
+ if (!camera)
129
+ return null;
130
+ camera.layerMask = layerMask;
131
+ camera.inertia = 0;
132
+ const state = {
133
+ previewId: surface.previewId,
134
+ projectionNodeId: surface.projectionNodeId,
135
+ layerMask,
136
+ viewport: null,
137
+ camera,
138
+ target: { x: 0, y: 0, z: 0 },
139
+ requiredRadius: 9,
140
+ };
141
+ cameras.set(surface.projectionNodeId, state);
142
+ return state;
143
+ }
144
+ function activateSceneCameras() {
145
+ if (!active) {
146
+ savedActiveCamera = options.scene.activeCamera ?? options.editorCamera;
147
+ savedActiveCameras = Array.isArray(options.scene.activeCameras)
148
+ ? [...options.scene.activeCameras]
149
+ : options.scene.activeCameras ?? null;
150
+ savedEditorCameraLayerMask = typeof options.editorCamera.layerMask === 'number'
151
+ ? options.editorCamera.layerMask
152
+ : null;
153
+ savedEditorCameraViewport = options.editorCamera.viewport ?? null;
154
+ active = true;
155
+ }
156
+ ensureSceneCamerasActive();
157
+ applySkyLayerMask();
158
+ }
159
+ function ensureSceneCamerasActive() {
160
+ if (!active)
161
+ return;
162
+ options.editorCamera.layerMask = MAIN_CAMERA_LAYER_MASK;
163
+ options.scene.activeCamera = options.editorCamera;
164
+ options.scene.activeCameras = [options.editorCamera, ...[...cameras.values()].map(state => state.camera)];
165
+ }
166
+ function restoreSceneCameras() {
167
+ if (!active)
168
+ return;
169
+ if (savedEditorCameraLayerMask != null)
170
+ options.editorCamera.layerMask = savedEditorCameraLayerMask;
171
+ if (savedEditorCameraViewport != null)
172
+ options.editorCamera.viewport = savedEditorCameraViewport;
173
+ options.scene.activeCamera = savedActiveCamera ?? options.editorCamera;
174
+ if (savedActiveCameras === undefined) {
175
+ delete options.scene.activeCameras;
176
+ }
177
+ else {
178
+ options.scene.activeCameras = savedActiveCameras;
179
+ }
180
+ savedActiveCamera = null;
181
+ savedActiveCameras = undefined;
182
+ savedEditorCameraLayerMask = null;
183
+ savedEditorCameraViewport = null;
184
+ active = false;
185
+ }
186
+ function syncSharedComparisonViewState() {
187
+ if (cameras.size === 0)
188
+ return false;
189
+ const cameraStates = [...cameras.values()];
190
+ const requiredRadius = Math.max(...cameraStates.map(state => state.requiredRadius), 2);
191
+ const minRadius = Math.max(0.1, requiredRadius * 0.12);
192
+ const maxRadius = Math.max(requiredRadius * 8, minRadius + 1);
193
+ const fitKey = cameraStates
194
+ .map(state => `${state.projectionNodeId}:${formatComparisonNumber(state.target.x)},${formatComparisonNumber(state.target.y)},${formatComparisonNumber(state.target.z)}:${formatComparisonNumber(state.requiredRadius)}`)
195
+ .sort()
196
+ .join('|');
197
+ const shouldRefit = !viewState.initialized || (!viewState.userAdjusted && viewState.fitKey !== fitKey);
198
+ let changed = false;
199
+ if (viewState.minRadius !== minRadius || viewState.maxRadius !== maxRadius) {
200
+ viewState.minRadius = minRadius;
201
+ viewState.maxRadius = maxRadius;
202
+ changed = true;
203
+ }
204
+ if (shouldRefit) {
205
+ if (Math.abs(viewState.radius - requiredRadius) > 0.0001)
206
+ changed = true;
207
+ viewState.radius = requiredRadius;
208
+ viewState.initialized = true;
209
+ }
210
+ else {
211
+ const clampedRadius = clamp(viewState.radius, minRadius, maxRadius);
212
+ if (Math.abs(viewState.radius - clampedRadius) > 0.0001)
213
+ changed = true;
214
+ viewState.radius = clampedRadius;
215
+ }
216
+ if (viewState.fitKey !== fitKey) {
217
+ viewState.fitKey = fitKey;
218
+ changed = true;
219
+ }
220
+ return changed;
221
+ }
222
+ function applyComparisonCameraFrames() {
223
+ for (const cameraState of cameras.values()) {
224
+ applyComparisonCameraFrame(options.babylon, cameraState.camera, cameraState.target, viewState);
225
+ cameraState.camera.layerMask = cameraState.layerMask;
226
+ }
227
+ }
228
+ function applySkyLayerMask() {
229
+ const mesh = options.getSkyBackdrop?.()?.mesh;
230
+ if (!mesh || typeof mesh !== 'object')
231
+ return;
232
+ if (savedSkyLayerMask == null && typeof mesh.layerMask === 'number') {
233
+ savedSkyLayerMask = mesh.layerMask;
234
+ }
235
+ const baseMask = typeof mesh.layerMask === 'number' ? mesh.layerMask : MAIN_CAMERA_LAYER_MASK;
236
+ mesh.layerMask = baseMask | COMPARISON_LAYER_MASK;
237
+ }
238
+ function restoreSkyLayerMask() {
239
+ const mesh = options.getSkyBackdrop?.()?.mesh;
240
+ if (mesh && savedSkyLayerMask != null)
241
+ mesh.layerMask = savedSkyLayerMask;
242
+ savedSkyLayerMask = null;
243
+ }
244
+ return {
245
+ sync,
246
+ prepareFrame,
247
+ adjustView,
248
+ clear,
249
+ dispose,
250
+ };
251
+ }
252
+ function createInitialComparisonViewState() {
253
+ return {
254
+ alpha: Math.PI / 4,
255
+ beta: Math.PI / 3,
256
+ radius: 9,
257
+ minRadius: 0.5,
258
+ maxRadius: 72,
259
+ initialized: false,
260
+ userAdjusted: false,
261
+ fitKey: '',
262
+ };
263
+ }
264
+ function resetComparisonViewState(viewState) {
265
+ const initial = createInitialComparisonViewState();
266
+ viewState.alpha = initial.alpha;
267
+ viewState.beta = initial.beta;
268
+ viewState.radius = initial.radius;
269
+ viewState.minRadius = initial.minRadius;
270
+ viewState.maxRadius = initial.maxRadius;
271
+ viewState.initialized = initial.initialized;
272
+ viewState.userAdjusted = initial.userAdjusted;
273
+ viewState.fitKey = initial.fitKey;
274
+ }
275
+ function createComparisonCamera(babylon, scene, projectionNodeId) {
276
+ const Vector3 = babylon.Vector3;
277
+ if (!Vector3)
278
+ return null;
279
+ if (babylon.ArcRotateCamera) {
280
+ return new babylon.ArcRotateCamera(`prefab-comparison-preview:${projectionNodeId}`, Math.PI / 4, Math.PI / 3, 9, new Vector3(0, 0, 0), scene);
281
+ }
282
+ if (!babylon.UniversalCamera)
283
+ return null;
284
+ return new babylon.UniversalCamera(`prefab-comparison-preview:${projectionNodeId}`, new Vector3(0, 0, -9), scene);
285
+ }
286
+ function applyComparisonCameraFrame(babylon, camera, target, viewState) {
287
+ const beta = clamp(viewState.beta, 0.05, Math.PI - 0.05);
288
+ const radius = clamp(viewState.radius, viewState.minRadius, viewState.maxRadius);
289
+ if (typeof camera.alpha === 'number' && typeof camera.beta === 'number' && typeof camera.radius === 'number') {
290
+ camera.alpha = viewState.alpha;
291
+ camera.beta = beta;
292
+ camera.radius = radius;
293
+ setCameraTarget(babylon, camera, target);
294
+ return;
295
+ }
296
+ if (camera.position) {
297
+ const position = sphericalToPosition(target, viewState.alpha, beta, radius);
298
+ copyPlainVec3ToVectorLike(position, camera.position);
299
+ }
300
+ setCameraTarget(babylon, camera, target);
301
+ }
302
+ function cloneVector3(babylon, value) {
303
+ const Vector3 = babylon.Vector3;
304
+ if (!Vector3)
305
+ return { x: value.x ?? 0, y: value.y ?? 0, z: value.z ?? 0 };
306
+ return new Vector3(value.x ?? 0, value.y ?? 0, value.z ?? 0);
307
+ }
308
+ function setCameraTarget(babylon, camera, target) {
309
+ const cloned = cloneVector3(babylon, target);
310
+ if (typeof camera.setTarget === 'function') {
311
+ camera.setTarget(cloned);
312
+ return;
313
+ }
314
+ camera.target = cloned;
315
+ }
316
+ function copyPlainVec3ToVectorLike(source, target) {
317
+ if (!target || typeof target !== 'object')
318
+ return;
319
+ const to = target;
320
+ if (typeof to.copyFrom === 'function') {
321
+ to.copyFrom(source);
322
+ return;
323
+ }
324
+ to.x = source.x;
325
+ to.y = source.y;
326
+ to.z = source.z;
327
+ }
328
+ function sphericalToPosition(target, alpha, beta, radius) {
329
+ const sinBeta = Math.sin(beta);
330
+ return {
331
+ x: target.x + radius * sinBeta * Math.cos(alpha),
332
+ y: target.y + radius * Math.cos(beta),
333
+ z: target.z + radius * sinBeta * Math.sin(alpha),
334
+ };
335
+ }
336
+ function applyCameraViewport(babylon, camera, viewport) {
337
+ camera.viewport = babylon.Viewport
338
+ ? new babylon.Viewport(viewport.x, viewport.y, viewport.width, viewport.height)
339
+ : viewport;
340
+ }
341
+ function viewportsEqual(left, right) {
342
+ return !!left
343
+ && Math.abs(left.x - right.x) < 0.0001
344
+ && Math.abs(left.y - right.y) < 0.0001
345
+ && Math.abs(left.width - right.width) < 0.0001
346
+ && Math.abs(left.height - right.height) < 0.0001;
347
+ }
348
+ function resolveSurfaceViewport(surfaceRect, canvasRect) {
349
+ const canvasWidth = Math.max(1, canvasRect.width);
350
+ const canvasHeight = Math.max(1, canvasRect.height);
351
+ const left = clamp01((surfaceRect.left - canvasRect.left) / canvasWidth);
352
+ const top = clamp01((surfaceRect.top - canvasRect.top) / canvasHeight);
353
+ const right = clamp01((surfaceRect.right - canvasRect.left) / canvasWidth);
354
+ const bottom = clamp01((surfaceRect.bottom - canvasRect.top) / canvasHeight);
355
+ const width = right - left;
356
+ const height = bottom - top;
357
+ if (width <= 0 || height <= 0)
358
+ return null;
359
+ return {
360
+ x: left,
361
+ y: 1 - bottom,
362
+ width,
363
+ height,
364
+ };
365
+ }
366
+ function resolveComparisonLayerMask(surface) {
367
+ if (surface.previewId === 'mesh-clone' || surface.projectionNodeId.endsWith(':compare-clone')) {
368
+ return MESH_CLONE_LAYER_MASK;
369
+ }
370
+ if (surface.previewId === 'instanced-mesh' || surface.projectionNodeId.endsWith(':compare-instance')) {
371
+ return INSTANCED_MESH_LAYER_MASK;
372
+ }
373
+ return null;
374
+ }
375
+ function applyProjectionLayerMask(projection, layerMask) {
376
+ applyNodeLayerMask(projection.root, layerMask);
377
+ for (const mesh of projection.outlineMeshes ?? [])
378
+ applyNodeLayerMask(mesh, layerMask);
379
+ }
380
+ function resolveProjectionFit(babylon, projection) {
381
+ const bounds = projection.root?.getHierarchyBoundingVectors?.();
382
+ if (bounds?.min && bounds?.max) {
383
+ const min = readComparisonVec3(bounds.min);
384
+ const max = readComparisonVec3(bounds.max);
385
+ const target = {
386
+ x: (min.x + max.x) / 2,
387
+ y: (min.y + max.y) / 2,
388
+ z: (min.z + max.z) / 2,
389
+ };
390
+ const size = {
391
+ x: Math.max(0, max.x - min.x),
392
+ y: Math.max(0, max.y - min.y),
393
+ z: Math.max(0, max.z - min.z),
394
+ };
395
+ const diagonal = Math.hypot(size.x, size.y, size.z);
396
+ return {
397
+ target,
398
+ requiredRadius: Number.isFinite(diagonal) && diagonal > 0 ? Math.max(diagonal * 1.6, 2) : 2,
399
+ };
400
+ }
401
+ return {
402
+ target: readComparisonVec3(projection.root?.position, { x: 0, y: 0, z: 0 }),
403
+ requiredRadius: 4,
404
+ };
405
+ }
406
+ function readComparisonVec3(value, fallback = { x: 0, y: 0, z: 0 }) {
407
+ if (!value || typeof value !== 'object')
408
+ return fallback;
409
+ const input = value;
410
+ return {
411
+ x: typeof input.x === 'number' && Number.isFinite(input.x) ? input.x : fallback.x,
412
+ y: typeof input.y === 'number' && Number.isFinite(input.y) ? input.y : fallback.y,
413
+ z: typeof input.z === 'number' && Number.isFinite(input.z) ? input.z : fallback.z,
414
+ };
415
+ }
416
+ function vectorsEqual(left, right) {
417
+ return Math.abs(left.x - right.x) < 0.0001
418
+ && Math.abs(left.y - right.y) < 0.0001
419
+ && Math.abs(left.z - right.z) < 0.0001;
420
+ }
421
+ function formatComparisonNumber(value) {
422
+ return Number.isFinite(value) ? value.toFixed(4) : '0.0000';
423
+ }
424
+ function applyNodeLayerMask(node, layerMask) {
425
+ if (!node || typeof node !== 'object')
426
+ return;
427
+ node.layerMask = layerMask;
428
+ const childMeshes = node.getChildMeshes?.(false) ?? [];
429
+ for (const child of childMeshes) {
430
+ if (child && typeof child === 'object')
431
+ child.layerMask = layerMask;
432
+ }
433
+ }
434
+ function readRenderCanvasRect(scene) {
435
+ const canvas = scene.getEngine?.()?.getRenderingCanvas?.();
436
+ const rect = canvas?.getBoundingClientRect?.();
437
+ if (!rect || rect.width <= 0 || rect.height <= 0)
438
+ return null;
439
+ return rect;
440
+ }
441
+ function clamp01(value) {
442
+ if (!Number.isFinite(value))
443
+ return 0;
444
+ return Math.max(0, Math.min(1, value));
445
+ }
446
+ function clamp(value, min, max) {
447
+ if (!Number.isFinite(value))
448
+ return min;
449
+ return Math.max(min, Math.min(max, value));
450
+ }
451
+ //# sourceMappingURL=prefab-comparison-preview-controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prefab-comparison-preview-controller.js","sourceRoot":"","sources":["../src/prefab-comparison-preview-controller.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"projection-asset-container-importer.d.ts","sourceRoot":"","sources":["../src/projection-asset-container-importer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oCAAoC,EACpC,+BAA+B,EAEhC,MAAM,cAAc,CAAC;AAMtB,MAAM,WAAW,wCAAwC;IACvD,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC;IACtB,wBAAwB,CAAC,EAAE,CACzB,YAAY,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,MAAM,EAC7C,cAAc,CAAC,EAAE,OAAO,EACxB,OAAO,CAAC,EAAE;QAAE,gBAAgB,CAAC,EAAE,OAAO,CAAA;KAAE,KACrC,kDAAkD,CAAC;CACzD;AAED,MAAM,WAAW,kDAAkD;IACjE,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC;IACtB,eAAe,CAAC,EAAE,OAAO,EAAE,CAAC;CAC7B;AAED,MAAM,MAAM,0CAA0C,GAClD;IACE,IAAI,EAAE,sBAAsB,CAAC;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,oCAAoC,CAAC;CAC/C,GACD;IACE,IAAI,EAAE,wBAAwB,CAAC;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,oCAAoC,CAAC;CAC/C,GACD;IACE,IAAI,EAAE,wBAAwB,CAAC;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,oCAAoC,CAAC;IAC9C,KAAK,EAAE,OAAO,CAAC;CAChB,GACD;IACE,IAAI,EAAE,qBAAqB,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,oCAAoC,CAAC;CAC/C,GACD;IACE,IAAI,EAAE,aAAa,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,oCAAoC,CAAC;IAC9C,gBAAgB,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEN,MAAM,WAAW,8CAA8C;IAC7D,aAAa,CAAC,OAAO,EAAE,oCAAoC,GAAG,OAAO,CAAC,wCAAwC,CAAC,CAAC;IAChH,eAAe,CAAC,CAAC,OAAO,EAAE,oCAAoC,GAAG,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;IAChI,iBAAiB,CAAC,CAAC,OAAO,EAAE,oCAAoC,GAAG,OAAO,CAAC;IAC3E,kBAAkB,CAAC,CAAC,KAAK,EAAE;QACzB,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,oCAAoC,CAAC;KAC/C,GAAG,MAAM,CAAC;IACX,OAAO,CAAC,CAAC,KAAK,EAAE,0CAA0C,GAAG,IAAI,CAAC;CACnE;AAID,wBAAgB,6CAA6C,CAC3D,OAAO,EAAE,8CAA8C,GACtD,+BAA+B,CA4BjC"}
1
+ {"version":3,"file":"projection-asset-container-importer.d.ts","sourceRoot":"","sources":["../src/projection-asset-container-importer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oCAAoC,EACpC,+BAA+B,EAEhC,MAAM,cAAc,CAAC;AAMtB,MAAM,WAAW,wCAAwC;IACvD,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC;IACtB,wBAAwB,CAAC,EAAE,CACzB,YAAY,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,MAAM,EAC7C,cAAc,CAAC,EAAE,OAAO,EACxB,OAAO,CAAC,EAAE;QAAE,gBAAgB,CAAC,EAAE,OAAO,CAAA;KAAE,KACrC,kDAAkD,CAAC;CACzD;AAED,MAAM,WAAW,kDAAkD;IACjE,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC;IACtB,eAAe,CAAC,EAAE,OAAO,EAAE,CAAC;CAC7B;AAED,MAAM,MAAM,0CAA0C,GAClD;IACE,IAAI,EAAE,sBAAsB,CAAC;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,oCAAoC,CAAC;CAC/C,GACD;IACE,IAAI,EAAE,wBAAwB,CAAC;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,oCAAoC,CAAC;CAC/C,GACD;IACE,IAAI,EAAE,wBAAwB,CAAC;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,oCAAoC,CAAC;IAC9C,KAAK,EAAE,OAAO,CAAC;CAChB,GACD;IACE,IAAI,EAAE,qBAAqB,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,oCAAoC,CAAC;CAC/C,GACD;IACE,IAAI,EAAE,aAAa,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,oCAAoC,CAAC;IAC9C,gBAAgB,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEN,MAAM,WAAW,8CAA8C;IAC7D,aAAa,CAAC,OAAO,EAAE,oCAAoC,GAAG,OAAO,CAAC,wCAAwC,CAAC,CAAC;IAChH,eAAe,CAAC,CAAC,OAAO,EAAE,oCAAoC,GAAG,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;IAChI,iBAAiB,CAAC,CAAC,OAAO,EAAE,oCAAoC,GAAG,OAAO,CAAC;IAC3E,kBAAkB,CAAC,CAAC,KAAK,EAAE;QACzB,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,oCAAoC,CAAC;KAC/C,GAAG,MAAM,CAAC;IACX,OAAO,CAAC,CAAC,KAAK,EAAE,0CAA0C,GAAG,IAAI,CAAC;CACnE;AAID,wBAAgB,6CAA6C,CAC3D,OAAO,EAAE,8CAA8C,GACtD,+BAA+B,CA2BjC"}
@@ -11,8 +11,7 @@ export function createBabylonAssetContainerProjectionImporter(options) {
11
11
  }
12
12
  const container = await containerPromise;
13
13
  ensureProjectionContainerResourcesInScene(container, context.scene);
14
- const doNotInstantiate = options.shouldCloneMeshes?.(context)
15
- ?? hasProjectionSlotMaterialProfiles(context);
14
+ const doNotInstantiate = resolveProjectionInstantiationDoNotInstantiate(options, context);
16
15
  options.onEvent?.({ type: 'instantiate', cacheKey, context, doNotInstantiate });
17
16
  const sourceNameByInstanceName = new Map();
18
17
  const entries = container.instantiateModelsToScene?.(createProjectionSourceNameMapper(sourceNameByInstanceName, sourceName => options.createInstanceName?.({ sourceName, cacheKey, context })
@@ -20,6 +19,16 @@ export function createBabylonAssetContainerProjectionImporter(options) {
20
19
  return entries ? collectProjectionImportResult(entries, sourceNameByInstanceName) : null;
21
20
  };
22
21
  }
22
+ function resolveProjectionInstantiationDoNotInstantiate(options, context) {
23
+ switch (context.node.assetInstantiationMode) {
24
+ case 'meshClone': return true;
25
+ case 'instancedMesh': return false;
26
+ case 'auto':
27
+ default:
28
+ return options.shouldCloneMeshes?.(context)
29
+ ?? hasProjectionSlotMaterialProfiles(context);
30
+ }
31
+ }
23
32
  function getProjectionContainerSceneCache(sceneCaches, scene) {
24
33
  let sceneCache = sceneCaches.get(scene);
25
34
  if (!sceneCache) {
@@ -52,6 +61,7 @@ async function resolveProjectionContainerCacheKey(options, context) {
52
61
  return `${baseKey}|profiles:${stableProjectionCacheStringify({
53
62
  artistMaterialKind: context.node.artistMaterialKind,
54
63
  artistMaterialProfile: context.node.artistMaterialProfile,
64
+ artistMaterialSlotBindings: context.node.artistMaterialSlotBindings,
55
65
  artistMaterialSlotProfiles: context.node.artistMaterialSlotProfiles,
56
66
  })}`;
57
67
  }
@@ -69,7 +79,8 @@ function readProjectionAssetUrlCandidate(metadata) {
69
79
  return metadata.url ?? metadata.sourceUrl ?? metadata.src ?? metadata.path;
70
80
  }
71
81
  function hasProjectionSlotMaterialProfiles(context) {
72
- return Object.keys(context.node.artistMaterialSlotProfiles ?? {}).length > 0;
82
+ return (context.node.artistMaterialSlotBindings?.length ?? 0) > 0
83
+ || Object.keys(context.node.artistMaterialSlotProfiles ?? {}).length > 0;
73
84
  }
74
85
  function ensureProjectionContainerResourcesInScene(container, scene) {
75
86
  addUniqueSceneResources(scene, scene.materials, container.materials, scene.addMaterial);
@@ -1 +1 @@
1
- {"version":3,"file":"projection-asset-container-importer.js","sourceRoot":"","sources":["../src/projection-asset-container-importer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"projection-asset-container-importer.js","sourceRoot":"","sources":["../src/projection-asset-container-importer.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@ export interface BabylonProjectionPickCandidate {
9
9
  node: any;
10
10
  projection: Record<string, unknown>;
11
11
  selectionNodeId: string;
12
+ editorOverlayPriority: number;
12
13
  renderingGroupId: number;
13
14
  alphaIndex: number;
14
15
  distance: number;
@@ -1 +1 @@
1
- {"version":3,"file":"projection-pick-resolver.d.ts","sourceRoot":"","sources":["../src/projection-pick-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C,MAAM,WAAW,2BAA2B;IAC1C,GAAG,EAAE,OAAO,CAAC;IACb,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,UAAU,EAAE,OAAO,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,8BAA8B;IAC7C,GAAG,EAAE,OAAO,CAAC;IACb,IAAI,EAAE,GAAG,CAAC;IACV,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAMD,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAQ7E;AAED,wBAAgB,iCAAiC,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAahF;AAED,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GACd,MAAM,GAAG,IAAI,CAKf;AAED,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,YAAY,EACnB,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,GACR,2BAA2B,CAQ7B;AAED,wBAAsB,4BAA4B,CAChD,KAAK,EAAE,YAAY,EACnB,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,OAAO,GAAE;IAAE,cAAc,CAAC,EAAE,MAAM,CAAA;CAAO,GACxC,OAAO,CAAC,2BAA2B,CAAC,CAkBtC;AAED,wBAAgB,oCAAoC,CAClD,KAAK,EAAE,YAAY,EACnB,IAAI,EAAE,SAAS,OAAO,EAAE,GACvB,8BAA8B,GAAG,IAAI,CAEvC;AAED,wBAAgB,sCAAsC,CACpD,IAAI,EAAE,SAAS,OAAO,EAAE,GACvB,8BAA8B,EAAE,CAoBlC;AAED,wBAAgB,mCAAmC,CACjD,KAAK,EAAE,YAAY,EACnB,UAAU,EAAE,SAAS,8BAA8B,EAAE,GACpD,8BAA8B,EAAE,CAclC"}
1
+ {"version":3,"file":"projection-pick-resolver.d.ts","sourceRoot":"","sources":["../src/projection-pick-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C,MAAM,WAAW,2BAA2B;IAC1C,GAAG,EAAE,OAAO,CAAC;IACb,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,UAAU,EAAE,OAAO,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,8BAA8B;IAC7C,GAAG,EAAE,OAAO,CAAC;IACb,IAAI,EAAE,GAAG,CAAC;IACV,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,eAAe,EAAE,MAAM,CAAC;IACxB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAMD,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAQ7E;AAED,wBAAgB,iCAAiC,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAahF;AAED,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GACd,MAAM,GAAG,IAAI,CAKf;AAED,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,YAAY,EACnB,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,GACR,2BAA2B,CAQ7B;AAED,wBAAsB,4BAA4B,CAChD,KAAK,EAAE,YAAY,EACnB,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,OAAO,GAAE;IAAE,cAAc,CAAC,EAAE,MAAM,CAAA;CAAO,GACxC,OAAO,CAAC,2BAA2B,CAAC,CAkBtC;AAED,wBAAgB,oCAAoC,CAClD,KAAK,EAAE,YAAY,EACnB,IAAI,EAAE,SAAS,OAAO,EAAE,GACvB,8BAA8B,GAAG,IAAI,CAEvC;AAED,wBAAgB,sCAAsC,CACpD,IAAI,EAAE,SAAS,OAAO,EAAE,GACvB,8BAA8B,EAAE,CAsBlC;AAED,wBAAgB,mCAAmC,CACjD,KAAK,EAAE,YAAY,EACnB,UAAU,EAAE,SAAS,8BAA8B,EAAE,GACpD,8BAA8B,EAAE,CAelC"}
@@ -71,16 +71,18 @@ export function collectBabylonProjectionPickCandidates(hits) {
71
71
  if (!readHitFlag(hit) || !pickedNode)
72
72
  continue;
73
73
  const projection = findEditorProjectionMetadata(pickedNode);
74
- if (!projection)
74
+ const markerRowId = resolveBabylonMarkerOverlaySelectionNodeId(pickedNode);
75
+ if (!projection && !markerRowId)
75
76
  continue;
76
- const selectionNodeId = resolveBabylonPickSelectionNodeId(pickedNode);
77
+ const selectionNodeId = markerRowId ?? resolveBabylonPickSelectionNodeId(pickedNode);
77
78
  if (!selectionNodeId)
78
79
  continue;
79
80
  candidates.push({
80
81
  hit,
81
82
  node: pickedNode,
82
- projection,
83
+ projection: projection ?? { nodeId: selectionNodeId, runtimeKind: 'markerOverlay' },
83
84
  selectionNodeId,
85
+ editorOverlayPriority: markerRowId ? 1 : 0,
84
86
  renderingGroupId: readRenderingGroupId(pickedNode),
85
87
  alphaIndex: readAlphaIndex(pickedNode),
86
88
  distance: readPickDistance(hit),
@@ -98,7 +100,8 @@ export function sortBabylonProjectionPickCandidates(scene, candidates) {
98
100
  return [...candidates].sort((left, right) => {
99
101
  const rightTier = readDepthVisibilityTier(scene, right, nearestDistance, depthTolerance);
100
102
  const leftTier = readDepthVisibilityTier(scene, left, nearestDistance, depthTolerance);
101
- return rightTier - leftTier
103
+ return right.editorOverlayPriority - left.editorOverlayPriority
104
+ || rightTier - leftTier
102
105
  || right.renderingGroupId - left.renderingGroupId
103
106
  || right.alphaIndex - left.alphaIndex
104
107
  || left.distance - right.distance;
@@ -145,6 +148,19 @@ function findEditorProjectionMetadata(target) {
145
148
  }
146
149
  return null;
147
150
  }
151
+ function resolveBabylonMarkerOverlaySelectionNodeId(target) {
152
+ let current = target;
153
+ while (current) {
154
+ if (current.metadata?.editorMarkerLabel === true)
155
+ return null;
156
+ const markerRowId = current.metadata?.editorMarkerRowId;
157
+ if (current.metadata?.editorMarkerOverlay === true && typeof markerRowId === 'string' && markerRowId.length > 0) {
158
+ return markerRowId;
159
+ }
160
+ current = current.parent ?? null;
161
+ }
162
+ return null;
163
+ }
148
164
  function readPickedNode(hit) {
149
165
  const pick = hit;
150
166
  return pick?.pickedMesh ?? pick?.pickedPoint?.mesh ?? null;