@carbonenginejs/runtime-trinity 0.4.0 → 0.4.3

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 (953) hide show
  1. package/README.md +139 -7
  2. package/dist/controllers/Tr2ActionSetExternalControllerVariable.js +1 -1
  3. package/dist/controllers/Tr2ActionSetExternalControllerVariable.js.map +1 -1
  4. package/dist/controllers/Tr2BindingPoint.js +1 -1
  5. package/dist/controllers/Tr2BindingPoint.js.map +1 -1
  6. package/dist/controllers/Tr2ControllerExpression.js +7 -7
  7. package/dist/controllers/Tr2ControllerExpression.js.map +1 -1
  8. package/dist/curves/CjsGrannyCurves.js +116 -1
  9. package/dist/curves/CjsGrannyCurves.js.map +1 -1
  10. package/dist/curves/Tr2BoneMatrixCurve.js +59 -4
  11. package/dist/curves/Tr2BoneMatrixCurve.js.map +1 -1
  12. package/dist/curves/Tr2CurveRandomAxisRotation.js +4 -3
  13. package/dist/curves/Tr2CurveRandomAxisRotation.js.map +1 -1
  14. package/dist/curves/Tr2GrannyTrack.js +1 -1
  15. package/dist/curves/Tr2GrannyTrack.js.map +1 -1
  16. package/dist/curves/Tr2MatrixKey.js +1 -1
  17. package/dist/curves/Tr2MatrixKey.js.map +1 -1
  18. package/dist/curves/Tr2ScalarExprKey.js +106 -103
  19. package/dist/curves/Tr2ScalarExprKey.js.map +1 -1
  20. package/dist/curves/TriColorSequencer.js +86 -0
  21. package/dist/curves/TriColorSequencer.js.map +1 -0
  22. package/dist/curves/TriEventCurve.js +1 -1
  23. package/dist/curves/TriEventCurve.js.map +1 -1
  24. package/dist/curves/TriPerlinCurve.js +2 -49
  25. package/dist/curves/TriPerlinCurve.js.map +1 -1
  26. package/dist/curves/TriVectorSequencer.js +103 -0
  27. package/dist/curves/TriVectorSequencer.js.map +1 -0
  28. package/dist/curves/index.js +2 -0
  29. package/dist/curves/index.js.map +1 -1
  30. package/dist/eve/AudioGameObject.js +121 -0
  31. package/dist/eve/AudioGameObject.js.map +1 -0
  32. package/dist/eve/CjsDistributionRandom.js +39 -0
  33. package/dist/eve/CjsDistributionRandom.js.map +1 -0
  34. package/dist/eve/EveBannerItem.js +6 -2
  35. package/dist/eve/EveBannerItem.js.map +1 -1
  36. package/dist/eve/EveBannerLight.js +9 -12
  37. package/dist/eve/EveBannerLight.js.map +1 -1
  38. package/dist/eve/EveBannerSet.js +2 -1
  39. package/dist/eve/EveBannerSet.js.map +1 -1
  40. package/dist/eve/EveBoosterSet2.js +2 -2
  41. package/dist/eve/EveBoosterSet2.js.map +1 -1
  42. package/dist/eve/EveHazeSet.js +2 -1
  43. package/dist/eve/EveHazeSet.js.map +1 -1
  44. package/dist/eve/EveHazeSetLight.js +9 -12
  45. package/dist/eve/EveHazeSetLight.js.map +1 -1
  46. package/dist/eve/EveParticleDirectForce.js +25 -0
  47. package/dist/eve/EveParticleDirectForce.js.map +1 -0
  48. package/dist/eve/EveParticleDragForce.js +25 -0
  49. package/dist/eve/EveParticleDragForce.js.map +1 -0
  50. package/dist/eve/EveParticleSpring.js +26 -0
  51. package/dist/eve/EveParticleSpring.js.map +1 -0
  52. package/dist/eve/EvePlaneLight.js +9 -15
  53. package/dist/eve/EvePlaneLight.js.map +1 -1
  54. package/dist/eve/EvePlaneSet.js +2 -1
  55. package/dist/eve/EvePlaneSet.js.map +1 -1
  56. package/dist/eve/EvePlaneSetItem.js +1 -1
  57. package/dist/eve/EvePlaneSetItem.js.map +1 -1
  58. package/dist/eve/EveSpaceObjectDecal.js +1 -1
  59. package/dist/eve/EveSpaceObjectDecal.js.map +1 -1
  60. package/dist/eve/EveSpacePerObjectData.js +14 -4
  61. package/dist/eve/EveSpacePerObjectData.js.map +1 -1
  62. package/dist/eve/EveSpotlightLight.js +9 -12
  63. package/dist/eve/EveSpotlightLight.js.map +1 -1
  64. package/dist/eve/EveSpotlightSet.js +2 -1
  65. package/dist/eve/EveSpotlightSet.js.map +1 -1
  66. package/dist/eve/EveSpriteLight.js +9 -15
  67. package/dist/eve/EveSpriteLight.js.map +1 -1
  68. package/dist/eve/EveSpriteLineSet.js +2 -1
  69. package/dist/eve/EveSpriteLineSet.js.map +1 -1
  70. package/dist/eve/EveSpriteLineSetItem.js +1 -1
  71. package/dist/eve/EveSpriteLineSetItem.js.map +1 -1
  72. package/dist/eve/EveSpriteSet.js +2 -1
  73. package/dist/eve/EveSpriteSet.js.map +1 -1
  74. package/dist/eve/EveTrailsSet.js +1 -1
  75. package/dist/eve/EveTrailsSet.js.map +1 -1
  76. package/dist/eve/EveUpdateContext.js.map +1 -1
  77. package/dist/eve/Locator.js +2 -2
  78. package/dist/eve/Locator.js.map +1 -1
  79. package/dist/eve/attachment/decal/DecalMeshCache.js +47 -0
  80. package/dist/eve/attachment/decal/DecalMeshCache.js.map +1 -0
  81. package/dist/eve/attachment/turrets/EveTurretFiringFX.js +402 -0
  82. package/dist/eve/attachment/turrets/EveTurretFiringFX.js.map +1 -0
  83. package/dist/eve/attachment/turrets/EveTurretSet.js +746 -0
  84. package/dist/eve/attachment/turrets/EveTurretSet.js.map +1 -0
  85. package/dist/{generated/eve → eve}/attachment/turrets/EveTurretSetPSData.js +6 -4
  86. package/dist/eve/attachment/turrets/EveTurretSetPSData.js.map +1 -0
  87. package/dist/{generated/eve → eve}/attachment/turrets/EveTurretSetVSData.js +12 -8
  88. package/dist/eve/attachment/turrets/EveTurretSetVSData.js.map +1 -0
  89. package/dist/eve/attachment/turrets/EveTurretTarget.js +216 -0
  90. package/dist/eve/attachment/turrets/EveTurretTarget.js.map +1 -0
  91. package/dist/eve/child/EveChildAudio.js +89 -0
  92. package/dist/eve/child/EveChildAudio.js.map +1 -0
  93. package/dist/eve/child/EveChildContainer.js +501 -10
  94. package/dist/eve/child/EveChildContainer.js.map +1 -1
  95. package/dist/eve/child/EveChildEffectPropagator.js +600 -0
  96. package/dist/eve/child/EveChildEffectPropagator.js.map +1 -0
  97. package/dist/eve/child/EveChildFogVolume.js +170 -0
  98. package/dist/eve/child/EveChildFogVolume.js.map +1 -0
  99. package/dist/{generated/eve → eve}/child/EveChildInstanceTransform.js +1 -1
  100. package/dist/eve/child/EveChildInstanceTransform.js.map +1 -0
  101. package/dist/eve/child/EveChildInstancedMeshes.js +2 -2
  102. package/dist/eve/child/EveChildInstancedMeshes.js.map +1 -1
  103. package/dist/eve/child/EveChildLightingOverride.js +146 -0
  104. package/dist/eve/child/EveChildLightingOverride.js.map +1 -0
  105. package/dist/eve/child/EveChildMesh.js +526 -9
  106. package/dist/eve/child/EveChildMesh.js.map +1 -1
  107. package/dist/eve/child/EveChildTransform.js +13 -8
  108. package/dist/eve/child/EveChildTransform.js.map +1 -1
  109. package/dist/{generated/eve → eve}/child/EveCloudVolumeBall.js +1 -1
  110. package/dist/eve/child/EveCloudVolumeBall.js.map +1 -0
  111. package/dist/{generated/eve → eve}/child/behaviors/DroneAgent.js +1 -1
  112. package/dist/eve/child/behaviors/DroneAgent.js.map +1 -0
  113. package/dist/{generated/eve → eve}/child/behaviors/SplineTunnel.js +1 -1
  114. package/dist/eve/child/behaviors/SplineTunnel.js.map +1 -0
  115. package/dist/{generated/eve → eve}/child/behaviors/SplineTunnelPoint.js +1 -1
  116. package/dist/eve/child/behaviors/SplineTunnelPoint.js.map +1 -0
  117. package/dist/eve/child/lineSetPaths/EveBezierCurve.js +2 -1
  118. package/dist/eve/child/lineSetPaths/EveBezierCurve.js.map +1 -1
  119. package/dist/eve/child/lineSetPaths/EveCircle.js +2 -1
  120. package/dist/eve/child/lineSetPaths/EveCircle.js.map +1 -1
  121. package/dist/eve/child/modifiers/EveChildModifierBooster.js +6 -4
  122. package/dist/eve/child/modifiers/EveChildModifierBooster.js.map +1 -1
  123. package/dist/eve/child/modifiers/EveChildModifierCameraOrientedRotationConstrained.js +3 -2
  124. package/dist/eve/child/modifiers/EveChildModifierCameraOrientedRotationConstrained.js.map +1 -1
  125. package/dist/eve/child/modifiers/EveChildModifierHaloInverted.js +5 -3
  126. package/dist/eve/child/modifiers/EveChildModifierHaloInverted.js.map +1 -1
  127. package/dist/eve/child/modifiers/EveChildModifierSRT.js +6 -4
  128. package/dist/eve/child/modifiers/EveChildModifierSRT.js.map +1 -1
  129. package/dist/eve/child/modifiers/EveChildModifierTransformCommon.js +7 -2
  130. package/dist/eve/child/modifiers/EveChildModifierTransformCommon.js.map +1 -1
  131. package/dist/{generated/eve → eve}/distribution/attributeModifiers/InitialPlacement.js +1 -1
  132. package/dist/eve/distribution/attributeModifiers/InitialPlacement.js.map +1 -0
  133. package/dist/eve/index.js +47 -1
  134. package/dist/eve/index.js.map +1 -1
  135. package/dist/{generated/eve/lights/LightData.js → eve/lights/CjsLightData.js} +59 -44
  136. package/dist/eve/lights/CjsLightData.js.map +1 -0
  137. package/dist/{generated/eve → eve}/lights/LightFeatures.js +1 -1
  138. package/dist/eve/lights/LightFeatures.js.map +1 -0
  139. package/dist/eve/lights/Tr2Light.js +30 -38
  140. package/dist/eve/lights/Tr2Light.js.map +1 -1
  141. package/dist/eve/lights/Tr2PointLight.js +37 -15
  142. package/dist/eve/lights/Tr2PointLight.js.map +1 -1
  143. package/dist/eve/lights/Tr2SpotLight.js +41 -15
  144. package/dist/eve/lights/Tr2SpotLight.js.map +1 -1
  145. package/dist/eve/lights/Tr2TexturedPointLight.js +10 -31
  146. package/dist/eve/lights/Tr2TexturedPointLight.js.map +1 -1
  147. package/dist/eve/perObjectData/DecalPSPerObjectData.js +56 -0
  148. package/dist/eve/perObjectData/DecalPSPerObjectData.js.map +1 -0
  149. package/dist/eve/perObjectData/EveMissileWarheadPerObjectData.js +31 -0
  150. package/dist/eve/perObjectData/EveMissileWarheadPerObjectData.js.map +1 -0
  151. package/dist/{generated/eve → eve}/perObjectData/EveTurretSetPerObjectData.js +5 -3
  152. package/dist/eve/perObjectData/EveTurretSetPerObjectData.js.map +1 -0
  153. package/dist/{generated/eve → eve}/perObjectData/MergeMorphsConstantBuffer.js +1 -1
  154. package/dist/eve/perObjectData/MergeMorphsConstantBuffer.js.map +1 -0
  155. package/dist/eve/renderable/stretch/CjsStretchRuntime.js +129 -0
  156. package/dist/eve/renderable/stretch/CjsStretchRuntime.js.map +1 -0
  157. package/dist/eve/renderable/stretch/EveFiringEffectElementContainer.js +114 -0
  158. package/dist/eve/renderable/stretch/EveFiringEffectElementContainer.js.map +1 -0
  159. package/dist/eve/renderable/stretch/EveLocalPositionCurve.js +200 -0
  160. package/dist/eve/renderable/stretch/EveLocalPositionCurve.js.map +1 -0
  161. package/dist/eve/{EveRemotePositionCurve.js → renderable/stretch/EveRemotePositionCurve.js} +2 -2
  162. package/dist/eve/renderable/stretch/EveRemotePositionCurve.js.map +1 -0
  163. package/dist/eve/renderable/stretch/EveStretch.js +283 -0
  164. package/dist/eve/renderable/stretch/EveStretch.js.map +1 -0
  165. package/dist/eve/renderable/stretch/EveStretch2.js +175 -0
  166. package/dist/eve/renderable/stretch/EveStretch2.js.map +1 -0
  167. package/dist/eve/renderable/stretch/EveStretch3.js +312 -0
  168. package/dist/eve/renderable/stretch/EveStretch3.js.map +1 -0
  169. package/dist/eve/scene/EveSpaceScene.js +38 -11
  170. package/dist/eve/scene/EveSpaceScene.js.map +1 -1
  171. package/dist/eve/socket/EveSocketParameterFilePath.js +26 -0
  172. package/dist/eve/socket/EveSocketParameterFilePath.js.map +1 -0
  173. package/dist/eve/spaceObject/EveEffectRoot2.js +663 -0
  174. package/dist/eve/spaceObject/EveEffectRoot2.js.map +1 -0
  175. package/dist/eve/spaceObject/EveMissile.js +165 -0
  176. package/dist/eve/spaceObject/EveMissile.js.map +1 -0
  177. package/dist/eve/spaceObject/EveMissileWarhead.js +318 -0
  178. package/dist/eve/spaceObject/EveMissileWarhead.js.map +1 -0
  179. package/dist/eve/spaceObject/EveMobile.js +268 -0
  180. package/dist/eve/spaceObject/EveMobile.js.map +1 -0
  181. package/dist/eve/spaceObject/EveRootTransform.js +182 -0
  182. package/dist/eve/spaceObject/EveRootTransform.js.map +1 -0
  183. package/dist/eve/spaceObject/EveSpaceObject2.js +685 -15
  184. package/dist/eve/spaceObject/EveSpaceObject2.js.map +1 -1
  185. package/dist/eve/spaceObject/EveTransform.js +264 -0
  186. package/dist/eve/spaceObject/EveTransform.js.map +1 -0
  187. package/dist/{generated/eve → eve}/spaceObject/swarm/SwarmVehicle.js +1 -1
  188. package/dist/eve/spaceObject/swarm/SwarmVehicle.js.map +1 -0
  189. package/dist/{generated/eve → eve}/spaceObject/swarm/SwarmVehicleDebug.js +1 -1
  190. package/dist/eve/spaceObject/swarm/SwarmVehicleDebug.js.map +1 -0
  191. package/dist/{generated/eve → eve}/ui/EveEllipseDefinition.js +17 -16
  192. package/dist/eve/ui/EveEllipseDefinition.js.map +1 -0
  193. package/dist/{generated/eve → eve}/ui/EveEllipseSet.js +42 -32
  194. package/dist/eve/ui/EveEllipseSet.js.map +1 -0
  195. package/dist/eve/ui/EveSprite2dBracket.js +75 -0
  196. package/dist/eve/ui/EveSprite2dBracket.js.map +1 -0
  197. package/dist/eve/ui/EveUiObject.js +58 -0
  198. package/dist/eve/ui/EveUiObject.js.map +1 -0
  199. package/dist/eve/volume/EveBoxVolume.js +47 -1
  200. package/dist/eve/volume/EveBoxVolume.js.map +1 -1
  201. package/dist/eve/volume/EveEllipsoidVolume.js +28 -1
  202. package/dist/eve/volume/EveEllipsoidVolume.js.map +1 -1
  203. package/dist/eve/volume/EveSphereVolume.js +24 -1
  204. package/dist/eve/volume/EveSphereVolume.js.map +1 -1
  205. package/dist/generated/{trinityCore → curves}/Tr2VectorFunctionModifier.js +2 -2
  206. package/dist/generated/curves/Tr2VectorFunctionModifier.js.map +1 -0
  207. package/dist/generated/curves/index.js +1 -3
  208. package/dist/generated/curves/index.js.map +1 -1
  209. package/dist/generated/eve/EveCamera.js +100 -21
  210. package/dist/generated/eve/EveCamera.js.map +1 -1
  211. package/dist/generated/eve/EveEntity.js +59 -12
  212. package/dist/generated/eve/EveEntity.js.map +1 -1
  213. package/dist/generated/eve/attachment/decal/index.js +1 -1
  214. package/dist/generated/eve/attachment/index.js +0 -6
  215. package/dist/generated/eve/attachment/index.js.map +1 -1
  216. package/dist/generated/eve/attachment/turrets/enums.js.map +1 -1
  217. package/dist/generated/eve/attachment/turrets/index.js +0 -5
  218. package/dist/generated/eve/attachment/turrets/index.js.map +1 -1
  219. package/dist/generated/eve/child/EveChildBehaviorSystem.js +319 -7
  220. package/dist/generated/eve/child/EveChildBehaviorSystem.js.map +1 -1
  221. package/dist/generated/eve/child/EveChildBulletStorm.js +67 -13
  222. package/dist/generated/eve/child/EveChildBulletStorm.js.map +1 -1
  223. package/dist/generated/eve/child/EveChildExplosion.js +100 -13
  224. package/dist/generated/eve/child/EveChildExplosion.js.map +1 -1
  225. package/dist/generated/eve/child/EveChildInstanceContainer.js +14 -8
  226. package/dist/generated/eve/child/EveChildInstanceContainer.js.map +1 -1
  227. package/dist/generated/eve/child/EveChildLineSet.js +3 -3
  228. package/dist/generated/eve/child/EveChildLineSet.js.map +1 -1
  229. package/dist/generated/eve/child/EveChildLink.js +218 -36
  230. package/dist/generated/eve/child/EveChildLink.js.map +1 -1
  231. package/dist/generated/eve/child/EveChildParticleSphere.js +40 -4
  232. package/dist/generated/eve/child/EveChildParticleSphere.js.map +1 -1
  233. package/dist/generated/eve/child/EveChildParticleSystem.js +274 -10
  234. package/dist/generated/eve/child/EveChildParticleSystem.js.map +1 -1
  235. package/dist/generated/eve/child/EveChildPlug.js +14 -8
  236. package/dist/generated/eve/child/EveChildPlug.js.map +1 -1
  237. package/dist/generated/eve/child/EveChildPostProcessVolume.js +217 -32
  238. package/dist/generated/eve/child/EveChildPostProcessVolume.js.map +1 -1
  239. package/dist/generated/eve/child/EveChildQuad.js +290 -38
  240. package/dist/generated/eve/child/EveChildQuad.js.map +1 -1
  241. package/dist/generated/eve/child/EveChildRef.js +19 -12
  242. package/dist/generated/eve/child/EveChildRef.js.map +1 -1
  243. package/dist/generated/eve/child/EveChildSocket.js +36 -14
  244. package/dist/generated/eve/child/EveChildSocket.js.map +1 -1
  245. package/dist/generated/eve/child/EveCloudEditableVolume.js.map +1 -1
  246. package/dist/generated/eve/child/behaviors/Allign.js +114 -9
  247. package/dist/generated/eve/child/behaviors/Allign.js.map +1 -1
  248. package/dist/generated/eve/child/behaviors/ApproachGroup.js +117 -9
  249. package/dist/generated/eve/child/behaviors/ApproachGroup.js.map +1 -1
  250. package/dist/generated/eve/child/behaviors/BackAndForth.js +195 -7
  251. package/dist/generated/eve/child/behaviors/BackAndForth.js.map +1 -1
  252. package/dist/generated/eve/child/behaviors/BehaviorGroup.js +672 -17
  253. package/dist/generated/eve/child/behaviors/BehaviorGroup.js.map +1 -1
  254. package/dist/generated/eve/child/behaviors/BehaviorGroupBooster.js +223 -75
  255. package/dist/generated/eve/child/behaviors/BehaviorGroupBooster.js.map +1 -1
  256. package/dist/generated/eve/child/behaviors/CollisionAvoidance.js +54 -9
  257. package/dist/generated/eve/child/behaviors/CollisionAvoidance.js.map +1 -1
  258. package/dist/generated/eve/child/behaviors/DroneAvoidance.js +134 -9
  259. package/dist/generated/eve/child/behaviors/DroneAvoidance.js.map +1 -1
  260. package/dist/generated/eve/child/behaviors/EveKDdroneManagementTree.js +302 -9
  261. package/dist/generated/eve/child/behaviors/EveKDdroneManagementTree.js.map +1 -1
  262. package/dist/generated/eve/child/behaviors/FollowASpline.js +336 -12
  263. package/dist/generated/eve/child/behaviors/FollowASpline.js.map +1 -1
  264. package/dist/generated/eve/child/behaviors/Formation.js +304 -9
  265. package/dist/generated/eve/child/behaviors/Formation.js.map +1 -1
  266. package/dist/generated/eve/child/behaviors/InclusionVolume.js +70 -9
  267. package/dist/generated/eve/child/behaviors/InclusionVolume.js.map +1 -1
  268. package/dist/generated/eve/child/behaviors/Inertia.js +101 -9
  269. package/dist/generated/eve/child/behaviors/Inertia.js.map +1 -1
  270. package/dist/generated/eve/child/behaviors/PlayFX.js +208 -9
  271. package/dist/generated/eve/child/behaviors/PlayFX.js.map +1 -1
  272. package/dist/generated/eve/child/behaviors/ProcessLifetime.js +412 -9
  273. package/dist/generated/eve/child/behaviors/ProcessLifetime.js.map +1 -1
  274. package/dist/generated/eve/child/behaviors/SeekTarget.js +102 -18
  275. package/dist/generated/eve/child/behaviors/SeekTarget.js.map +1 -1
  276. package/dist/generated/eve/child/behaviors/SpawnDrones.js +111 -3
  277. package/dist/generated/eve/child/behaviors/SpawnDrones.js.map +1 -1
  278. package/dist/generated/eve/child/behaviors/SplineTunnelGroup.js +114 -11
  279. package/dist/generated/eve/child/behaviors/SplineTunnelGroup.js.map +1 -1
  280. package/dist/generated/eve/child/behaviors/Wander.js +52 -9
  281. package/dist/generated/eve/child/behaviors/Wander.js.map +1 -1
  282. package/dist/generated/eve/child/behaviors/enums.js.map +1 -1
  283. package/dist/generated/eve/child/behaviors/index.js +0 -3
  284. package/dist/generated/eve/child/behaviors/index.js.map +1 -1
  285. package/dist/generated/eve/child/enums.js.map +1 -1
  286. package/dist/generated/eve/child/index.js +0 -9
  287. package/dist/generated/eve/child/index.js.map +1 -1
  288. package/dist/generated/eve/child/modifiers/EveChildModifierAttachToBone.js +66 -22
  289. package/dist/generated/eve/child/modifiers/EveChildModifierAttachToBone.js.map +1 -1
  290. package/dist/generated/eve/child/modifiers/EveChildModifierBillboard3D.js +117 -21
  291. package/dist/generated/eve/child/modifiers/EveChildModifierBillboard3D.js.map +1 -1
  292. package/dist/generated/eve/child/modifiers/EveChildModifierStretch.js +87 -22
  293. package/dist/generated/eve/child/modifiers/EveChildModifierStretch.js.map +1 -1
  294. package/dist/generated/eve/child/modifiers/EveChildModifierTranslateWithCamera.js +37 -5
  295. package/dist/generated/eve/child/modifiers/EveChildModifierTranslateWithCamera.js.map +1 -1
  296. package/dist/generated/eve/child/procedural/EveChildProceduralContainer.js +298 -48
  297. package/dist/generated/eve/child/procedural/EveChildProceduralContainer.js.map +1 -1
  298. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodAttributeMap.js +76 -4
  299. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodAttributeMap.js.map +1 -1
  300. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodAttributeMapParameter.js +58 -4
  301. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodAttributeMapParameter.js.map +1 -1
  302. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodCycling.js +92 -5
  303. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodCycling.js.map +1 -1
  304. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodCyclingParameter.js +78 -4
  305. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodCyclingParameter.js.map +1 -1
  306. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodRandom.js +137 -4
  307. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodRandom.js.map +1 -1
  308. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodRandomParameter.js +73 -4
  309. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodRandomParameter.js.map +1 -1
  310. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodThresholdParameter.js +63 -4
  311. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodThresholdParameter.js.map +1 -1
  312. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodThresholds.js +123 -4
  313. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodThresholds.js.map +1 -1
  314. package/dist/generated/eve/distribution/EveBaseDistributionMethod.js +360 -45
  315. package/dist/generated/eve/distribution/EveBaseDistributionMethod.js.map +1 -1
  316. package/dist/generated/eve/distribution/attributeModifiers/EveDistributionModifierProcessLifetime.js +11 -5
  317. package/dist/generated/eve/distribution/attributeModifiers/EveDistributionModifierProcessLifetime.js.map +1 -1
  318. package/dist/generated/eve/distribution/attributeModifiers/EveDistributionModifierScaleBySpaceObjectParent.js +27 -5
  319. package/dist/generated/eve/distribution/attributeModifiers/EveDistributionModifierScaleBySpaceObjectParent.js.map +1 -1
  320. package/dist/generated/eve/distribution/attributeModifiers/EveDistributionModifierTransformOffset.js +36 -5
  321. package/dist/generated/eve/distribution/attributeModifiers/EveDistributionModifierTransformOffset.js.map +1 -1
  322. package/dist/generated/eve/distribution/attributeModifiers/index.js +0 -1
  323. package/dist/generated/eve/distribution/attributeModifiers/index.js.map +1 -1
  324. package/dist/generated/eve/distribution/index.js +0 -1
  325. package/dist/generated/eve/distribution/index.js.map +1 -1
  326. package/dist/generated/eve/distribution/placement/EveDistributionPlacementGeneratorLocators.js +30 -4
  327. package/dist/generated/eve/distribution/placement/EveDistributionPlacementGeneratorLocators.js.map +1 -1
  328. package/dist/generated/eve/distribution/placement/EveDistributionPlacementGeneratorParentLocators.js +59 -4
  329. package/dist/generated/eve/distribution/placement/EveDistributionPlacementGeneratorParentLocators.js.map +1 -1
  330. package/dist/generated/eve/distribution/placement/EveDistributionPlacementGeneratorVolume.js +67 -4
  331. package/dist/generated/eve/distribution/placement/EveDistributionPlacementGeneratorVolume.js.map +1 -1
  332. package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierLifeTimeOffset.js +26 -4
  333. package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierLifeTimeOffset.js.map +1 -1
  334. package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomOffset.js +25 -4
  335. package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomOffset.js.map +1 -1
  336. package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomRotation.js +28 -4
  337. package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomRotation.js.map +1 -1
  338. package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomScale.js +28 -4
  339. package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomScale.js.map +1 -1
  340. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerBurst.js +27 -4
  341. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerBurst.js.map +1 -1
  342. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerControllerTrigger.js +40 -5
  343. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerControllerTrigger.js.map +1 -1
  344. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerInterval.js +27 -4
  345. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerInterval.js.map +1 -1
  346. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerTriggerPlane.js +65 -4
  347. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerTriggerPlane.js.map +1 -1
  348. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerTriggerSnake.js +55 -4
  349. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerTriggerSnake.js.map +1 -1
  350. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerTriggerSphere.js +63 -4
  351. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerTriggerSphere.js.map +1 -1
  352. package/dist/generated/eve/effect/EveLensflare.js +11 -6
  353. package/dist/generated/eve/effect/EveLensflare.js.map +1 -1
  354. package/dist/generated/eve/effect/EveMultiEffect.js +24 -11
  355. package/dist/generated/eve/effect/EveMultiEffect.js.map +1 -1
  356. package/dist/generated/eve/enums.js.map +1 -1
  357. package/dist/generated/eve/index.js +9 -43
  358. package/dist/generated/eve/index.js.map +1 -1
  359. package/dist/generated/eve/lights/Tr2FactionLight.js +116 -26
  360. package/dist/generated/eve/lights/Tr2FactionLight.js.map +1 -1
  361. package/dist/generated/eve/lights/index.js +0 -2
  362. package/dist/generated/eve/lights/index.js.map +1 -1
  363. package/dist/generated/eve/overlays/EveMeshOverlayEffect.js.map +1 -1
  364. package/dist/generated/eve/perObjectData/index.js +0 -3
  365. package/dist/generated/eve/perObjectData/index.js.map +1 -1
  366. package/dist/generated/eve/renderable/index.js +0 -5
  367. package/dist/generated/eve/renderable/index.js.map +1 -1
  368. package/dist/generated/eve/renderable/stretch/enums.js.map +1 -1
  369. package/dist/generated/eve/renderable/stretch/index.js +0 -5
  370. package/dist/generated/eve/renderable/stretch/index.js.map +1 -1
  371. package/dist/generated/eve/scene/EveComponentCollection.js +32 -5
  372. package/dist/generated/eve/scene/EveComponentCollection.js.map +1 -1
  373. package/dist/generated/eve/scene/EveComponentRegistry.js +106 -5
  374. package/dist/generated/eve/scene/EveComponentRegistry.js.map +1 -1
  375. package/dist/generated/eve/scene/EveSceneStaticParticles.js +117 -11
  376. package/dist/generated/eve/scene/EveSceneStaticParticles.js.map +1 -1
  377. package/dist/generated/eve/scene/EveSpaceSceneRenderDriver.js +2 -2
  378. package/dist/generated/eve/scene/EveSpaceSceneRenderDriver.js.map +1 -1
  379. package/dist/generated/eve/scene/index.js +0 -2
  380. package/dist/generated/eve/scene/index.js.map +1 -1
  381. package/dist/generated/eve/smartLights/EveChildSmartLightSet.js +191 -28
  382. package/dist/generated/eve/smartLights/EveChildSmartLightSet.js.map +1 -1
  383. package/dist/generated/eve/smartLights/EveSmartLightBaseGroup.js +78 -10
  384. package/dist/generated/eve/smartLights/EveSmartLightBaseGroup.js.map +1 -1
  385. package/dist/generated/eve/smartLights/EveSmartLightColorShareGroup.js +220 -26
  386. package/dist/generated/eve/smartLights/EveSmartLightColorShareGroup.js.map +1 -1
  387. package/dist/generated/eve/smartLights/EveSmartLightPointLight.js +290 -40
  388. package/dist/generated/eve/smartLights/EveSmartLightPointLight.js.map +1 -1
  389. package/dist/generated/eve/smartLights/EveSmartLightQuad.js +293 -36
  390. package/dist/generated/eve/smartLights/EveSmartLightQuad.js.map +1 -1
  391. package/dist/generated/eve/smartLights/EveSmartLightSpotLight.js +33 -13
  392. package/dist/generated/eve/smartLights/EveSmartLightSpotLight.js.map +1 -1
  393. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierBucket.js +70 -5
  394. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierBucket.js.map +1 -1
  395. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierCameraDependency.js +184 -70
  396. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierCameraDependency.js.map +1 -1
  397. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierColor.js +68 -9
  398. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierColor.js.map +1 -1
  399. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierControllerVariableListener.js +63 -9
  400. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierControllerVariableListener.js.map +1 -1
  401. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierExpressionBucket.js +253 -26
  402. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierExpressionBucket.js.map +1 -1
  403. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierNoise.js +37 -9
  404. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierNoise.js.map +1 -1
  405. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightBaseAttributeModifier.js +145 -9
  406. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightBaseAttributeModifier.js.map +1 -1
  407. package/dist/generated/eve/smartLights/attributeModifiers/enums.js.map +1 -1
  408. package/dist/generated/eve/smartLights/index.js +1 -1
  409. package/dist/generated/eve/socket/EveSocketParameterBindingBase.js +33 -5
  410. package/dist/generated/eve/socket/EveSocketParameterBindingBase.js.map +1 -1
  411. package/dist/generated/eve/socket/EveSocketParameterBool.js +56 -0
  412. package/dist/generated/eve/socket/EveSocketParameterBool.js.map +1 -0
  413. package/dist/generated/eve/socket/EveSocketParameterColor.js +68 -0
  414. package/dist/generated/eve/socket/EveSocketParameterColor.js.map +1 -0
  415. package/dist/generated/eve/socket/EveSocketParameterFloat.js +56 -0
  416. package/dist/generated/eve/socket/EveSocketParameterFloat.js.map +1 -0
  417. package/dist/generated/eve/socket/EveSocketParameterInt.js +56 -0
  418. package/dist/generated/eve/socket/EveSocketParameterInt.js.map +1 -0
  419. package/dist/generated/eve/socket/EveSocketParameterString.js +54 -5
  420. package/dist/generated/eve/socket/EveSocketParameterString.js.map +1 -1
  421. package/dist/generated/eve/socket/EveSocketParameterVector2.js +64 -0
  422. package/dist/generated/eve/socket/EveSocketParameterVector2.js.map +1 -0
  423. package/dist/generated/eve/socket/EveSocketParameterVector3.js +64 -0
  424. package/dist/generated/eve/socket/EveSocketParameterVector3.js.map +1 -0
  425. package/dist/generated/eve/socket/EveSocketParameterVector4.js +64 -0
  426. package/dist/generated/eve/socket/EveSocketParameterVector4.js.map +1 -0
  427. package/dist/generated/eve/socket/index.js +7 -1
  428. package/dist/generated/eve/socket/index.js.map +1 -1
  429. package/dist/generated/eve/spaceObject/EvePlanet.js +1 -1
  430. package/dist/generated/eve/spaceObject/EvePlanet.js.map +1 -1
  431. package/dist/generated/eve/spaceObject/EveShip2.js +174 -11
  432. package/dist/generated/eve/spaceObject/EveShip2.js.map +1 -1
  433. package/dist/generated/eve/spaceObject/enums.js.map +1 -1
  434. package/dist/generated/eve/spaceObject/index.js +0 -8
  435. package/dist/generated/eve/spaceObject/index.js.map +1 -1
  436. package/dist/generated/eve/spaceObject/swarm/EveSwarm.js +77 -15
  437. package/dist/generated/eve/spaceObject/swarm/EveSwarm.js.map +1 -1
  438. package/dist/generated/eve/spaceObject/swarm/EveSwarmRenderable.js +56 -7
  439. package/dist/generated/eve/spaceObject/swarm/EveSwarmRenderable.js.map +1 -1
  440. package/dist/generated/eve/spaceObject/swarm/index.js +0 -2
  441. package/dist/generated/eve/spaceObject/swarm/index.js.map +1 -1
  442. package/dist/generated/eve/ui/EveLineSet.js +49 -19
  443. package/dist/generated/eve/ui/EveLineSet.js.map +1 -1
  444. package/dist/generated/{trinityCore → eve/ui}/EveSprite2dBracketRenderer.js +3 -3
  445. package/dist/generated/eve/ui/EveSprite2dBracketRenderer.js.map +1 -0
  446. package/dist/generated/eve/ui/EveTacticalTrails.js +20 -8
  447. package/dist/generated/eve/ui/EveTacticalTrails.js.map +1 -1
  448. package/dist/generated/eve/ui/enums.js.map +1 -1
  449. package/dist/generated/eve/ui/index.js +1 -4
  450. package/dist/generated/eve/ui/index.js.map +1 -1
  451. package/dist/generated/include/enums.js.map +1 -1
  452. package/dist/generated/include/index.js +0 -9
  453. package/dist/generated/include/index.js.map +1 -1
  454. package/dist/generated/index.js +14 -116
  455. package/dist/generated/index.js.map +1 -1
  456. package/dist/generated/particle/ITr2GenericEmitter.js +31 -1
  457. package/dist/generated/particle/ITr2GenericEmitter.js.map +1 -1
  458. package/dist/generated/particle/Tr2CapsuleShapeAttributeGenerator.js +114 -64
  459. package/dist/generated/particle/Tr2CapsuleShapeAttributeGenerator.js.map +1 -1
  460. package/dist/generated/particle/Tr2ConsecutiveIntegerAttributeGenerator.js +62 -26
  461. package/dist/generated/particle/Tr2ConsecutiveIntegerAttributeGenerator.js.map +1 -1
  462. package/dist/generated/particle/Tr2DynamicEmitter.js +186 -37
  463. package/dist/generated/particle/Tr2DynamicEmitter.js.map +1 -1
  464. package/dist/generated/particle/Tr2ElementBlendConstraint.js +56 -26
  465. package/dist/generated/particle/Tr2ElementBlendConstraint.js.map +1 -1
  466. package/dist/generated/particle/Tr2ForceSphereVolume.js +68 -28
  467. package/dist/generated/particle/Tr2ForceSphereVolume.js.map +1 -1
  468. package/dist/generated/particle/Tr2ParticleSystem.js +266 -10
  469. package/dist/generated/particle/Tr2ParticleSystem.js.map +1 -1
  470. package/dist/generated/particle/Tr2ParticleTurbulenceForce.js +41 -4
  471. package/dist/generated/particle/Tr2ParticleTurbulenceForce.js.map +1 -1
  472. package/dist/generated/particle/Tr2PlaneConstraint.js +160 -42
  473. package/dist/generated/particle/Tr2PlaneConstraint.js.map +1 -1
  474. package/dist/generated/particle/Tr2RandomDirectionAttributeGenerator.js +71 -22
  475. package/dist/generated/particle/Tr2RandomDirectionAttributeGenerator.js.map +1 -1
  476. package/dist/generated/particle/Tr2RandomIntegerAttributeGenerator.js +59 -26
  477. package/dist/generated/particle/Tr2RandomIntegerAttributeGenerator.js.map +1 -1
  478. package/dist/generated/particle/Tr2RandomUniformAttributeGenerator.js +59 -26
  479. package/dist/generated/particle/Tr2RandomUniformAttributeGenerator.js.map +1 -1
  480. package/dist/generated/particle/Tr2SphereConstraint.js +202 -46
  481. package/dist/generated/particle/Tr2SphereConstraint.js.map +1 -1
  482. package/dist/generated/particle/Tr2SphereShapeAttributeGenerator.js +120 -64
  483. package/dist/generated/particle/Tr2SphereShapeAttributeGenerator.js.map +1 -1
  484. package/dist/generated/particle/Tr2StaticEmitter.js +79 -9
  485. package/dist/generated/particle/Tr2StaticEmitter.js.map +1 -1
  486. package/dist/generated/particle/index.js +0 -4
  487. package/dist/generated/particle/index.js.map +1 -1
  488. package/dist/generated/postProcess/enums.js.map +1 -1
  489. package/dist/generated/postProcess/index.js +0 -14
  490. package/dist/generated/postProcess/index.js.map +1 -1
  491. package/dist/generated/raytracing/Tr2RaytracingGeometry.js +67 -65
  492. package/dist/generated/raytracing/Tr2RaytracingGeometry.js.map +1 -1
  493. package/dist/generated/raytracing/index.js +0 -1
  494. package/dist/generated/raytracing/index.js.map +1 -1
  495. package/dist/generated/renderJob/Tr2RenderNodeEffect.js +100 -0
  496. package/dist/generated/renderJob/Tr2RenderNodeEffect.js.map +1 -0
  497. package/dist/generated/{trinityCore → renderJob}/Tr2RenderNodeSprite2dScene.js +2 -2
  498. package/dist/generated/renderJob/Tr2RenderNodeSprite2dScene.js.map +1 -0
  499. package/dist/generated/renderJob/TriStepClearUav.js +22 -3
  500. package/dist/generated/renderJob/TriStepClearUav.js.map +1 -1
  501. package/dist/generated/renderJob/TriStepFilterVisibilityResults.js +23 -4
  502. package/dist/generated/renderJob/TriStepFilterVisibilityResults.js.map +1 -1
  503. package/dist/generated/renderJob/TriStepPythonCB.js +20 -5
  504. package/dist/generated/renderJob/TriStepPythonCB.js.map +1 -1
  505. package/dist/generated/renderJob/TriStepRenderAtlas.js +8 -3
  506. package/dist/generated/renderJob/TriStepRenderAtlas.js.map +1 -1
  507. package/dist/generated/renderJob/TriStepRenderDebug.js +59 -24
  508. package/dist/generated/renderJob/TriStepRenderDebug.js.map +1 -1
  509. package/dist/generated/renderJob/TriStepRenderEffect.js +10 -3
  510. package/dist/generated/renderJob/TriStepRenderEffect.js.map +1 -1
  511. package/dist/generated/renderJob/TriStepRenderLineGraph.js +32 -3
  512. package/dist/generated/renderJob/TriStepRenderLineGraph.js.map +1 -1
  513. package/dist/generated/renderJob/TriStepRenderObject.js +19 -7
  514. package/dist/generated/renderJob/TriStepRenderObject.js.map +1 -1
  515. package/dist/generated/renderJob/TriStepRenderPass.js +8 -3
  516. package/dist/generated/renderJob/TriStepRenderPass.js.map +1 -1
  517. package/dist/generated/renderJob/TriStepRenderScene.js +7 -3
  518. package/dist/generated/renderJob/TriStepRenderScene.js.map +1 -1
  519. package/dist/generated/renderJob/TriStepRenderSceneDebug.js +7 -3
  520. package/dist/generated/renderJob/TriStepRenderSceneDebug.js.map +1 -1
  521. package/dist/generated/renderJob/TriStepRenderTexture.js +21 -3
  522. package/dist/generated/renderJob/TriStepRenderTexture.js.map +1 -1
  523. package/dist/generated/renderJob/TriStepRunComputeShader.js +14 -3
  524. package/dist/generated/renderJob/TriStepRunComputeShader.js.map +1 -1
  525. package/dist/generated/renderJob/TriStepSetDebugRenderer.js +10 -3
  526. package/dist/generated/renderJob/TriStepSetDebugRenderer.js.map +1 -1
  527. package/dist/generated/renderJob/TriStepSetUpscalingContextID.js +8 -4
  528. package/dist/generated/renderJob/TriStepSetUpscalingContextID.js.map +1 -1
  529. package/dist/generated/renderJob/TriStepSetVariableStore.js +24 -6
  530. package/dist/generated/renderJob/TriStepSetVariableStore.js.map +1 -1
  531. package/dist/generated/renderJob/TriStepToggleCubemap.js +16 -4
  532. package/dist/generated/renderJob/TriStepToggleCubemap.js.map +1 -1
  533. package/dist/generated/renderJob/TriStepUpdate.js +7 -3
  534. package/dist/generated/renderJob/TriStepUpdate.js.map +1 -1
  535. package/dist/generated/renderJob/enums.js.map +1 -1
  536. package/dist/generated/renderJob/index.js +2 -1
  537. package/dist/generated/renderJob/index.js.map +1 -1
  538. package/dist/generated/shader/enums.js.map +1 -1
  539. package/dist/generated/sprite2d/Tr2Sprite2dLineTrace.js +127 -41
  540. package/dist/generated/sprite2d/Tr2Sprite2dLineTrace.js.map +1 -1
  541. package/dist/generated/sprite2d/Tr2Sprite2dPolygon.js +122 -33
  542. package/dist/generated/sprite2d/Tr2Sprite2dPolygon.js.map +1 -1
  543. package/dist/generated/sprite2d/Tr2Sprite2dScene.js.map +1 -1
  544. package/dist/generated/sprite2d/Tr2Sprite2dTransform.js +51 -31
  545. package/dist/generated/sprite2d/Tr2Sprite2dTransform.js.map +1 -1
  546. package/dist/generated/sprite2d/Tr2Sprite2dVertex.js +37 -26
  547. package/dist/generated/sprite2d/Tr2Sprite2dVertex.js.map +1 -1
  548. package/dist/generated/sprite2d/Tr2SpriteObjectBase.js +5 -6
  549. package/dist/generated/sprite2d/Tr2SpriteObjectBase.js.map +1 -1
  550. package/dist/generated/sprite2d/enums.js.map +1 -1
  551. package/dist/generated/sprite2d/index.js +0 -5
  552. package/dist/generated/sprite2d/index.js.map +1 -1
  553. package/dist/generated/trinityCore/Tr2BoundingLineSet.js +31 -3
  554. package/dist/generated/trinityCore/Tr2BoundingLineSet.js.map +1 -1
  555. package/dist/generated/trinityCore/Tr2CurveLineSet.js +214 -136
  556. package/dist/generated/trinityCore/Tr2CurveLineSet.js.map +1 -1
  557. package/dist/generated/trinityCore/Tr2DebugRenderer.js +113 -87
  558. package/dist/generated/trinityCore/Tr2DebugRenderer.js.map +1 -1
  559. package/dist/generated/trinityCore/Tr2DynamicBinding.js +1 -1
  560. package/dist/generated/trinityCore/Tr2DynamicBinding.js.map +1 -1
  561. package/dist/generated/trinityCore/Tr2ExternalParameter.js +147 -33
  562. package/dist/generated/trinityCore/Tr2ExternalParameter.js.map +1 -1
  563. package/dist/generated/trinityCore/Tr2GpuProfiler.js.map +1 -1
  564. package/dist/generated/trinityCore/Tr2GpuStructuredBuffer.js.map +1 -1
  565. package/dist/generated/trinityCore/Tr2GrannyAnimation.js +646 -52
  566. package/dist/generated/trinityCore/Tr2GrannyAnimation.js.map +1 -1
  567. package/dist/generated/trinityCore/Tr2HostBitmap.js +189 -177
  568. package/dist/generated/trinityCore/Tr2HostBitmap.js.map +1 -1
  569. package/dist/generated/trinityCore/Tr2LineGraph.js +49 -8
  570. package/dist/generated/trinityCore/Tr2LineGraph.js.map +1 -1
  571. package/dist/generated/trinityCore/Tr2LineSet.js +36 -11
  572. package/dist/generated/trinityCore/Tr2LineSet.js.map +1 -1
  573. package/dist/generated/trinityCore/Tr2ManipulationTool.js +39 -11
  574. package/dist/generated/trinityCore/Tr2ManipulationTool.js.map +1 -1
  575. package/dist/generated/trinityCore/Tr2PrimitiveSet.js +46 -42
  576. package/dist/generated/trinityCore/Tr2PrimitiveSet.js.map +1 -1
  577. package/dist/generated/trinityCore/Tr2QuadRenderer.js +199 -45
  578. package/dist/generated/trinityCore/Tr2QuadRenderer.js.map +1 -1
  579. package/dist/generated/trinityCore/Tr2SSAO.js +15 -15
  580. package/dist/generated/trinityCore/Tr2SSAO.js.map +1 -1
  581. package/dist/generated/trinityCore/Tr2ScalingTool.js +17 -3
  582. package/dist/generated/trinityCore/Tr2ScalingTool.js.map +1 -1
  583. package/dist/generated/trinityCore/Tr2ShLightingManager.js.map +1 -1
  584. package/dist/generated/trinityCore/Tr2SolidSet.js +43 -7
  585. package/dist/generated/trinityCore/Tr2SolidSet.js.map +1 -1
  586. package/dist/generated/trinityCore/Tr2TextureAnimation.js +75 -40
  587. package/dist/generated/trinityCore/Tr2TextureAnimation.js.map +1 -1
  588. package/dist/generated/trinityCore/Tr2TextureArray.js +1 -1
  589. package/dist/generated/trinityCore/Tr2TextureArray.js.map +1 -1
  590. package/dist/generated/trinityCore/Tr2TextureAtlas.js +4 -0
  591. package/dist/generated/trinityCore/Tr2TextureAtlas.js.map +1 -1
  592. package/dist/generated/trinityCore/TriLineSet.js +115 -21
  593. package/dist/generated/trinityCore/TriLineSet.js.map +1 -1
  594. package/dist/generated/trinityCore/TriRigidOrientation.js +23 -3
  595. package/dist/generated/trinityCore/TriRigidOrientation.js.map +1 -1
  596. package/dist/generated/trinityCore/TriValueBinding.js +230 -40
  597. package/dist/generated/trinityCore/TriValueBinding.js.map +1 -1
  598. package/dist/generated/trinityCore/enums.js +1 -84
  599. package/dist/generated/trinityCore/enums.js.map +1 -1
  600. package/dist/generated/trinityCore/index.js +2 -27
  601. package/dist/generated/trinityCore/index.js.map +1 -1
  602. package/dist/generated/ui/index.js +0 -4
  603. package/dist/generated/ui/index.js.map +1 -1
  604. package/dist/generated/utilities/index.js +0 -5
  605. package/dist/generated/utilities/index.js.map +1 -1
  606. package/dist/index.js +112 -129
  607. package/dist/index.js.map +1 -1
  608. package/dist/particle/Tr2GpuSharedEmitter.js +37 -100
  609. package/dist/particle/Tr2GpuSharedEmitter.js.map +1 -1
  610. package/dist/{generated/particle → particle}/Tr2ParticleElementData.js +1 -1
  611. package/dist/particle/Tr2ParticleElementData.js.map +1 -0
  612. package/dist/particle/Tr2ParticleElementDeclaration.js +70 -0
  613. package/dist/particle/Tr2ParticleElementDeclaration.js.map +1 -0
  614. package/dist/particle/Tr2ParticleElementDeclarationName.js +80 -0
  615. package/dist/particle/Tr2ParticleElementDeclarationName.js.map +1 -0
  616. package/dist/particle/index.js +4 -1
  617. package/dist/particle/index.js.map +1 -1
  618. package/dist/particle/particleElementBinding.js +37 -0
  619. package/dist/particle/particleElementBinding.js.map +1 -0
  620. package/dist/{generated/postProcess → postProcess}/BlurContext.js +6 -1
  621. package/dist/postProcess/BlurContext.js.map +1 -0
  622. package/dist/{generated/postProcess → postProcess}/GaussianData.js +1 -1
  623. package/dist/postProcess/GaussianData.js.map +1 -0
  624. package/dist/postProcess/Tr2PPBloomEffect.js +1 -1
  625. package/dist/postProcess/Tr2PPBloomEffect.js.map +1 -1
  626. package/dist/{generated/postProcess → postProcess}/Tr2PPColorCorrectionEffect.js +1 -1
  627. package/dist/postProcess/Tr2PPColorCorrectionEffect.js.map +1 -0
  628. package/dist/postProcess/Tr2PPDepthOfFieldEffect.js +1 -1
  629. package/dist/postProcess/Tr2PPDepthOfFieldEffect.js.map +1 -1
  630. package/dist/{generated/postProcess → postProcess}/Tr2PPDesaturateEffect.js +1 -1
  631. package/dist/postProcess/Tr2PPDesaturateEffect.js.map +1 -0
  632. package/dist/{generated/postProcess → postProcess}/Tr2PPDynamicExposureEffect.js +1 -1
  633. package/dist/postProcess/Tr2PPDynamicExposureEffect.js.map +1 -0
  634. package/dist/{generated/postProcess → postProcess}/Tr2PPEffect.js +6 -1
  635. package/dist/postProcess/Tr2PPEffect.js.map +1 -0
  636. package/dist/{generated/postProcess → postProcess}/Tr2PPFadeEffect.js +6 -1
  637. package/dist/postProcess/Tr2PPFadeEffect.js.map +1 -0
  638. package/dist/{generated/postProcess → postProcess}/Tr2PPFilmGrainEffect.js +6 -1
  639. package/dist/postProcess/Tr2PPFilmGrainEffect.js.map +1 -0
  640. package/dist/{generated/postProcess → postProcess}/Tr2PPFogEffect.js +6 -1
  641. package/dist/postProcess/Tr2PPFogEffect.js.map +1 -0
  642. package/dist/postProcess/Tr2PPGenericEffect.js +1 -1
  643. package/dist/postProcess/Tr2PPGenericEffect.js.map +1 -1
  644. package/dist/{generated/postProcess → postProcess}/Tr2PPGodRaysEffect.js +6 -1
  645. package/dist/postProcess/Tr2PPGodRaysEffect.js.map +1 -0
  646. package/dist/{generated/postProcess → postProcess}/Tr2PPLutEffect.js +6 -1
  647. package/dist/postProcess/Tr2PPLutEffect.js.map +1 -0
  648. package/dist/{generated/postProcess → postProcess}/Tr2PPSignalLossEffect.js +6 -1
  649. package/dist/postProcess/Tr2PPSignalLossEffect.js.map +1 -0
  650. package/dist/postProcess/Tr2PPTaaEffect.js +1 -1
  651. package/dist/postProcess/Tr2PPTaaEffect.js.map +1 -1
  652. package/dist/postProcess/Tr2PPTonemappingEffect.js +1 -1
  653. package/dist/postProcess/Tr2PPTonemappingEffect.js.map +1 -1
  654. package/dist/{generated/postProcess → postProcess}/Tr2PPVignetteEffect.js +6 -1
  655. package/dist/postProcess/Tr2PPVignetteEffect.js.map +1 -0
  656. package/dist/postProcess/Tr2PostProcess.js +35 -0
  657. package/dist/postProcess/Tr2PostProcess.js.map +1 -0
  658. package/dist/postProcess/Tr2PostProcessAttributes.js +7 -7
  659. package/dist/postProcess/Tr2PostProcessAttributes.js.map +1 -1
  660. package/dist/postProcess/index.js +18 -18
  661. package/dist/renderJob/TriStepRemoteSync.js +42 -0
  662. package/dist/renderJob/TriStepRemoteSync.js.map +1 -0
  663. package/dist/renderJob/index.js +1 -0
  664. package/dist/renderJob/index.js.map +1 -1
  665. package/dist/shader/Tr2Effect.js +110 -4
  666. package/dist/shader/Tr2Effect.js.map +1 -1
  667. package/dist/shader/parameter/CjsParameter.js +55 -0
  668. package/dist/shader/parameter/CjsParameter.js.map +1 -1
  669. package/dist/shader/parameter/Tr2ConstantEffectParameter.js +4 -4
  670. package/dist/shader/parameter/Tr2ConstantEffectParameter.js.map +1 -1
  671. package/dist/shader/parameter/Tr2FloatParameter.js +6 -1
  672. package/dist/shader/parameter/Tr2FloatParameter.js.map +1 -1
  673. package/dist/shader/parameter/Tr2GeometryBufferParameter.js +9 -1
  674. package/dist/shader/parameter/Tr2GeometryBufferParameter.js.map +1 -1
  675. package/dist/shader/parameter/Tr2Matrix4Parameter.js +6 -1
  676. package/dist/shader/parameter/Tr2Matrix4Parameter.js.map +1 -1
  677. package/dist/shader/parameter/Tr2RuntimeTextureParameter.js +6 -1
  678. package/dist/shader/parameter/Tr2RuntimeTextureParameter.js.map +1 -1
  679. package/dist/shader/parameter/Tr2TextureAnimationParameter.js +6 -1
  680. package/dist/shader/parameter/Tr2TextureAnimationParameter.js.map +1 -1
  681. package/dist/shader/parameter/Tr2Vector2Parameter.js +74 -6
  682. package/dist/shader/parameter/Tr2Vector2Parameter.js.map +1 -1
  683. package/dist/shader/parameter/Tr2Vector3Parameter.js +90 -6
  684. package/dist/shader/parameter/Tr2Vector3Parameter.js.map +1 -1
  685. package/dist/shader/parameter/Tr2Vector4Parameter.js +70 -1
  686. package/dist/shader/parameter/Tr2Vector4Parameter.js.map +1 -1
  687. package/dist/shader/parameter/TriFloatArrayParameter.js +9 -1
  688. package/dist/shader/parameter/TriFloatArrayParameter.js.map +1 -1
  689. package/dist/shader/parameter/TriTextureParameter.js +9 -1
  690. package/dist/shader/parameter/TriTextureParameter.js.map +1 -1
  691. package/dist/shader/parameter/TriTransformParameter.js +16 -2
  692. package/dist/shader/parameter/TriTransformParameter.js.map +1 -1
  693. package/dist/shader/parameter/TriVariableParameter.js +6 -1
  694. package/dist/shader/parameter/TriVariableParameter.js.map +1 -1
  695. package/dist/shader/reflection/Tr2ShaderOption.js +1 -1
  696. package/dist/shader/reflection/Tr2ShaderOption.js.map +1 -1
  697. package/dist/shader/sampler/Tr2SamplerOverride.js +1 -1
  698. package/dist/shader/sampler/Tr2SamplerOverride.js.map +1 -1
  699. package/dist/{generated/sprite2d → sprite2d}/Tr2Sprite2dClipRect.js +1 -1
  700. package/dist/sprite2d/Tr2Sprite2dClipRect.js.map +1 -0
  701. package/dist/{generated/sprite2d → sprite2d}/Tr2Sprite2dD3DVertex.js +1 -1
  702. package/dist/sprite2d/Tr2Sprite2dD3DVertex.js.map +1 -0
  703. package/dist/{generated/sprite2d → sprite2d}/Tr2Sprite2dLineTraceVertex.js +1 -1
  704. package/dist/sprite2d/Tr2Sprite2dLineTraceVertex.js.map +1 -0
  705. package/dist/{generated/sprite2d → sprite2d}/Tr2Sprite2dTriangle.js +1 -1
  706. package/dist/sprite2d/Tr2Sprite2dTriangle.js.map +1 -0
  707. package/dist/{generated/sprite2d → sprite2d}/Tr2Sprite2dVertexBase.js +4 -4
  708. package/dist/sprite2d/Tr2Sprite2dVertexBase.js.map +1 -0
  709. package/dist/trinityCore/CjsBatchManager.js +203 -0
  710. package/dist/trinityCore/CjsBatchManager.js.map +1 -0
  711. package/dist/trinityCore/GrannyBoneOffset.js +89 -0
  712. package/dist/trinityCore/GrannyBoneOffset.js.map +1 -0
  713. package/dist/trinityCore/ITriRenderBatchAccumulator.js +57 -0
  714. package/dist/trinityCore/ITriRenderBatchAccumulator.js.map +1 -0
  715. package/dist/{generated/trinityCore → trinityCore}/Tr2BindingVector3.js +1 -1
  716. package/dist/trinityCore/Tr2BindingVector3.js.map +1 -0
  717. package/dist/trinityCore/Tr2DirectInstanceData.js +85 -0
  718. package/dist/trinityCore/Tr2DirectInstanceData.js.map +1 -0
  719. package/dist/trinityCore/Tr2ExpressionTermInfo.js +5 -1
  720. package/dist/trinityCore/Tr2ExpressionTermInfo.js.map +1 -1
  721. package/dist/trinityCore/Tr2GpuBuffer.js +12 -5
  722. package/dist/trinityCore/Tr2GpuBuffer.js.map +1 -1
  723. package/dist/trinityCore/Tr2InstancedMesh.js +59 -1
  724. package/dist/trinityCore/Tr2InstancedMesh.js.map +1 -1
  725. package/dist/{generated/trinityCore → trinityCore}/Tr2MaterialParameterStore.js +13 -7
  726. package/dist/trinityCore/Tr2MaterialParameterStore.js.map +1 -0
  727. package/dist/trinityCore/Tr2Mesh.js +140 -2
  728. package/dist/trinityCore/Tr2Mesh.js.map +1 -1
  729. package/dist/trinityCore/Tr2MeshArea.js +71 -9
  730. package/dist/trinityCore/Tr2MeshArea.js.map +1 -1
  731. package/dist/trinityCore/Tr2MeshBase.js +76 -5
  732. package/dist/trinityCore/Tr2MeshBase.js.map +1 -1
  733. package/dist/trinityCore/Tr2PerObjectData.js +23 -0
  734. package/dist/trinityCore/Tr2PerObjectData.js.map +1 -0
  735. package/dist/{generated/trinityCore → trinityCore}/Tr2PyValueBinding.js +1 -1
  736. package/dist/trinityCore/Tr2PyValueBinding.js.map +1 -0
  737. package/dist/trinityCore/Tr2RenderBatch.js +267 -0
  738. package/dist/trinityCore/Tr2RenderBatch.js.map +1 -0
  739. package/dist/trinityCore/Tr2RenderContext.js +239 -0
  740. package/dist/trinityCore/Tr2RenderContext.js.map +1 -1
  741. package/dist/trinityCore/Tr2RuntimeInstanceData.js +80 -1
  742. package/dist/trinityCore/Tr2RuntimeInstanceData.js.map +1 -1
  743. package/dist/{generated/trinityCore → trinityCore}/Tr2SerializedMorphAnimation.js +1 -1
  744. package/dist/trinityCore/Tr2SerializedMorphAnimation.js.map +1 -0
  745. package/dist/trinityCore/Tr2VisibilityResults.js +104 -0
  746. package/dist/trinityCore/Tr2VisibilityResults.js.map +1 -0
  747. package/dist/trinityCore/TriDevice.js +58 -4
  748. package/dist/trinityCore/TriDevice.js.map +1 -1
  749. package/dist/{generated/trinityCore → trinityCore}/TriFloat.js +1 -1
  750. package/dist/trinityCore/TriFloat.js.map +1 -0
  751. package/dist/trinityCore/TriObserverLocal.js +7 -1
  752. package/dist/trinityCore/TriObserverLocal.js.map +1 -1
  753. package/dist/trinityCore/TriRenderBatchAccumulator.js +119 -0
  754. package/dist/trinityCore/TriRenderBatchAccumulator.js.map +1 -0
  755. package/dist/trinityCore/TriRenderBatchMap.js +61 -0
  756. package/dist/trinityCore/TriRenderBatchMap.js.map +1 -0
  757. package/dist/trinityCore/TriSettings.js +82 -0
  758. package/dist/trinityCore/TriSettings.js.map +1 -0
  759. package/dist/{generated/trinityCore → trinityCore}/TriTorque.js +1 -1
  760. package/dist/trinityCore/TriTorque.js.map +1 -0
  761. package/dist/trinityCore/TriVariable.js +39 -1
  762. package/dist/trinityCore/TriVariable.js.map +1 -1
  763. package/dist/{generated/trinityCore → trinityCore}/TriView.js +7 -9
  764. package/dist/trinityCore/TriView.js.map +1 -0
  765. package/dist/trinityCore/TriViewport.js +7 -1
  766. package/dist/trinityCore/TriViewport.js.map +1 -1
  767. package/dist/trinityCore/index.js +21 -5
  768. package/dist/trinityCore/index.js.map +1 -1
  769. package/package.json +1 -1
  770. package/dist/eve/EveRemotePositionCurve.js.map +0 -1
  771. package/dist/generated/curves/Tr2CurveRasterizeDestination.js +0 -37
  772. package/dist/generated/curves/Tr2CurveRasterizeDestination.js.map +0 -1
  773. package/dist/generated/curves/Tr2CurveScalarDefinition.js +0 -48
  774. package/dist/generated/curves/Tr2CurveScalarDefinition.js.map +0 -1
  775. package/dist/generated/curves/Tr2Key.js +0 -47
  776. package/dist/generated/curves/Tr2Key.js.map +0 -1
  777. package/dist/generated/eve/AudioGameObject.js +0 -77
  778. package/dist/generated/eve/AudioGameObject.js.map +0 -1
  779. package/dist/generated/eve/attachment/decal/DecalMeshCache.js +0 -37
  780. package/dist/generated/eve/attachment/decal/DecalMeshCache.js.map +0 -1
  781. package/dist/generated/eve/attachment/turrets/EveTurretFiringFX.js +0 -130
  782. package/dist/generated/eve/attachment/turrets/EveTurretFiringFX.js.map +0 -1
  783. package/dist/generated/eve/attachment/turrets/EveTurretSet.js +0 -307
  784. package/dist/generated/eve/attachment/turrets/EveTurretSet.js.map +0 -1
  785. package/dist/generated/eve/attachment/turrets/EveTurretSetPSData.js.map +0 -1
  786. package/dist/generated/eve/attachment/turrets/EveTurretSetVSData.js.map +0 -1
  787. package/dist/generated/eve/attachment/turrets/EveTurretTarget.js +0 -54
  788. package/dist/generated/eve/attachment/turrets/EveTurretTarget.js.map +0 -1
  789. package/dist/generated/eve/child/EveChildAudio.js +0 -47
  790. package/dist/generated/eve/child/EveChildAudio.js.map +0 -1
  791. package/dist/generated/eve/child/EveChildEffectPropagator.js +0 -121
  792. package/dist/generated/eve/child/EveChildEffectPropagator.js.map +0 -1
  793. package/dist/generated/eve/child/EveChildFogVolume.js +0 -63
  794. package/dist/generated/eve/child/EveChildFogVolume.js.map +0 -1
  795. package/dist/generated/eve/child/EveChildInstanceTransform.js.map +0 -1
  796. package/dist/generated/eve/child/EveChildLightingOverride.js +0 -62
  797. package/dist/generated/eve/child/EveChildLightingOverride.js.map +0 -1
  798. package/dist/generated/eve/child/EveCloudVolumeBall.js.map +0 -1
  799. package/dist/generated/eve/child/behaviors/DroneAgent.js.map +0 -1
  800. package/dist/generated/eve/child/behaviors/SplineTunnel.js.map +0 -1
  801. package/dist/generated/eve/child/behaviors/SplineTunnelPoint.js.map +0 -1
  802. package/dist/generated/eve/distribution/attributeModifiers/InitialPlacement.js.map +0 -1
  803. package/dist/generated/eve/lights/LightData.js.map +0 -1
  804. package/dist/generated/eve/lights/LightFeatures.js.map +0 -1
  805. package/dist/generated/eve/perObjectData/DecalPSPerObjectData.js +0 -48
  806. package/dist/generated/eve/perObjectData/DecalPSPerObjectData.js.map +0 -1
  807. package/dist/generated/eve/perObjectData/EveTurretSetPerObjectData.js.map +0 -1
  808. package/dist/generated/eve/perObjectData/MergeMorphsConstantBuffer.js.map +0 -1
  809. package/dist/generated/eve/renderable/stretch/EveFiringEffectElementContainer.js +0 -57
  810. package/dist/generated/eve/renderable/stretch/EveFiringEffectElementContainer.js.map +0 -1
  811. package/dist/generated/eve/renderable/stretch/EveLocalPositionCurve.js +0 -93
  812. package/dist/generated/eve/renderable/stretch/EveLocalPositionCurve.js.map +0 -1
  813. package/dist/generated/eve/renderable/stretch/EveStretch.js +0 -109
  814. package/dist/generated/eve/renderable/stretch/EveStretch.js.map +0 -1
  815. package/dist/generated/eve/renderable/stretch/EveStretch2.js +0 -67
  816. package/dist/generated/eve/renderable/stretch/EveStretch2.js.map +0 -1
  817. package/dist/generated/eve/renderable/stretch/EveStretch3.js +0 -101
  818. package/dist/generated/eve/renderable/stretch/EveStretch3.js.map +0 -1
  819. package/dist/generated/eve/scene/EveInstancedMeshManager.js +0 -206
  820. package/dist/generated/eve/scene/EveInstancedMeshManager.js.map +0 -1
  821. package/dist/generated/eve/scene/Tr2OcclusionBuffer.js +0 -46
  822. package/dist/generated/eve/scene/Tr2OcclusionBuffer.js.map +0 -1
  823. package/dist/generated/eve/socket/_className.js +0 -44
  824. package/dist/generated/eve/socket/_className.js.map +0 -1
  825. package/dist/generated/eve/spaceObject/EveEffectRoot2.js +0 -150
  826. package/dist/generated/eve/spaceObject/EveEffectRoot2.js.map +0 -1
  827. package/dist/generated/eve/spaceObject/EveMissile.js +0 -53
  828. package/dist/generated/eve/spaceObject/EveMissile.js.map +0 -1
  829. package/dist/generated/eve/spaceObject/EveMissileWarhead.js +0 -90
  830. package/dist/generated/eve/spaceObject/EveMissileWarhead.js.map +0 -1
  831. package/dist/generated/eve/spaceObject/EveMobile.js +0 -49
  832. package/dist/generated/eve/spaceObject/EveMobile.js.map +0 -1
  833. package/dist/generated/eve/spaceObject/EveRootTransform.js +0 -48
  834. package/dist/generated/eve/spaceObject/EveRootTransform.js.map +0 -1
  835. package/dist/generated/eve/spaceObject/EveTransform.js +0 -72
  836. package/dist/generated/eve/spaceObject/EveTransform.js.map +0 -1
  837. package/dist/generated/eve/spaceObject/swarm/SwarmVehicle.js.map +0 -1
  838. package/dist/generated/eve/spaceObject/swarm/SwarmVehicleDebug.js.map +0 -1
  839. package/dist/generated/eve/ui/EveEllipseDefinition.js.map +0 -1
  840. package/dist/generated/eve/ui/EveEllipseSet.js.map +0 -1
  841. package/dist/generated/eve/ui/EveSpherePinIndexTree.js +0 -49
  842. package/dist/generated/eve/ui/EveSpherePinIndexTree.js.map +0 -1
  843. package/dist/generated/eve/ui/EveUiObject.js +0 -41
  844. package/dist/generated/eve/ui/EveUiObject.js.map +0 -1
  845. package/dist/generated/include/ITr2InteriorLight.js +0 -37
  846. package/dist/generated/include/ITr2InteriorLight.js.map +0 -1
  847. package/dist/generated/include/ITriDevice.js +0 -31
  848. package/dist/generated/include/ITriDevice.js.map +0 -1
  849. package/dist/generated/include/ITriEffectTextureParameter.js +0 -31
  850. package/dist/generated/include/ITriEffectTextureParameter.js.map +0 -1
  851. package/dist/generated/include/Point.js +0 -34
  852. package/dist/generated/include/Point.js.map +0 -1
  853. package/dist/generated/include/Tr2CurveBase.js +0 -79
  854. package/dist/generated/include/Tr2CurveBase.js.map +0 -1
  855. package/dist/generated/include/Tr2DebugColor.js +0 -40
  856. package/dist/generated/include/Tr2DebugColor.js.map +0 -1
  857. package/dist/generated/include/Tr2DebugObjectReference.js +0 -34
  858. package/dist/generated/include/Tr2DebugObjectReference.js.map +0 -1
  859. package/dist/generated/include/Tr2Rect.js +0 -40
  860. package/dist/generated/include/Tr2Rect.js.map +0 -1
  861. package/dist/generated/include/TriPerlinNoise.js +0 -34
  862. package/dist/generated/include/TriPerlinNoise.js.map +0 -1
  863. package/dist/generated/particle/Tr2ParticleElementData.js.map +0 -1
  864. package/dist/generated/particle/Tr2ParticleElementDeclaration.js +0 -37
  865. package/dist/generated/particle/Tr2ParticleElementDeclaration.js.map +0 -1
  866. package/dist/generated/particle/Tr2ParticleElementDeclarationName.js +0 -42
  867. package/dist/generated/particle/Tr2ParticleElementDeclarationName.js.map +0 -1
  868. package/dist/generated/particle/Tr2ParticleStreamIterator.js +0 -37
  869. package/dist/generated/particle/Tr2ParticleStreamIterator.js.map +0 -1
  870. package/dist/generated/postProcess/BlurContext.js.map +0 -1
  871. package/dist/generated/postProcess/CASConstants.js +0 -34
  872. package/dist/generated/postProcess/CASConstants.js.map +0 -1
  873. package/dist/generated/postProcess/GaussianData.js.map +0 -1
  874. package/dist/generated/postProcess/Tr2PPColorCorrectionEffect.js.map +0 -1
  875. package/dist/generated/postProcess/Tr2PPDesaturateEffect.js.map +0 -1
  876. package/dist/generated/postProcess/Tr2PPDynamicExposureEffect.js.map +0 -1
  877. package/dist/generated/postProcess/Tr2PPEffect.js.map +0 -1
  878. package/dist/generated/postProcess/Tr2PPFadeEffect.js.map +0 -1
  879. package/dist/generated/postProcess/Tr2PPFilmGrainEffect.js.map +0 -1
  880. package/dist/generated/postProcess/Tr2PPFogEffect.js.map +0 -1
  881. package/dist/generated/postProcess/Tr2PPGodRaysEffect.js.map +0 -1
  882. package/dist/generated/postProcess/Tr2PPLutEffect.js.map +0 -1
  883. package/dist/generated/postProcess/Tr2PPSignalLossEffect.js.map +0 -1
  884. package/dist/generated/postProcess/Tr2PPVignetteEffect.js.map +0 -1
  885. package/dist/generated/raytracing/Tr2RaytracingMeshArea.js +0 -40
  886. package/dist/generated/raytracing/Tr2RaytracingMeshArea.js.map +0 -1
  887. package/dist/generated/renderJob/TriStepRemoteSync.js +0 -45
  888. package/dist/generated/renderJob/TriStepRemoteSync.js.map +0 -1
  889. package/dist/generated/sprite2d/Tr2Sprite2dClipRect.js.map +0 -1
  890. package/dist/generated/sprite2d/Tr2Sprite2dD3DVertex.js.map +0 -1
  891. package/dist/generated/sprite2d/Tr2Sprite2dLineTraceVertex.js.map +0 -1
  892. package/dist/generated/sprite2d/Tr2Sprite2dTriangle.js.map +0 -1
  893. package/dist/generated/sprite2d/Tr2Sprite2dVertexBase.js.map +0 -1
  894. package/dist/generated/trinityCore/EveSprite2dBracket.js +0 -42
  895. package/dist/generated/trinityCore/EveSprite2dBracket.js.map +0 -1
  896. package/dist/generated/trinityCore/EveSprite2dBracketRenderer.js.map +0 -1
  897. package/dist/generated/trinityCore/GrannyBoneOffset.js +0 -52
  898. package/dist/generated/trinityCore/GrannyBoneOffset.js.map +0 -1
  899. package/dist/generated/trinityCore/Tr2BindingVector3.js.map +0 -1
  900. package/dist/generated/trinityCore/Tr2DirectInstanceData.js +0 -40
  901. package/dist/generated/trinityCore/Tr2DirectInstanceData.js.map +0 -1
  902. package/dist/generated/trinityCore/Tr2DisplayMode.js +0 -49
  903. package/dist/generated/trinityCore/Tr2DisplayMode.js.map +0 -1
  904. package/dist/generated/trinityCore/Tr2GStateAnimation.js +0 -210
  905. package/dist/generated/trinityCore/Tr2GStateAnimation.js.map +0 -1
  906. package/dist/generated/trinityCore/Tr2GStateParameter.js +0 -67
  907. package/dist/generated/trinityCore/Tr2GStateParameter.js.map +0 -1
  908. package/dist/generated/trinityCore/Tr2MaterialParameterStore.js.map +0 -1
  909. package/dist/generated/trinityCore/Tr2PlatformInfo.js +0 -33
  910. package/dist/generated/trinityCore/Tr2PlatformInfo.js.map +0 -1
  911. package/dist/generated/trinityCore/Tr2PostProcess.js +0 -31
  912. package/dist/generated/trinityCore/Tr2PostProcess.js.map +0 -1
  913. package/dist/generated/trinityCore/Tr2PyValueBinding.js.map +0 -1
  914. package/dist/generated/trinityCore/Tr2RenderNodeEffect.js +0 -64
  915. package/dist/generated/trinityCore/Tr2RenderNodeEffect.js.map +0 -1
  916. package/dist/generated/trinityCore/Tr2RenderNodeSprite2dScene.js.map +0 -1
  917. package/dist/generated/trinityCore/Tr2SerializedMorphAnimation.js.map +0 -1
  918. package/dist/generated/trinityCore/Tr2VectorFunctionModifier.js.map +0 -1
  919. package/dist/generated/trinityCore/Tr2VideoAdapter.js +0 -60
  920. package/dist/generated/trinityCore/Tr2VideoAdapter.js.map +0 -1
  921. package/dist/generated/trinityCore/Tr2VideoDriver.js +0 -46
  922. package/dist/generated/trinityCore/Tr2VideoDriver.js.map +0 -1
  923. package/dist/generated/trinityCore/Tr2VisibilityResults.js +0 -41
  924. package/dist/generated/trinityCore/Tr2VisibilityResults.js.map +0 -1
  925. package/dist/generated/trinityCore/TriColorSequencer.js +0 -48
  926. package/dist/generated/trinityCore/TriColorSequencer.js.map +0 -1
  927. package/dist/generated/trinityCore/TriFloat.js.map +0 -1
  928. package/dist/generated/trinityCore/TriSettings.js +0 -64
  929. package/dist/generated/trinityCore/TriSettings.js.map +0 -1
  930. package/dist/generated/trinityCore/TriTorque.js.map +0 -1
  931. package/dist/generated/trinityCore/TriVectorSequencer.js +0 -48
  932. package/dist/generated/trinityCore/TriVectorSequencer.js.map +0 -1
  933. package/dist/generated/trinityCore/TriView.js.map +0 -1
  934. package/dist/generated/ui/Tr2MainWindow.js +0 -203
  935. package/dist/generated/ui/Tr2MainWindow.js.map +0 -1
  936. package/dist/generated/ui/Tr2MainWindowState.js +0 -63
  937. package/dist/generated/ui/Tr2MainWindowState.js.map +0 -1
  938. package/dist/generated/ui/Tr2MouseCursor.js +0 -55
  939. package/dist/generated/ui/Tr2MouseCursor.js.map +0 -1
  940. package/dist/generated/ui/UIScancode.js +0 -37
  941. package/dist/generated/ui/UIScancode.js.map +0 -1
  942. package/dist/generated/utilities/AreaBoundsInfo.js +0 -34
  943. package/dist/generated/utilities/AreaBoundsInfo.js.map +0 -1
  944. package/dist/generated/utilities/BoundingBox.js +0 -34
  945. package/dist/generated/utilities/BoundingBox.js.map +0 -1
  946. package/dist/generated/utilities/MeshBoundsInfo.js +0 -52
  947. package/dist/generated/utilities/MeshBoundsInfo.js.map +0 -1
  948. package/dist/generated/utilities/Vector3d.js +0 -58
  949. package/dist/generated/utilities/Vector3d.js.map +0 -1
  950. package/dist/generated/utilities/Vector4d.js +0 -49
  951. package/dist/generated/utilities/Vector4d.js.map +0 -1
  952. package/dist/trinityCore/Tr2VideoAdapters.js +0 -79
  953. package/dist/trinityCore/Tr2VideoAdapters.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"EveChildMesh.js","sources":["../../../../src/eve/child/EveChildMesh.js"],"sourcesContent":["// Source: E:\\carbonengine\\trinity\\trinity\\Eve\\SpaceObject\\Children\\EveChildMesh.h\n// Source: E:\\carbonengine\\trinity\\trinity\\Eve\\SpaceObject\\Children\\EveChildMesh.cpp\n// Source: E:\\carbonengine\\trinity\\trinity\\Eve\\SpaceObject\\Children\\EveChildMesh_Blue.cpp\nimport { mat4 } from \"@carbonenginejs/core-math/mat4\";\nimport { quat } from \"@carbonenginejs/core-math/quat\";\nimport { vec3 } from \"@carbonenginejs/core-math/vec3\";\nimport { carbon, impl, io, schema, type } from \"@carbonenginejs/core-types/schema\";\nimport { EveChildTransform, applyTransformModifiers } from \"./EveChildTransform.js\";\nimport { Origin } from \"../../generated/eve/child/enums.js\";\nimport { ReflectionMode } from \"../../generated/eve/enums.js\";\nimport { Tr2Lod } from \"../EveLODHelper.js\";\n\n\n@type.define({ className: \"EveChildMesh\", family: \"eve/child\" })\nexport class EveChildMesh extends EveChildTransform\n{\n @io.notify\n @io.persist\n @type.int32\n @schema.enum(\"ReflectionMode\")\n reflectionMode = 3;\n\n @io.persist\n @type.list(\"IEveChildTransformModifier\")\n transformModifiers = [];\n\n @io.read\n @type.mat4\n worldTransform = mat4.create();\n\n @io.notify\n @io.persist\n @type.boolean\n display = true;\n\n @io.notify\n @io.persist\n @type.boolean\n castShadow = false;\n\n @io.notify\n @io.persist\n @type.objectRef(\"Tr2MeshBase\")\n mesh = null;\n\n @io.persist\n @type.string\n name = \"\";\n\n @io.persist\n @type.quat\n rotation = quat.create();\n\n @io.persist\n @type.vec3\n translation = vec3.create();\n\n @io.persist\n @type.vec3\n scaling = vec3.fromValues(1, 1, 1);\n\n @io.persist\n @type.mat4\n localTransform = mat4.create();\n\n @io.persist\n @type.list(\"EveSpaceObjectDecal\")\n decals = [];\n\n @io.persist\n @type.boolean\n staticTransform = false;\n\n @io.notify\n @io.persist\n @type.objectRef(\"Tr2GrannyAnimation\")\n animationUpdater = null;\n\n @io.persist\n @type.list(\"IEveSpaceObjectAttachment\")\n attachments = [];\n\n @io.persist\n @type.list(\"Tr2Light\")\n lights = [];\n\n @io.persist\n @type.int32\n @schema.enum(\"Tr2Lod\")\n lowestLodVisible = 0;\n\n @io.persist\n @type.float32\n minScreenSize = 0;\n\n @io.persist\n @type.float32\n sortValueOffset = 0;\n\n @io.persist\n @type.float32\n sortValueScale = 1;\n\n @io.read\n @type.float32\n currentScreenSize = -1;\n\n @io.read\n @type.float32\n currentInstanceScreenSize = -1;\n\n @io.persist\n @type.boolean\n useSRT = true;\n\n @io.persist\n @type.boolean\n updateAnimation = true;\n\n // SOF-authored placement/instance values; persisted so the values\n // interchange reproduces Carbon's hidden child placement state.\n @io.persist\n @type.int32\n @schema.enum(\"Origin\")\n origin = 0;\n\n @io.persist\n @type.array(\"mat4\")\n instanceTransforms = [];\n\n @io.persist\n @type.string\n sofDna = \"\";\n\n @io.persist\n @type.string\n sofParentHullName = \"\";\n\n @io.persist\n @type.string\n sofLocatorSetName = \"\";\n\n @io.persist\n @type.string\n sofLocatorIndex = \"\";\n\n @carbon.method\n @impl.adapted\n Initialize()\n {\n if (this.staticTransform)\n {\n this.RebuildLocalTransform();\n }\n return true;\n }\n\n @carbon.method\n @impl.implemented\n Setup(scale = null, rotation = null, translation = null, lowestLodVisible = null)\n {\n super.Setup(scale, rotation, translation, lowestLodVisible);\n if (lowestLodVisible !== null && lowestLodVisible !== undefined)\n {\n this.lowestLodVisible = Number(lowestLodVisible) | 0;\n }\n return this.localTransform;\n }\n\n @carbon.method\n @impl.implemented\n SetInstanceTransforms(instances)\n {\n const next = [];\n for (const transform of instances ?? [])\n {\n if (!transform || transform.length !== 16)\n {\n throw new TypeError(\"EveChildMesh instance transforms must contain 16 values\");\n }\n next.push(mat4.clone(transform));\n }\n this.instanceTransforms = next;\n return this.instanceTransforms;\n }\n\n @carbon.method\n @impl.adapted\n GetInstanceTransforms()\n {\n return this.instanceTransforms;\n }\n\n @carbon.method\n @impl.implemented\n SetMesh(mesh)\n {\n this.mesh = mesh ?? null;\n }\n\n @carbon.method\n @impl.implemented\n SetOrigin(origin)\n {\n this.origin = Number(origin) | 0;\n }\n\n @carbon.method\n @impl.implemented\n SetScale(scale)\n {\n vec3.copy(this.scaling, scale);\n }\n\n @carbon.method\n @impl.implemented\n SetReflectionMode(mode)\n {\n this.reflectionMode = Number(mode) | 0;\n }\n\n @carbon.method\n @impl.implemented\n SetCastShadow(castShadow)\n {\n this.castShadow = !!castShadow;\n }\n\n @carbon.method\n @impl.implemented\n SetMinScreenSize(minScreenSize)\n {\n this.minScreenSize = Number(minScreenSize);\n }\n\n @carbon.method\n @impl.implemented\n GetLocalToWorldTransform()\n {\n return this.worldTransform;\n }\n\n @carbon.method\n @impl.implemented\n GetName()\n {\n return this.name;\n }\n\n @carbon.method\n @impl.implemented\n SetName(name)\n {\n this.name = String(name ?? \"\");\n }\n\n @carbon.method\n @impl.implemented\n AddTransformModifier(modifier)\n {\n this.transformModifiers.push(modifier);\n }\n\n @carbon.method\n @impl.implemented\n AddDecal(decal)\n {\n this.decals.push(decal);\n }\n\n @carbon.method\n @impl.implemented\n AddAttachment(attachment)\n {\n this.attachments.push(attachment);\n }\n\n @carbon.method\n @impl.implemented\n ClearAttachments()\n {\n this.attachments.length = 0;\n }\n\n @carbon.method\n @impl.implemented\n AddLight(light)\n {\n this.lights.push(light);\n }\n\n @carbon.method\n @impl.implemented\n ClearLights()\n {\n this.lights.length = 0;\n }\n\n @carbon.method\n @impl.implemented\n IsAlwaysOn()\n {\n return true;\n }\n\n @carbon.method\n @impl.implemented\n SetShaderOption(name, value)\n {\n this.mesh?.SetShaderOption?.(name, value);\n for (const decal of this.decals)\n {\n decal?.SetShaderOption?.(name, value);\n }\n for (const attachment of this.attachments)\n {\n attachment?.SetShaderOption?.(name, value);\n }\n }\n\n @carbon.method\n @impl.adapted\n GetMorphTargetNames()\n {\n return this.mesh?.GetMorphTargetNames?.() ?? [];\n }\n\n @carbon.method\n @impl.adapted\n SetMorphTargetWeight(name, weight)\n {\n this.mesh?.SetMorphTargetWeight?.(name, weight);\n }\n\n @carbon.method\n @impl.adapted\n GetMorphTargetWeight(name)\n {\n return this.mesh?.GetMorphTargetWeight?.(name) ?? 0;\n }\n\n @carbon.method\n @impl.adapted\n GetSofSourceLocator()\n {\n return null;\n }\n\n /**\n * Per-frame async update: rebuild the world transform from the parent, then\n * fold the transform modifiers over it. Ports the transform+modifier core of\n * EveChildMesh::UpdateAsyncronous (Carbon); the bone/morph offset advance and\n * per-object-data invalidation Carbon also does here are not modelled in this\n * runtime, hence @impl.adapted.\n * @param {Object} updateContext - frame context (EveUpdateContext), threaded to modifiers\n * @param {EveChildUpdateParams} params - localToWorldTransform + boneCount/bones\n * @returns {Float32Array} worldTransform\n */\n @carbon.method\n @carbon.contextual([\"camera\"])\n @impl.adapted\n UpdateAsyncronous(updateContext, params)\n {\n const parentTransform = params?.localToWorldTransform;\n\n if (parentTransform && parentTransform.length === 16)\n {\n this.UpdateTransform(parentTransform);\n }\n\n return applyTransformModifiers(\n this,\n updateContext,\n params?.boneCount ?? 0,\n params?.bones ?? null\n );\n }\n\n static Origin = Origin;\n\n static ReflectionMode = ReflectionMode;\n\n static Tr2Lod = Tr2Lod;\n\n}\n"],"names":["_EveChildMesh","_identity","EveChildMesh","EveChildTransform","e","_init_reflectionMode","_init_extra_reflectionMode","_init_transformModifiers","_init_extra_transformModifiers","_init_worldTransform","_init_extra_worldTransform","_init_display","_init_extra_display","_init_castShadow","_init_extra_castShadow","_init_mesh","_init_extra_mesh","_init_name","_init_extra_name","_init_rotation","_init_extra_rotation","_init_translation","_init_extra_translation","_init_scaling","_init_extra_scaling","_init_localTransform","_init_extra_localTransform","_init_decals","_init_extra_decals","_init_staticTransform","_init_extra_staticTransform","_init_animationUpdater","_init_extra_animationUpdater","_init_attachments","_init_extra_attachments","_init_lights","_init_extra_lights","_init_lowestLodVisible","_init_extra_lowestLodVisible","_init_minScreenSize","_init_extra_minScreenSize","_init_sortValueOffset","_init_extra_sortValueOffset","_init_sortValueScale","_init_extra_sortValueScale","_init_currentScreenSize","_init_extra_currentScreenSize","_init_currentInstanceScreenSize","_init_extra_currentInstanceScreenSize","_init_useSRT","_init_extra_useSRT","_init_updateAnimation","_init_extra_updateAnimation","_init_origin","_init_extra_origin","_init_instanceTransforms","_init_extra_instanceTransforms","_init_sofDna","_init_extra_sofDna","_init_sofParentHullName","_init_extra_sofParentHullName","_init_sofLocatorSetName","_init_extra_sofLocatorSetName","_init_sofLocatorIndex","_init_extra_sofLocatorIndex","_initProto","c","_initClass","_applyDecs","type","define","className","family","io","notify","persist","int32","schema","enum","list","read","mat4","boolean","objectRef","string","quat","vec3","float32","array","carbon","method","impl","adapted","implemented","contextual","constructor","args","reflectionMode","transformModifiers","worldTransform","create","display","castShadow","mesh","name","rotation","translation","scaling","fromValues","localTransform","decals","staticTransform","animationUpdater","attachments","lights","lowestLodVisible","minScreenSize","sortValueOffset","sortValueScale","currentScreenSize","currentInstanceScreenSize","useSRT","updateAnimation","origin","instanceTransforms","sofDna","sofParentHullName","sofLocatorSetName","sofLocatorIndex","Initialize","RebuildLocalTransform","Setup","scale","undefined","Number","SetInstanceTransforms","instances","next","transform","length","TypeError","push","clone","GetInstanceTransforms","SetMesh","SetOrigin","SetScale","copy","SetReflectionMode","mode","SetCastShadow","SetMinScreenSize","GetLocalToWorldTransform","GetName","SetName","String","AddTransformModifier","modifier","AddDecal","decal","AddAttachment","attachment","ClearAttachments","AddLight","light","ClearLights","IsAlwaysOn","SetShaderOption","value","GetMorphTargetNames","SetMorphTargetWeight","weight","GetMorphTargetWeight","GetSofSourceLocator","UpdateAsyncronous","updateContext","params","parentTransform","localToWorldTransform","UpdateTransform","applyTransformModifiers","boneCount","bones","Origin","ReflectionMode","Tr2Lod"],"mappings":"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"}
1
+ {"version":3,"file":"EveChildMesh.js","sources":["../../../../src/eve/child/EveChildMesh.js"],"sourcesContent":["// Source: E:\\carbonengine\\trinity\\trinity\\Eve\\SpaceObject\\Children\\EveChildMesh.h\n// Source: E:\\carbonengine\\trinity\\trinity\\Eve\\SpaceObject\\Children\\EveChildMesh.cpp\n// Source: E:\\carbonengine\\trinity\\trinity\\Eve\\SpaceObject\\Children\\EveChildMesh_Blue.cpp\nimport { mat4 } from \"@carbonenginejs/core-math/mat4\";\nimport { quat } from \"@carbonenginejs/core-math/quat\";\nimport { sph3 } from \"@carbonenginejs/core-math/sph3\";\nimport { vec3 } from \"@carbonenginejs/core-math/vec3\";\nimport { vec4 } from \"@carbonenginejs/core-math/vec4\";\nimport { carbon, impl, io, schema, type } from \"@carbonenginejs/core-types/schema\";\nimport { TriBatchType } from \"@carbonenginejs/runtime-const/graphics\";\nimport { EveChildTransform, applyTransformModifiers } from \"./EveChildTransform.js\";\nimport { Origin } from \"../../generated/eve/child/enums.js\";\nimport { ReflectionMode } from \"../../generated/eve/enums.js\";\nimport { Tr2RenderReason } from \"../../generated/trinityCore/enums.js\";\nimport { Tr2Lod } from \"../EveLODHelper.js\";\nimport { Tr2PerObjectData } from \"../../trinityCore/Tr2PerObjectData.js\";\n\n// Module scratch for the hot per-frame visibility/shadow paths (allocation\n// rules: copy-into, never allocate per call; child updates run sequentially so\n// the scratch is non-reentrant by construction).\nconst INVERSE_WORLD_SCRATCH = mat4.create();\nconst LOCAL_VIEW_SCRATCH = vec3.create();\nconst INSTANCE_SPHERE_SCRATCH = vec4.create();\nconst SHADOW_SPHERE_SCRATCH = vec4.create();\nconst BOX_CORNER_SCRATCH = vec3.create();\nconst BOX_QUERY_SCRATCH = { min: vec3.create(), max: vec3.create() };\nconst ZERO_VEC3 = vec3.create();\n\n\n@type.define({ className: \"EveChildMesh\", family: \"eve/child\" })\nexport class EveChildMesh extends EveChildTransform\n{\n #isMorphsBaked = false;\n\n #morphAnimationBuffer = [];\n\n #morphAnimationOffsets = {\n runtimeEvaluatedOffset: 0,\n runtimeEvaluatedCount: 0,\n bakedOffset: 0,\n bakedCount: 0,\n allCount: 0\n };\n\n // Carbon m_isVisible/m_instancesVisible/m_hasUpdated/m_activationStrength:\n // runtime-only frame state (never persisted; Carbon keeps them out of the\n // Blue surface too).\n #isVisible = false;\n\n #instancesVisible = false;\n\n #hasUpdated = false;\n\n #activationStrength = 1;\n\n // Carbon m_worldBoundingBox/m_worldBoundingSphere: world-space bounds\n // refreshed by UpdateAsyncronous; the sphere is invalid while radius <= 0.\n #worldBoundsMin = vec3.create();\n\n #worldBoundsMax = vec3.create();\n\n #worldBoundsValid = false;\n\n #worldBoundingSphere = vec4.create();\n\n @io.notify\n @io.persist\n @type.int32\n @schema.enum(\"ReflectionMode\")\n reflectionMode = 3;\n\n @io.persist\n @type.list(\"IEveChildTransformModifier\")\n transformModifiers = [];\n\n @io.read\n @type.mat4\n worldTransform = mat4.create();\n\n @io.notify\n @io.persist\n @type.boolean\n display = true;\n\n @io.notify\n @io.persist\n @type.boolean\n castShadow = false;\n\n @io.notify\n @io.persist\n @type.objectRef(\"Tr2MeshBase\")\n mesh = null;\n\n @io.persist\n @type.string\n name = \"\";\n\n @io.persist\n @type.quat\n rotation = quat.create();\n\n @io.persist\n @type.vec3\n translation = vec3.create();\n\n @io.persist\n @type.vec3\n scaling = vec3.fromValues(1, 1, 1);\n\n @io.persist\n @type.mat4\n localTransform = mat4.create();\n\n @io.persist\n @type.list(\"EveSpaceObjectDecal\")\n decals = [];\n\n @io.persist\n @type.boolean\n staticTransform = false;\n\n @io.notify\n @io.persist\n @type.objectRef(\"Tr2GrannyAnimation\")\n animationUpdater = null;\n\n @io.persist\n @type.list(\"IEveSpaceObjectAttachment\")\n attachments = [];\n\n @io.persist\n @type.list(\"Tr2Light\")\n lights = [];\n\n @io.persist\n @type.int32\n @schema.enum(\"Tr2Lod\")\n lowestLodVisible = 0;\n\n @io.persist\n @type.float32\n minScreenSize = 0;\n\n @io.persist\n @type.float32\n sortValueOffset = 0;\n\n @io.persist\n @type.float32\n sortValueScale = 1;\n\n @io.read\n @type.float32\n currentScreenSize = -1;\n\n @io.read\n @type.float32\n currentInstanceScreenSize = -1;\n\n @io.persist\n @type.boolean\n useSRT = true;\n\n @io.persist\n @type.boolean\n updateAnimation = true;\n\n // SOF-authored placement/instance values; persisted so the values\n // interchange reproduces Carbon's hidden child placement state.\n @io.persist\n @type.int32\n @schema.enum(\"Origin\")\n origin = 0;\n\n @io.rebuild(\"instanceBuffer\")\n @io.persist\n @type.array(\"mat4\")\n instanceTransforms = [];\n\n @io.persist\n @type.string\n sofDna = \"\";\n\n @io.persist\n @type.string\n sofParentHullName = \"\";\n\n @io.persist\n @type.string\n sofLocatorSetName = \"\";\n\n @io.persist\n @type.string\n sofLocatorIndex = \"\";\n\n @carbon.method\n @impl.adapted\n Initialize()\n {\n if (this.staticTransform)\n {\n this.RebuildLocalTransform();\n }\n return true;\n }\n\n @carbon.method\n @impl.implemented\n Setup(scale = null, rotation = null, translation = null, lowestLodVisible = null)\n {\n super.Setup(scale, rotation, translation, lowestLodVisible);\n if (lowestLodVisible !== null && lowestLodVisible !== undefined)\n {\n this.lowestLodVisible = Number(lowestLodVisible) | 0;\n }\n return this.localTransform;\n }\n\n @carbon.method\n @impl.implemented\n SetInstanceTransforms(instances)\n {\n const next = [];\n for (const transform of instances ?? [])\n {\n if (!transform || transform.length !== 16)\n {\n throw new TypeError(\"EveChildMesh instance transforms must contain 16 values\");\n }\n next.push(mat4.clone(transform));\n }\n this.instanceTransforms = next;\n return this.instanceTransforms;\n }\n\n @carbon.method\n @impl.adapted\n GetInstanceTransforms()\n {\n return this.instanceTransforms;\n }\n\n @carbon.method\n @impl.implemented\n SetMesh(mesh)\n {\n this.mesh = mesh ?? null;\n }\n\n @carbon.method\n @impl.implemented\n SetOrigin(origin)\n {\n this.origin = Number(origin) | 0;\n }\n\n @carbon.method\n @impl.implemented\n SetScale(scale)\n {\n vec3.copy(this.scaling, scale);\n }\n\n @carbon.method\n @impl.implemented\n SetReflectionMode(mode)\n {\n this.reflectionMode = Number(mode) | 0;\n }\n\n @carbon.method\n @impl.implemented\n SetCastShadow(castShadow)\n {\n this.castShadow = !!castShadow;\n }\n\n @carbon.method\n @impl.implemented\n SetMinScreenSize(minScreenSize)\n {\n this.minScreenSize = Number(minScreenSize);\n }\n\n /** Carbon EveChildMesh::GetLocalToWorldTransform (cpp:1047-1050); the\n * optional out follows the EveChildInstancedMeshes copy-out shape. */\n @carbon.method\n @impl.implemented\n GetLocalToWorldTransform(out = null)\n {\n if (out)\n {\n return mat4.copy(out, this.worldTransform);\n }\n return this.worldTransform;\n }\n\n @carbon.method\n @impl.implemented\n GetName()\n {\n return this.name;\n }\n\n @carbon.method\n @impl.implemented\n SetName(name)\n {\n this.name = String(name ?? \"\");\n }\n\n @carbon.method\n @impl.implemented\n AddTransformModifier(modifier)\n {\n this.transformModifiers.push(modifier);\n }\n\n @carbon.method\n @impl.implemented\n AddDecal(decal)\n {\n this.decals.push(decal);\n }\n\n @carbon.method\n @impl.implemented\n AddAttachment(attachment)\n {\n this.attachments.push(attachment);\n }\n\n @carbon.method\n @impl.implemented\n ClearAttachments()\n {\n this.attachments.length = 0;\n }\n\n @carbon.method\n @impl.implemented\n AddLight(light)\n {\n this.lights.push(light);\n }\n\n @carbon.method\n @impl.implemented\n ClearLights()\n {\n this.lights.length = 0;\n }\n\n @carbon.method\n @impl.implemented\n IsAlwaysOn()\n {\n return true;\n }\n\n @carbon.method\n @impl.implemented\n SetShaderOption(name, value)\n {\n this.mesh?.SetShaderOption?.(name, value);\n for (const decal of this.decals)\n {\n decal?.SetShaderOption?.(name, value);\n }\n for (const attachment of this.attachments)\n {\n attachment?.SetShaderOption?.(name, value);\n }\n }\n\n @carbon.method\n @impl.adapted\n GetMorphTargetNames()\n {\n return this.mesh?.GetMorphTargetNames?.() ?? [];\n }\n\n @carbon.method\n @impl.adapted\n SetMorphTargetWeight(name, weight)\n {\n this.mesh?.SetMorphTargetWeight?.(name, weight);\n }\n\n @carbon.method\n @impl.adapted\n GetMorphTargetWeight(name)\n {\n return this.mesh?.GetMorphTargetWeight?.(name) ?? 0;\n }\n\n /** Rebuilds the source-backed indexed morph buffer from manual and animation weights. */\n @impl.adapted\n UpdateMorphAnimationBuffer()\n {\n const names = this.mesh?.GetMorphTargetNames?.();\n\n this.#morphAnimationOffsets = {\n runtimeEvaluatedOffset: 0,\n runtimeEvaluatedCount: 0,\n bakedOffset: 0,\n bakedCount: 0,\n allCount: 0\n };\n\n if (!Array.isArray(names))\n {\n this.#morphAnimationBuffer = [];\n return 0;\n }\n\n const manual = this.mesh?.GetMorphAnimations?.();\n const records = names.map((name, index) => ({\n index,\n weight: ReadMorphWeight(\n ReadNamedMorph(manual, name) ?? this.mesh?.GetMorphTargetWeight?.(name) ?? 0,\n name,\n \"mesh\"\n ),\n baked: !!(this.mesh?.IsBakedMorph?.(index)\n ?? this.mesh?.GetBakedMorphTarget?.(name)\n ?? false)\n }));\n\n if (this.animationUpdater?.IsInitialized?.())\n {\n const animated = this.animationUpdater.GetMorphAnimations?.();\n\n for (const record of records)\n {\n const name = names[record.index];\n const value = ReadNamedMorph(animated, name);\n\n if (value !== undefined)\n {\n record.weight = ReadMorphWeight(value, name, \"animation\");\n }\n }\n }\n\n const runtime = [];\n const baked = [];\n const inactive = [];\n\n for (const record of records)\n {\n if (record.weight >= 0.001)\n {\n (record.baked ? baked : runtime).push(record);\n }\n else\n {\n inactive.push(record);\n }\n }\n\n this.#morphAnimationBuffer = [ ...runtime, ...baked, ...inactive ];\n this.#morphAnimationOffsets.runtimeEvaluatedCount = runtime.length;\n this.#morphAnimationOffsets.bakedOffset = runtime.length;\n this.#morphAnimationOffsets.bakedCount = baked.length;\n this.#morphAnimationOffsets.allCount = runtime.length + baked.length;\n return this.#morphAnimationOffsets.allCount;\n }\n\n /** Returns detached active indexed morph records for the native filter. */\n @impl.adapted\n GetMorphTargets(filter = 2)\n {\n const normalized = NormalizeMorphFilter(filter);\n let offset = 0;\n let count = 0;\n\n if (normalized === 2)\n {\n count = this.#morphAnimationOffsets.allCount;\n }\n else if (normalized === 0)\n {\n offset = this.#isMorphsBaked\n ? this.#morphAnimationOffsets.runtimeEvaluatedOffset\n : 0;\n count = this.#isMorphsBaked\n ? this.#morphAnimationOffsets.runtimeEvaluatedCount\n : this.#morphAnimationOffsets.allCount;\n }\n else\n {\n offset = this.#morphAnimationOffsets.bakedOffset;\n count = this.#morphAnimationOffsets.bakedCount;\n }\n\n return this.#morphAnimationBuffer.slice(offset, offset + count)\n .map(value => ({ index: value.index, weight: value.weight }));\n }\n\n @carbon.method\n @impl.adapted\n GetSofSourceLocator()\n {\n return null;\n }\n\n /**\n * Sync-side frame update (Carbon EveChildMesh::UpdateSyncronous,\n * cpp:1002-1045). Carbon's body is entirely audio-geometry registration\n * (cpp:1004-1010, 1044 - engine/audio-owned, omitted) plus animationUpdater\n * re-binding and PrePhysicsAnimation stepping (cpp:1011-1042 - skipped: the\n * JS animation seam is absent, there is no Tr2GrannyAnimation runtime), so\n * the port is a documented frame-contract no-op.\n */\n @carbon.method\n @impl.adapted\n @impl.reason(\"Audio-geometry registration is engine-owned and the animationUpdater branches await the JS animation seam; nothing else remains in Carbon's body.\")\n UpdateSyncronous(_updateContext, _params)\n {\n }\n\n /**\n * Per-frame async update (Carbon EveChildMesh::UpdateAsyncronous,\n * cpp:903-1000): rebuild the world transform from the parent, fold the\n * transform modifiers over it, store the activation strength, refresh the\n * attachment lights, the morph buffer, and the world bounds. The GPU ring\n * buffer advance/per-object-data invalidation (cpp:905-909), audio geometry\n * (cpp:920-930), parent VS/PS struct refresh (cpp:932-960), and the skinned\n * GetBounds overload are not modelled, hence @impl.adapted.\n * @param {Object} updateContext - frame context (EveUpdateContext), threaded to modifiers\n * @param {EveChildUpdateParams} params - localToWorldTransform + boneCount/bones\n * @returns {Float32Array} worldTransform\n */\n @carbon.method\n @carbon.contextual([\"camera\"])\n @impl.adapted\n UpdateAsyncronous(updateContext, params)\n {\n const parentTransform = params?.localToWorldTransform;\n\n if (parentTransform && parentTransform.length === 16)\n {\n this.UpdateTransform(parentTransform);\n }\n\n applyTransformModifiers(\n this,\n updateContext,\n params?.boneCount ?? 0,\n params?.bones ?? null\n );\n\n this.#activationStrength = Number(params?.activationStrength ?? 1);\n\n // Carbon (cpp:962-970): attachments refresh their lights from the updated\n // world transform. Bones come from GetBoneTransforms (animationUpdater) -\n // null until the JS animation seam exists.\n for (const attachment of this.attachments)\n {\n attachment?.UpdateLights?.(this.worldTransform, null, 0, this.#activationStrength, 0);\n }\n\n this.UpdateMorphAnimationBuffer();\n\n // Carbon (cpp:974-997): world AABB from the mesh bounds, world sphere\n // enclosing it. The skinned GetBounds overload (animation transforms +\n // morph targets, cpp:977-982) awaits the animation seam; Tr2MeshBase::\n // GetBounds itself is a recorded gap (CARBON-PARITY-REVIEW-2026-07-23.md\n // section 2.3), hence the duck call (Tr2InstancedMesh implements it).\n this.#worldBoundsValid = false;\n const bounds = this.mesh?.GetBounds?.();\n\n if (bounds?.min && bounds?.max)\n {\n this.#worldBoundsMin[0] = this.#worldBoundsMin[1] = this.#worldBoundsMin[2] = Infinity;\n this.#worldBoundsMax[0] = this.#worldBoundsMax[1] = this.#worldBoundsMax[2] = -Infinity;\n for (let index = 0; index < 8; index++)\n {\n vec3.set(\n BOX_CORNER_SCRATCH,\n index & 1 ? bounds.max[0] : bounds.min[0],\n index & 2 ? bounds.max[1] : bounds.min[1],\n index & 4 ? bounds.max[2] : bounds.min[2]\n );\n vec3.transformMat4(BOX_CORNER_SCRATCH, BOX_CORNER_SCRATCH, this.worldTransform);\n vec3.min(this.#worldBoundsMin, this.#worldBoundsMin, BOX_CORNER_SCRATCH);\n vec3.max(this.#worldBoundsMax, this.#worldBoundsMax, BOX_CORNER_SCRATCH);\n }\n this.#worldBoundsValid = true;\n sph3.fromBounds(this.#worldBoundingSphere, this.#worldBoundsMin, this.#worldBoundsMax);\n }\n else\n {\n sph3.set(this.#worldBoundingSphere, 0, 0, 0, 0);\n }\n\n this.#hasUpdated = true;\n return this.worldTransform;\n }\n\n /**\n * Frame visibility + LOD state (Carbon EveChildMesh::UpdateVisibility,\n * cpp:366-463): screen size via the frustum, invLodFactor scaling, the\n * minScreenSize/lowestLodVisible gates, the per-instance visibility gate,\n * and the attachment/decal visibility fan-out. Carbon recomputes the local\n * mesh bounds here (cpp:380-394) but consumes only the world sphere/box\n * computed in UpdateAsyncronous, so the dead recompute is skipped. The\n * raytracing branch (cpp:450-462) is engine-owned and omitted.\n * @param {Object} updateContext - frame context (frustum + invLodFactor ducks)\n * @param {Float32Array} _parentTransform\n * @param {Number} parentLod - parent Tr2Lod level\n * @returns {Boolean} isVisible\n */\n @carbon.method\n @impl.adapted\n @impl.reason(\"Bone-fed decal/attachment bounds await the animation seam and the raytracing refresh is engine-owned; the LOD/screen-size math is ported.\")\n UpdateVisibility(updateContext, _parentTransform = null, parentLod = Tr2Lod.TR2_LOD_HIGH)\n {\n this.#isVisible = false;\n this.currentScreenSize = -1;\n this.#instancesVisible = false;\n this.currentInstanceScreenSize = -1;\n\n if (!this.#hasUpdated)\n {\n return false;\n }\n\n const frustum = updateContext?.GetFrustum?.() ?? updateContext?.frustum;\n const invLodFactor = Number(updateContext?.GetInvLodFactor?.() ?? updateContext?.invLodFactor) || 1;\n\n if (this.mesh)\n {\n this.currentScreenSize = Number(frustum?.GetPixelSizeAccross?.(this.#worldBoundingSphere) ?? Infinity) || 0;\n\n // Cached Tr2InstancedMesh downcast in Carbon (m_instancedMesh); the JS\n // port duck-types the instanced surface instead.\n const instanced = typeof this.mesh.GetInstanceBoundsClosestToPoint === \"function\";\n let instanceBounds = null;\n\n if (instanced)\n {\n // Carbon: TransformCoord(frustum.m_viewPos, Inverse(m_worldTransform))\n // - a single-matrix point transform (no composition; TransformCoord\n // maps to vec3.transformMat4 unchanged per the math conventions).\n if (!mat4.invert(INVERSE_WORLD_SCRATCH, this.worldTransform))\n {\n mat4.identity(INVERSE_WORLD_SCRATCH);\n }\n const viewPos = frustum?.m_viewPos ?? frustum?.viewPos ?? frustum?.GetViewPosition?.() ?? ZERO_VEC3;\n vec3.transformMat4(LOCAL_VIEW_SCRATCH, viewPos, INVERSE_WORLD_SCRATCH);\n instanceBounds = this.mesh.GetInstanceBoundsClosestToPoint(LOCAL_VIEW_SCRATCH);\n }\n\n if (instanceBounds)\n {\n // Carbon: instanceBounds.Transform(m_worldTransform) - single-matrix\n // sphere transform, ported via sph3.transformMat4.\n sph3.set(\n INSTANCE_SPHERE_SCRATCH,\n instanceBounds.center[0],\n instanceBounds.center[1],\n instanceBounds.center[2],\n instanceBounds.radius\n );\n sph3.transformMat4(INSTANCE_SPHERE_SCRATCH, INSTANCE_SPHERE_SCRATCH, this.worldTransform);\n this.currentInstanceScreenSize = Number(frustum?.GetPixelSizeAccross?.(INSTANCE_SPHERE_SCRATCH) ?? Infinity) || 0;\n this.mesh.UseWithScreenSize?.(this.currentInstanceScreenSize, INSTANCE_SPHERE_SCRATCH[3]);\n }\n else\n {\n // Carbon uses std::numeric_limits<float>::max(); Infinity keeps the\n // instance gate permanently open the same way.\n this.currentInstanceScreenSize = Infinity;\n this.mesh.UseWithScreenSize?.(this.currentScreenSize, this.#worldBoundingSphere[3]);\n }\n\n this.currentScreenSize *= invLodFactor;\n this.currentInstanceScreenSize *= invLodFactor;\n\n BOX_QUERY_SCRATCH.min = this.#worldBoundsMin;\n BOX_QUERY_SCRATCH.max = this.#worldBoundsMax;\n const boxVisible = this.#worldBoundsValid &&\n (frustum?.IsBoxVisible ? !!frustum.IsBoxVisible(BOX_QUERY_SCRATCH) : true);\n\n if (boxVisible)\n {\n this.#isVisible = parentLod >= this.lowestLodVisible && this.currentScreenSize >= this.minScreenSize;\n this.#instancesVisible = this.#isVisible &&\n this.currentInstanceScreenSize >= EveChildMesh.#instanceScreenSizeThreshold;\n }\n }\n\n // Carbon (cpp:427-435): attachments always refresh visibility; bones from\n // GetBoneTransforms await the animation seam.\n for (const attachment of this.attachments)\n {\n attachment?.UpdateVisibility?.(updateContext, this.worldTransform, null, 0);\n }\n\n if (this.#isVisible)\n {\n for (const decal of this.decals)\n {\n // Carbon (cpp:441-446) feeds animated bone matrices to the decal first\n // - skipped until the JS animation seam exists. Carbon passes\n // &m_parentData (per-object shading struct, GPU seam); the owning\n // child stands in as the duck-typed parent.\n decal?.UpdateVisibility?.(updateContext, this);\n }\n }\n\n return this.#isVisible;\n }\n\n /**\n * Collects this child (and its decals) as renderables (Carbon\n * EveChildMesh::GetRenderables, cpp:571-616): instanced meshes contribute\n * only while the per-instance gate passed; decals ride along through their\n * duck-typed renderable collectors (mesh cache is engine-owned, passed null\n * as in EveSpaceObject2.GetRenderables).\n */\n @carbon.method\n @impl.adapted\n @impl.reason(\"The decal mesh cache is engine-owned (null placeholder); collection structure is ported.\")\n GetRenderables(out = [])\n {\n if (!this.#isVisible)\n {\n return out;\n }\n\n const instanced = typeof this.mesh?.GetInstanceBoundsClosestToPoint === \"function\";\n\n if (instanced)\n {\n if (this.#instancesVisible)\n {\n out.push(this);\n if (this.decals.length && this.mesh.GetGeometryResource?.())\n {\n for (const decal of this.decals)\n {\n decal?.GetInstancedRenderables?.(out, null, this.mesh, this.currentInstanceScreenSize);\n }\n }\n }\n }\n else\n {\n out.push(this);\n const geometryResource = this.mesh?.GetGeometryResource?.();\n if (this.decals.length && geometryResource)\n {\n for (const decal of this.decals)\n {\n decal?.GetRenderables?.(out, null, geometryResource, this.currentScreenSize);\n }\n }\n }\n\n return out;\n }\n\n /** Carbon EveChildMesh::GetBoundingSphere (cpp:618-627): the realized world\n * sphere, valid only after an update produced bounds (radius > 0). */\n @carbon.method\n @impl.implemented\n GetBoundingSphere(out = vec4.create(), _query = 0)\n {\n if (this.#worldBoundingSphere[3] > 0)\n {\n vec4.copy(out, this.#worldBoundingSphere);\n return true;\n }\n return false;\n }\n\n /** Carbon EveChildMesh::HasTransparentBatches (cpp:629-637). */\n @carbon.method\n @impl.implemented\n HasTransparentBatches()\n {\n if (this.display && this.mesh)\n {\n return (this.mesh.GetAreas?.(TriBatchType.TRIBATCHTYPE_TRANSPARENT)?.length ?? 0) > 0;\n }\n return false;\n }\n\n /** Carbon EveChildMesh::IsVisible (cpp:639-650): sphere-in-frustum plus the\n * estimated pixel size against the context visibility threshold. */\n @carbon.method\n @impl.adapted\n @impl.reason(\"Frustum and threshold arrive via the duck-typed update context instead of renderer state.\")\n IsVisible(updateContext)\n {\n if (this.#worldBoundingSphere[3] > 0)\n {\n const frustum = updateContext?.GetFrustum?.() ?? updateContext?.frustum;\n if (frustum?.IsSphereVisible?.(this.#worldBoundingSphere) !== false)\n {\n const method = frustum?.GetPixelSizeAccrossEst ?? frustum?.GetPixelSizeAccross;\n const size = Number(typeof method === \"function\" ? method.call(frustum, this.#worldBoundingSphere) : 0) || 0;\n const threshold = Number(updateContext?.GetVisibilityThreshold?.() ?? updateContext?.visibilityThreshold) || 0;\n return size >= threshold;\n }\n }\n return false;\n }\n\n /** Carbon EveChildMesh::GetBatches (cpp:652-670): the mesh delegates per\n * batch type and activated attachments recurse. Carbon also passes\n * min(currentInstanceScreenSize, currentScreenSize) for LOD selection and a\n * reverse-winding flag from Determinant(m_worldTransform) < 0; both are\n * resolved by the engine at batch realization in the GPU-free port.\n * Returns whether any batch was committed (JS addition; Carbon returns\n * void). */\n @carbon.method\n @impl.adapted\n @impl.reason(\"Screen-size LOD selection and winding reversal are engine-resolved at realization; delegation structure is ported.\")\n GetBatches(batches, batchType, perObjectData, reason = Tr2RenderReason.TR2RENDERREASON_NORMAL)\n {\n if (!this.display)\n {\n return false;\n }\n\n let committed = false;\n\n if (this.mesh)\n {\n committed = this.mesh.GetBatches(batches, this.mesh.GetAreas(batchType), perObjectData) === true;\n }\n\n if (this.#activationStrength !== 0)\n {\n for (const attachment of this.attachments)\n {\n committed = attachment?.GetBatches?.(batches, batchType, perObjectData, reason) === true || committed;\n }\n }\n\n return committed;\n }\n\n /** Carbon EveChildMesh::GetShadowBatches (cpp:672-681): the OPAQUE areas\n * only, gated on display/mesh/hasUpdated. shadowPixelSize and the\n * reverse-winding flag are engine-resolved at realization. Returns whether\n * any batch was committed (JS addition; Carbon returns void). */\n @carbon.method\n @impl.adapted\n @impl.reason(\"shadowPixelSize LOD selection and winding reversal are engine-resolved at realization; delegation structure is ported.\")\n GetShadowBatches(batches, perObjectData, _shadowPixelSize)\n {\n if (this.display && this.mesh && this.#hasUpdated)\n {\n return this.mesh.GetBatches(batches, this.mesh.GetAreas(TriBatchType.TRIBATCHTYPE_OPAQUE), perObjectData) === true;\n }\n return false;\n }\n\n /** Carbon EveChildMesh::GetSortValue (cpp:787-792): view distance scaled by\n * sortValueScale plus sortValueOffset. */\n @carbon.method\n @impl.adapted\n @impl.reason(\"Carbon reads the Tr2Renderer view-position global; the relocated camera state arrives via the threaded render context.\")\n GetSortValue(renderContext = null)\n {\n const viewPosition = renderContext?.GetViewPosition?.();\n const x = (viewPosition?.[0] ?? 0) - this.worldTransform[12];\n const y = (viewPosition?.[1] ?? 0) - this.worldTransform[13];\n const z = (viewPosition?.[2] ?? 0) - this.worldTransform[14];\n return Math.hypot(x, y, z) * this.sortValueScale + this.sortValueOffset;\n }\n\n /** Carbon EveChildMesh::GetShadowPerObjectData (cpp:794-797) forwards the\n * shadow pass to the same per-object record. */\n @carbon.method\n @impl.implemented\n GetShadowPerObjectData(accumulator = null)\n {\n return this.GetPerObjectData(accumulator);\n }\n\n /** Carbon EveChildMesh::GetPerObjectData (cpp:799-843) uploads bone/morph\n * ring-buffer offsets and allocates Tr2PerObjectDataWithPersistentBuffers;\n * those fills are GPU ring-buffer state, so the GPU-free record carries the\n * live object reference for the engine serializer to pull current values at\n * realization (mirrors EveSpaceObject2.GetPerObjectData). */\n @carbon.method\n @impl.adapted\n @impl.reason(\"Persistent VS/PS device buffers and bone/morph ring offsets are engine-owned; the record carries the object reference the engine serializer consumes.\")\n GetPerObjectData(accumulator = null)\n {\n const data = typeof accumulator?.Allocate === \"function\"\n ? accumulator.Allocate(Tr2PerObjectData)\n : new Tr2PerObjectData();\n data.object = this;\n return data;\n }\n\n /**\n * Carbon's two IsCastingShadow overloads, dispatched on the second argument:\n * a position vector (length >= 3) selects the sphere-overlap overload\n * (cpp:338-364); anything else is the shadow-frustum overload (cpp:295-336),\n * whose Carbon out-param float& sizeInShadow becomes the optional trailing\n * length-1 array (out-params last).\n * @param {Object} cameraFrustum\n * @param {Object|Float32Array} shadowFrustumOrPosition\n * @param {Number} renderReasonOrRadius\n * @param {Array|Number} sizeInShadowOutOrRenderReason\n * @returns {Boolean}\n */\n @carbon.method\n @impl.adapted\n @impl.reason(\"Overload dispatch by argument shape and a length-1 out array replace C++ overloading and the float& out-param; the shadow math is ported.\")\n IsCastingShadow(cameraFrustum, shadowFrustumOrPosition, renderReasonOrRadius, sizeInShadowOutOrRenderReason = null)\n {\n if (!this.display || !this.castShadow || !this.#hasUpdated)\n {\n return false;\n }\n\n const positionOverload = typeof shadowFrustumOrPosition?.length === \"number\" &&\n shadowFrustumOrPosition.length >= 3;\n const renderReason = positionOverload\n ? Number(sizeInShadowOutOrRenderReason ?? Tr2RenderReason.TR2RENDERREASON_NORMAL)\n : Number(renderReasonOrRadius ?? Tr2RenderReason.TR2RENDERREASON_NORMAL);\n\n if (renderReason === Tr2RenderReason.TR2RENDERREASON_REFLECTION &&\n !EveChildMesh.#ShouldReflect(this.reflectionMode))\n {\n return false;\n }\n\n if (positionOverload)\n {\n // Carbon (cpp:338-364): squared distance between the world sphere and\n // the query sphere against their combined radius.\n if (!this.GetBoundingSphere(SHADOW_SPHERE_SCRATCH))\n {\n return false;\n }\n const position = shadowFrustumOrPosition;\n const radius = Number(renderReasonOrRadius) || 0;\n const dx = SHADOW_SPHERE_SCRATCH[0] - position[0];\n const dy = SHADOW_SPHERE_SCRATCH[1] - position[1];\n const dz = SHADOW_SPHERE_SCRATCH[2] - position[2];\n const combined = radius + SHADOW_SPHERE_SCRATCH[3];\n return dx * dx + dy * dy + dz * dz - combined * combined < 0;\n }\n\n // Carbon (cpp:295-336): shadow-frustum visibility, then the size in the\n // shadow map from the instance sphere nearest the shadow eye (falling back\n // to the whole world sphere).\n const shadowFrustum = shadowFrustumOrPosition;\n const sizeOut = sizeInShadowOutOrRenderReason;\n if (sizeOut)\n {\n sizeOut[0] = 0;\n }\n\n if (this.#worldBoundingSphere[3] <= 0)\n {\n return false;\n }\n\n let sizeInShadow = 0;\n if (shadowFrustum?.IsVisible?.(cameraFrustum, this.#worldBoundingSphere))\n {\n let sphere = this.#worldBoundingSphere;\n if (typeof this.mesh?.GetInstanceBoundsClosestToPoint === \"function\")\n {\n // Carbon: TransformCoord(shadowFrustum.GetEyePos(), Inverse(\n // m_worldTransform)) - single-matrix point transform (no composition).\n if (!mat4.invert(INVERSE_WORLD_SCRATCH, this.worldTransform))\n {\n mat4.identity(INVERSE_WORLD_SCRATCH);\n }\n const eyePos = shadowFrustum?.GetEyePos?.() ?? ZERO_VEC3;\n vec3.transformMat4(LOCAL_VIEW_SCRATCH, eyePos, INVERSE_WORLD_SCRATCH);\n const instanceBounds = this.mesh.GetInstanceBoundsClosestToPoint(LOCAL_VIEW_SCRATCH);\n if (instanceBounds)\n {\n // Carbon: instanceBounds.Transform(m_worldTransform) - single-matrix\n // sphere transform.\n sph3.set(\n INSTANCE_SPHERE_SCRATCH,\n instanceBounds.center[0],\n instanceBounds.center[1],\n instanceBounds.center[2],\n instanceBounds.radius\n );\n sph3.transformMat4(INSTANCE_SPHERE_SCRATCH, INSTANCE_SPHERE_SCRATCH, this.worldTransform);\n sphere = INSTANCE_SPHERE_SCRATCH;\n }\n }\n sizeInShadow = Number(shadowFrustum?.GetSizeInShadow?.(sphere)) || 0;\n }\n\n if (sizeOut)\n {\n sizeOut[0] = sizeInShadow;\n }\n return sizeInShadow > 5;\n }\n\n /** Carbon EveChildMesh::ChangeLOD (cpp:1052-1054) is an intentional no-op. */\n @carbon.method\n @impl.implemented\n ChangeLOD(_lod)\n {\n }\n\n /** Carbon EveChildMesh::GetPickingBatches (cpp:862-889) maps Tr2PickTypes\n * flags onto batch-type collections with transparent/additive special\n * casing; the pick-type flag enum is not yet ported, so the surface fails\n * loudly rather than mis-collecting. */\n @carbon.method\n @impl.notImplemented\n GetPickingBatches(..._args)\n {\n throw new Error(\"EveChildMesh.GetPickingBatches is not implemented in CarbonEngineJS.\");\n }\n\n /** Carbon EveChildMesh::InitializeAnimation (cpp:217-232) wires the\n * animationUpdater to the mesh geometry resource; awaits the JS animation\n * seam (no Tr2GrannyAnimation runtime). */\n @carbon.method\n @impl.notImplemented\n InitializeAnimation(..._args)\n {\n throw new Error(\"EveChildMesh.InitializeAnimation is not implemented in CarbonEngineJS.\");\n }\n\n /** Carbon BakeMorphs runs the merge-morphs GPU compute pass; GPU-owned. */\n @carbon.method\n @impl.notImplemented\n BakeMorphs(..._args)\n {\n throw new Error(\"EveChildMesh.BakeMorphs is not implemented in CarbonEngineJS.\");\n }\n\n /** Carbon UnbakeMorphs releases the baked-morph GPU allocation; GPU-owned. */\n @carbon.method\n @impl.notImplemented\n UnbakeMorphs(..._args)\n {\n throw new Error(\"EveChildMesh.UnbakeMorphs is not implemented in CarbonEngineJS.\");\n }\n\n /** Carbon IsMeshBaked reads the baked-morph GPU allocation state; GPU-owned. */\n @carbon.method\n @impl.notImplemented\n IsMeshBaked(..._args)\n {\n throw new Error(\"EveChildMesh.IsMeshBaked is not implemented in CarbonEngineJS.\");\n }\n\n // Carbon EntityComponents::ShouldReflect (EveEntity.cpp:13-33) also consults\n // the g_eveReflectionMode quality global (scene/engine-owned). With\n // reflections enabled, REFLECT_NEVER is the only unconditionally-false mode,\n // which is the portable core of the predicate.\n static #ShouldReflect(mode)\n {\n return mode !== ReflectionMode.REFLECT_NEVER;\n }\n\n // Carbon s_instanceScreenSizeThreshold (EveChildMesh.cpp:22).\n static #instanceScreenSizeThreshold = 1;\n\n static Origin = Origin;\n\n static ReflectionMode = ReflectionMode;\n\n static Tr2Lod = Tr2Lod;\n\n}\n\nfunction ReadNamedMorph(values, name)\n{\n if (values instanceof Map)\n {\n return values.has(name) ? values.get(name) : undefined;\n }\n\n if (values && typeof values === \"object\" && Object.hasOwn(values, name))\n {\n return values[name];\n }\n\n return undefined;\n}\n\nfunction ReadMorphWeight(value, name, source)\n{\n const weight = Number(value && typeof value === \"object\" ? value.weight : value);\n\n if (!Number.isFinite(weight))\n {\n throw new TypeError(`EveChildMesh ${source} morph target \"${name}\" weight must be finite`);\n }\n\n return weight;\n}\n\nfunction NormalizeMorphFilter(value)\n{\n if (typeof value === \"string\")\n {\n const normalized = value.toLowerCase();\n if (normalized === \"runtime\" || normalized === \"runtime_evaluated\") return 0;\n if (normalized === \"baked\") return 1;\n if (normalized === \"all\") return 2;\n }\n\n const filter = Number(value);\n if (filter === 0 || filter === 1 || filter === 2) return filter;\n throw new TypeError(`Unsupported EveChildMesh morph target filter \"${value}\"`);\n}\n"],"names":["INVERSE_WORLD_SCRATCH","mat4","create","LOCAL_VIEW_SCRATCH","vec3","INSTANCE_SPHERE_SCRATCH","vec4","SHADOW_SPHERE_SCRATCH","BOX_CORNER_SCRATCH","BOX_QUERY_SCRATCH","min","max","ZERO_VEC3","_EveChildMesh","_identity","EveChildMesh","EveChildTransform","e","_init_reflectionMode","_init_extra_reflectionMode","_init_transformModifiers","_init_extra_transformModifiers","_init_worldTransform","_init_extra_worldTransform","_init_display","_init_extra_display","_init_castShadow","_init_extra_castShadow","_init_mesh","_init_extra_mesh","_init_name","_init_extra_name","_init_rotation","_init_extra_rotation","_init_translation","_init_extra_translation","_init_scaling","_init_extra_scaling","_init_localTransform","_init_extra_localTransform","_init_decals","_init_extra_decals","_init_staticTransform","_init_extra_staticTransform","_init_animationUpdater","_init_extra_animationUpdater","_init_attachments","_init_extra_attachments","_init_lights","_init_extra_lights","_init_lowestLodVisible","_init_extra_lowestLodVisible","_init_minScreenSize","_init_extra_minScreenSize","_init_sortValueOffset","_init_extra_sortValueOffset","_init_sortValueScale","_init_extra_sortValueScale","_init_currentScreenSize","_init_extra_currentScreenSize","_init_currentInstanceScreenSize","_init_extra_currentInstanceScreenSize","_init_useSRT","_init_extra_useSRT","_init_updateAnimation","_init_extra_updateAnimation","_init_origin","_init_extra_origin","_init_instanceTransforms","_init_extra_instanceTransforms","_init_sofDna","_init_extra_sofDna","_init_sofParentHullName","_init_extra_sofParentHullName","_init_sofLocatorSetName","_init_extra_sofLocatorSetName","_init_sofLocatorIndex","_init_extra_sofLocatorIndex","_initProto","c","_initClass","_applyDecs","type","define","className","family","io","notify","persist","int32","schema","enum","list","read","boolean","objectRef","string","quat","float32","rebuild","array","carbon","method","impl","adapted","implemented","reason","contextual","notImplemented","constructor","args","runtimeEvaluatedOffset","runtimeEvaluatedCount","bakedOffset","bakedCount","allCount","reflectionMode","transformModifiers","worldTransform","display","castShadow","mesh","name","rotation","translation","scaling","fromValues","localTransform","decals","staticTransform","animationUpdater","attachments","lights","lowestLodVisible","minScreenSize","sortValueOffset","sortValueScale","currentScreenSize","currentInstanceScreenSize","useSRT","updateAnimation","origin","instanceTransforms","sofDna","sofParentHullName","sofLocatorSetName","sofLocatorIndex","Initialize","RebuildLocalTransform","Setup","scale","undefined","Number","SetInstanceTransforms","instances","next","transform","length","TypeError","push","clone","GetInstanceTransforms","SetMesh","SetOrigin","SetScale","copy","SetReflectionMode","mode","SetCastShadow","SetMinScreenSize","GetLocalToWorldTransform","out","GetName","SetName","String","AddTransformModifier","modifier","AddDecal","decal","AddAttachment","attachment","ClearAttachments","AddLight","light","ClearLights","IsAlwaysOn","SetShaderOption","value","GetMorphTargetNames","SetMorphTargetWeight","weight","GetMorphTargetWeight","UpdateMorphAnimationBuffer","names","Array","isArray","manual","GetMorphAnimations","records","map","index","ReadMorphWeight","ReadNamedMorph","baked","IsBakedMorph","GetBakedMorphTarget","IsInitialized","animated","record","runtime","inactive","GetMorphTargets","filter","normalized","NormalizeMorphFilter","offset","count","slice","GetSofSourceLocator","UpdateSyncronous","_updateContext","_params","UpdateAsyncronous","updateContext","params","parentTransform","localToWorldTransform","UpdateTransform","applyTransformModifiers","boneCount","bones","activationStrength","UpdateLights","bounds","GetBounds","Infinity","set","transformMat4","sph3","fromBounds","UpdateVisibility","_parentTransform","parentLod","Tr2Lod","TR2_LOD_HIGH","frustum","GetFrustum","invLodFactor","GetInvLodFactor","GetPixelSizeAccross","instanced","GetInstanceBoundsClosestToPoint","instanceBounds","invert","identity","viewPos","m_viewPos","GetViewPosition","center","radius","UseWithScreenSize","boxVisible","IsBoxVisible","GetRenderables","GetGeometryResource","GetInstancedRenderables","geometryResource","GetBoundingSphere","_query","HasTransparentBatches","GetAreas","TriBatchType","TRIBATCHTYPE_TRANSPARENT","IsVisible","IsSphereVisible","GetPixelSizeAccrossEst","size","call","threshold","GetVisibilityThreshold","visibilityThreshold","GetBatches","batches","batchType","perObjectData","Tr2RenderReason","TR2RENDERREASON_NORMAL","committed","GetShadowBatches","_shadowPixelSize","TRIBATCHTYPE_OPAQUE","GetSortValue","renderContext","viewPosition","x","y","z","Math","hypot","GetShadowPerObjectData","accumulator","GetPerObjectData","data","Allocate","Tr2PerObjectData","object","IsCastingShadow","cameraFrustum","shadowFrustumOrPosition","renderReasonOrRadius","sizeInShadowOutOrRenderReason","positionOverload","renderReason","TR2RENDERREASON_REFLECTION","position","dx","dy","dz","combined","shadowFrustum","sizeOut","sizeInShadow","sphere","eyePos","GetEyePos","GetSizeInShadow","ChangeLOD","_lod","GetPickingBatches","_args","Error","InitializeAnimation","BakeMorphs","UnbakeMorphs","IsMeshBaked","#ShouldReflect","ReflectionMode","REFLECT_NEVER","Origin","values","Map","has","get","Object","hasOwn","source","isFinite","toLowerCase"],"mappings":"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"}
@@ -3,26 +3,26 @@ import { mat4 } from '@carbonenginejs/core-math/mat4';
3
3
  import { quat } from '@carbonenginejs/core-math/quat';
4
4
  import { vec3 } from '@carbonenginejs/core-math/vec3';
5
5
  import { CjsModel } from '@carbonenginejs/core-types/model';
6
- import { type } from '@carbonenginejs/core-types/schema';
6
+ import { type, carbon, impl } from '@carbonenginejs/core-types/schema';
7
7
 
8
- let _initClass, _init_translation, _init_extra_translation, _init_scaling, _init_extra_scaling, _init_rotation, _init_extra_rotation, _init_localTransform, _init_extra_localTransform, _init_worldTransform, _init_extra_worldTransform, _init_staticTransform, _init_extra_staticTransform, _init_useSRT, _init_extra_useSRT, _init_useStaticRotation, _init_extra_useStaticRotation, _init_useStaticScale, _init_extra_useStaticScale;
8
+ let _initProto, _initClass, _init_translation, _init_extra_translation, _init_scaling, _init_extra_scaling, _init_rotation, _init_extra_rotation, _init_localTransform, _init_extra_localTransform, _init_worldTransform, _init_extra_worldTransform, _init_staticTransform, _init_extra_staticTransform, _init_useSRT, _init_extra_useSRT, _init_useStaticRotation, _init_extra_useStaticRotation, _init_useStaticScale, _init_extra_useStaticScale;
9
9
  let _EveChildTransform;
10
10
  new class extends _identity {
11
11
  static [class EveChildTransform extends CjsModel {
12
12
  static {
13
13
  ({
14
- e: [_init_translation, _init_extra_translation, _init_scaling, _init_extra_scaling, _init_rotation, _init_extra_rotation, _init_localTransform, _init_extra_localTransform, _init_worldTransform, _init_extra_worldTransform, _init_staticTransform, _init_extra_staticTransform, _init_useSRT, _init_extra_useSRT, _init_useStaticRotation, _init_extra_useStaticRotation, _init_useStaticScale, _init_extra_useStaticScale],
14
+ e: [_init_translation, _init_extra_translation, _init_scaling, _init_extra_scaling, _init_rotation, _init_extra_rotation, _init_localTransform, _init_extra_localTransform, _init_worldTransform, _init_extra_worldTransform, _init_staticTransform, _init_extra_staticTransform, _init_useSRT, _init_extra_useSRT, _init_useStaticRotation, _init_extra_useStaticRotation, _init_useStaticScale, _init_extra_useStaticScale, _initProto],
15
15
  c: [_EveChildTransform, _initClass]
16
16
  } = _applyDecs2311(this, [type.define({
17
17
  className: "EveChildTransform",
18
18
  family: "eve/child"
19
- })], [[[type, type.vec3], 16, "translation"], [[type, type.vec3], 16, "scaling"], [[type, type.quat], 16, "rotation"], [[type, type.mat4], 16, "localTransform"], [[type, type.mat4], 16, "worldTransform"], [[type, type.boolean], 16, "staticTransform"], [[type, type.boolean], 16, "useSRT"], [[type, type.boolean], 16, "useStaticRotation"], [[type, type.boolean], 16, "useStaticScale"]], 0, void 0, CjsModel));
19
+ })], [[[type, type.vec3], 16, "translation"], [[type, type.vec3], 16, "scaling"], [[type, type.quat], 16, "rotation"], [[type, type.mat4], 16, "localTransform"], [[type, type.mat4], 16, "worldTransform"], [[type, type.boolean], 16, "staticTransform"], [[type, type.boolean], 16, "useSRT"], [[type, type.boolean], 16, "useStaticRotation"], [[type, type.boolean], 16, "useStaticScale"], [[carbon, carbon.method, impl, impl.implemented], 18, "RebuildLocalTransform"]], 0, void 0, CjsModel));
20
20
  }
21
21
  constructor(...args) {
22
22
  super(...args);
23
23
  _init_extra_useStaticScale(this);
24
24
  }
25
- translation = _init_translation(this, vec3.create());
25
+ translation = (_initProto(this), _init_translation(this, vec3.create()));
26
26
  scaling = (_init_extra_translation(this), _init_scaling(this, vec3.fromValues(1, 1, 1)));
27
27
  rotation = (_init_extra_scaling(this), _init_rotation(this, quat.create()));
28
28
  localTransform = (_init_extra_rotation(this), _init_localTransform(this, mat4.create()));
@@ -60,13 +60,18 @@ new class extends _identity {
60
60
  this.staticTransform = true;
61
61
  return this.Setup(scale, rotation, translation, lowestLodVisible);
62
62
  }
63
+
64
+ // Carbon: m_worldTransform = m_localTransform * parentTransform in
65
+ // row-vector convention (local first, then parent), which is
66
+ // mat4.multiply(world, parent, local) in gl-matrix - matching
67
+ // EveTransform.UpdateViewDependentData.
63
68
  UpdateTransform(parentTransform) {
64
69
  if (this.staticTransform || !this.useSRT) {
65
- return mat4.multiply(this.worldTransform, this.localTransform, parentTransform);
70
+ return mat4.multiply(this.worldTransform, parentTransform, this.localTransform);
66
71
  }
67
72
  this.RebuildLocalTransform();
68
73
  if (!this.useStaticRotation && !this.useStaticScale) {
69
- return mat4.multiply(this.worldTransform, this.localTransform, parentTransform);
74
+ return mat4.multiply(this.worldTransform, parentTransform, this.localTransform);
70
75
  }
71
76
  const scale = mat4.getScaling(vec3.create(), parentTransform);
72
77
  const rotation = _EveChildTransform.#getRotation(quat.create(), parentTransform, scale);
@@ -78,7 +83,7 @@ new class extends _identity {
78
83
  quat.identity(rotation);
79
84
  }
80
85
  const modifiedParentTransform = _EveChildTransform.#compose(mat4.create(), scale, rotation, translation);
81
- return mat4.multiply(this.worldTransform, this.localTransform, modifiedParentTransform);
86
+ return mat4.multiply(this.worldTransform, modifiedParentTransform, this.localTransform);
82
87
  }
83
88
  }];
84
89
  #compose(out, scale, rotation, translation) {
@@ -1 +1 @@
1
- {"version":3,"file":"EveChildTransform.js","sources":["../../../../src/eve/child/EveChildTransform.js"],"sourcesContent":["// Source: E:\\carbonengine\\trinity\\trinity\\Eve\\SpaceObject\\Children\\EveChildTransform.h\n// Source: E:\\carbonengine\\trinity\\trinity\\Eve\\SpaceObject\\Children\\EveChildTransform.cpp\nimport { mat4 } from \"@carbonenginejs/core-math/mat4\";\nimport { quat } from \"@carbonenginejs/core-math/quat\";\nimport { vec3 } from \"@carbonenginejs/core-math/vec3\";\nimport { CjsModel } from \"@carbonenginejs/core-types/model\";\nimport { type } from \"@carbonenginejs/core-types/schema\";\n\n\n@type.define({\n className: \"EveChildTransform\",\n family: \"eve/child\"\n})\nexport class EveChildTransform extends CjsModel\n{\n @type.vec3\n translation = vec3.create();\n\n @type.vec3\n scaling = vec3.fromValues(1, 1, 1);\n\n @type.quat\n rotation = quat.create();\n\n @type.mat4\n localTransform = mat4.create();\n\n @type.mat4\n worldTransform = mat4.create();\n\n @type.boolean\n staticTransform = false;\n\n @type.boolean\n useSRT = true;\n\n @type.boolean\n useStaticRotation = false;\n\n @type.boolean\n useStaticScale = false;\n\n RebuildLocalTransform()\n {\n if (this.useSRT)\n {\n EveChildTransform.#compose(this.localTransform, this.scaling, this.rotation, this.translation);\n }\n return this.localTransform;\n }\n\n Setup(scale = null, rotation = null, translation = null, _lowestLodVisible = null)\n {\n if (!this.useSRT)\n {\n return this.localTransform;\n }\n if (scale)\n {\n vec3.copy(this.scaling, scale);\n }\n if (rotation)\n {\n quat.copy(this.rotation, rotation);\n }\n if (translation)\n {\n vec3.copy(this.translation, translation);\n }\n return this.RebuildLocalTransform();\n }\n\n SetupWithStaticRotation(scale = null, rotation = null, translation = null, lowestLodVisible = null)\n {\n this.useStaticRotation = true;\n return this.Setup(scale, rotation, translation, lowestLodVisible);\n }\n\n SetupWithStaticTransform(scale = null, rotation = null, translation = null, lowestLodVisible = null)\n {\n this.staticTransform = true;\n return this.Setup(scale, rotation, translation, lowestLodVisible);\n }\n\n UpdateTransform(parentTransform)\n {\n if (this.staticTransform || !this.useSRT)\n {\n return mat4.multiply(this.worldTransform, this.localTransform, parentTransform);\n }\n this.RebuildLocalTransform();\n if (!this.useStaticRotation && !this.useStaticScale)\n {\n return mat4.multiply(this.worldTransform, this.localTransform, parentTransform);\n }\n const scale = mat4.getScaling(vec3.create(), parentTransform);\n const rotation = EveChildTransform.#getRotation(quat.create(), parentTransform, scale);\n const translation = mat4.getTranslation(vec3.create(), parentTransform);\n if (this.useStaticScale)\n {\n vec3.set(scale, 1, 1, 1);\n }\n if (this.useStaticRotation)\n {\n quat.identity(rotation);\n }\n const modifiedParentTransform = EveChildTransform.#compose(mat4.create(), scale, rotation, translation);\n return mat4.multiply(this.worldTransform, this.localTransform, modifiedParentTransform);\n }\n\n static #compose(out, scale, rotation, translation)\n {\n return mat4.fromRotationTranslationScale(out, rotation, translation, scale);\n }\n\n static #getRotation(out, transform, scale)\n {\n const normalized = mat4.create();\n for (let column = 0; column < 3; column++)\n {\n const divisor = scale[column];\n for (let row = 0; row < 3; row++)\n {\n normalized[column * 4 + row] = divisor ? transform[column * 4 + row] / divisor : 0;\n }\n }\n mat4.getRotation(out, normalized);\n return quat.normalize(out, out);\n }\n}\n\n// Module ping-pong scratch for the modifier fold (assume-dirty, never pooled;\n// child updates run sequentially so it is non-reentrant).\nconst modifierFoldScratch = mat4.create();\n\n/**\n * Folds a child's transform modifiers over its worldTransform in order, each\n * modifier's output feeding the next. Carbon inlines this loop inside each\n * EveChildMesh/Container/ParticleSystem UpdateAsyncronous\n * (`m_worldTransform = (*it)->ApplyTransform(m_worldTransform, boneCount, bones)`);\n * this is a JS-only helper (zero-alloc ping-pong between worldTransform and a\n * module scratch buffer so no modifier reads and writes the same matrix), kept a\n * free function rather than a method so it stays off the Carbon method surface.\n * The frame context is threaded through to camera-dependent modifiers.\n * @param {EveChildTransform} child - owns transformModifiers + worldTransform\n * @param {Object} context - frame context (EveUpdateContext)\n * @param {Number} boneCount\n * @param {Float32Array|null} bones\n * @returns {Float32Array} child.worldTransform\n */\nexport function applyTransformModifiers(child, context, boneCount, bones)\n{\n const modifiers = child.transformModifiers;\n\n if (!modifiers || modifiers.length === 0)\n {\n return child.worldTransform;\n }\n\n let source = child.worldTransform;\n let target = modifierFoldScratch;\n\n for (const modifier of modifiers)\n {\n if (!modifier?.ApplyTransform)\n {\n continue;\n }\n modifier.ApplyTransform(context, source, boneCount, bones, target);\n const swap = source;\n source = target;\n target = swap;\n }\n\n if (source !== child.worldTransform)\n {\n mat4.copy(child.worldTransform, source);\n }\n return child.worldTransform;\n}\n"],"names":["_EveChildTransform","_identity","EveChildTransform","CjsModel","e","_init_translation","_init_extra_translation","_init_scaling","_init_extra_scaling","_init_rotation","_init_extra_rotation","_init_localTransform","_init_extra_localTransform","_init_worldTransform","_init_extra_worldTransform","_init_staticTransform","_init_extra_staticTransform","_init_useSRT","_init_extra_useSRT","_init_useStaticRotation","_init_extra_useStaticRotation","_init_useStaticScale","_init_extra_useStaticScale","c","_initClass","_applyDecs","type","define","className","family","vec3","quat","mat4","boolean","constructor","args","translation","create","scaling","fromValues","rotation","localTransform","worldTransform","staticTransform","useSRT","useStaticRotation","useStaticScale","RebuildLocalTransform","Setup","scale","_lowestLodVisible","copy","SetupWithStaticRotation","lowestLodVisible","SetupWithStaticTransform","UpdateTransform","parentTransform","multiply","getScaling","getTranslation","set","identity","modifiedParentTransform","#compose","out","fromRotationTranslationScale","#getRotation","transform","normalized","column","divisor","row","getRotation","normalize","modifierFoldScratch","applyTransformModifiers","child","context","boneCount","bones","modifiers","transformModifiers","length","source","target","modifier","ApplyTransform","swap"],"mappings":"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"}
1
+ {"version":3,"file":"EveChildTransform.js","sources":["../../../../src/eve/child/EveChildTransform.js"],"sourcesContent":["// Source: E:\\carbonengine\\trinity\\trinity\\Eve\\SpaceObject\\Children\\EveChildTransform.h\n// Source: E:\\carbonengine\\trinity\\trinity\\Eve\\SpaceObject\\Children\\EveChildTransform.cpp\nimport { mat4 } from \"@carbonenginejs/core-math/mat4\";\nimport { quat } from \"@carbonenginejs/core-math/quat\";\nimport { vec3 } from \"@carbonenginejs/core-math/vec3\";\nimport { CjsModel } from \"@carbonenginejs/core-types/model\";\nimport { carbon, impl, type } from \"@carbonenginejs/core-types/schema\";\n\n\n@type.define({\n className: \"EveChildTransform\",\n family: \"eve/child\"\n})\nexport class EveChildTransform extends CjsModel\n{\n @type.vec3\n translation = vec3.create();\n\n @type.vec3\n scaling = vec3.fromValues(1, 1, 1);\n\n @type.quat\n rotation = quat.create();\n\n @type.mat4\n localTransform = mat4.create();\n\n @type.mat4\n worldTransform = mat4.create();\n\n @type.boolean\n staticTransform = false;\n\n @type.boolean\n useSRT = true;\n\n @type.boolean\n useStaticRotation = false;\n\n @type.boolean\n useStaticScale = false;\n\n @carbon.method\n @impl.implemented\n RebuildLocalTransform()\n {\n if (this.useSRT)\n {\n EveChildTransform.#compose(this.localTransform, this.scaling, this.rotation, this.translation);\n }\n return this.localTransform;\n }\n\n Setup(scale = null, rotation = null, translation = null, _lowestLodVisible = null)\n {\n if (!this.useSRT)\n {\n return this.localTransform;\n }\n if (scale)\n {\n vec3.copy(this.scaling, scale);\n }\n if (rotation)\n {\n quat.copy(this.rotation, rotation);\n }\n if (translation)\n {\n vec3.copy(this.translation, translation);\n }\n return this.RebuildLocalTransform();\n }\n\n SetupWithStaticRotation(scale = null, rotation = null, translation = null, lowestLodVisible = null)\n {\n this.useStaticRotation = true;\n return this.Setup(scale, rotation, translation, lowestLodVisible);\n }\n\n SetupWithStaticTransform(scale = null, rotation = null, translation = null, lowestLodVisible = null)\n {\n this.staticTransform = true;\n return this.Setup(scale, rotation, translation, lowestLodVisible);\n }\n\n // Carbon: m_worldTransform = m_localTransform * parentTransform in\n // row-vector convention (local first, then parent), which is\n // mat4.multiply(world, parent, local) in gl-matrix - matching\n // EveTransform.UpdateViewDependentData.\n UpdateTransform(parentTransform)\n {\n if (this.staticTransform || !this.useSRT)\n {\n return mat4.multiply(this.worldTransform, parentTransform, this.localTransform);\n }\n this.RebuildLocalTransform();\n if (!this.useStaticRotation && !this.useStaticScale)\n {\n return mat4.multiply(this.worldTransform, parentTransform, this.localTransform);\n }\n const scale = mat4.getScaling(vec3.create(), parentTransform);\n const rotation = EveChildTransform.#getRotation(quat.create(), parentTransform, scale);\n const translation = mat4.getTranslation(vec3.create(), parentTransform);\n if (this.useStaticScale)\n {\n vec3.set(scale, 1, 1, 1);\n }\n if (this.useStaticRotation)\n {\n quat.identity(rotation);\n }\n const modifiedParentTransform = EveChildTransform.#compose(mat4.create(), scale, rotation, translation);\n return mat4.multiply(this.worldTransform, modifiedParentTransform, this.localTransform);\n }\n\n static #compose(out, scale, rotation, translation)\n {\n return mat4.fromRotationTranslationScale(out, rotation, translation, scale);\n }\n\n static #getRotation(out, transform, scale)\n {\n const normalized = mat4.create();\n for (let column = 0; column < 3; column++)\n {\n const divisor = scale[column];\n for (let row = 0; row < 3; row++)\n {\n normalized[column * 4 + row] = divisor ? transform[column * 4 + row] / divisor : 0;\n }\n }\n mat4.getRotation(out, normalized);\n return quat.normalize(out, out);\n }\n}\n\n// Module ping-pong scratch for the modifier fold (assume-dirty, never pooled;\n// child updates run sequentially so it is non-reentrant).\nconst modifierFoldScratch = mat4.create();\n\n/**\n * Folds a child's transform modifiers over its worldTransform in order, each\n * modifier's output feeding the next. Carbon inlines this loop inside each\n * EveChildMesh/Container/ParticleSystem UpdateAsyncronous\n * (`m_worldTransform = (*it)->ApplyTransform(m_worldTransform, boneCount, bones)`);\n * this is a JS-only helper (zero-alloc ping-pong between worldTransform and a\n * module scratch buffer so no modifier reads and writes the same matrix), kept a\n * free function rather than a method so it stays off the Carbon method surface.\n * The frame context is threaded through to camera-dependent modifiers.\n * @param {EveChildTransform} child - owns transformModifiers + worldTransform\n * @param {Object} context - frame context (EveUpdateContext)\n * @param {Number} boneCount\n * @param {Float32Array|null} bones\n * @returns {Float32Array} child.worldTransform\n */\nexport function applyTransformModifiers(child, context, boneCount, bones)\n{\n const modifiers = child.transformModifiers;\n\n if (!modifiers || modifiers.length === 0)\n {\n return child.worldTransform;\n }\n\n let source = child.worldTransform;\n let target = modifierFoldScratch;\n\n for (const modifier of modifiers)\n {\n if (!modifier?.ApplyTransform)\n {\n continue;\n }\n modifier.ApplyTransform(context, source, boneCount, bones, target);\n const swap = source;\n source = target;\n target = swap;\n }\n\n if (source !== child.worldTransform)\n {\n mat4.copy(child.worldTransform, source);\n }\n return child.worldTransform;\n}\n"],"names":["_EveChildTransform","_identity","EveChildTransform","CjsModel","e","_init_translation","_init_extra_translation","_init_scaling","_init_extra_scaling","_init_rotation","_init_extra_rotation","_init_localTransform","_init_extra_localTransform","_init_worldTransform","_init_extra_worldTransform","_init_staticTransform","_init_extra_staticTransform","_init_useSRT","_init_extra_useSRT","_init_useStaticRotation","_init_extra_useStaticRotation","_init_useStaticScale","_init_extra_useStaticScale","_initProto","c","_initClass","_applyDecs","type","define","className","family","vec3","quat","mat4","boolean","carbon","method","impl","implemented","constructor","args","translation","create","scaling","fromValues","rotation","localTransform","worldTransform","staticTransform","useSRT","useStaticRotation","useStaticScale","RebuildLocalTransform","Setup","scale","_lowestLodVisible","copy","SetupWithStaticRotation","lowestLodVisible","SetupWithStaticTransform","UpdateTransform","parentTransform","multiply","getScaling","getTranslation","set","identity","modifiedParentTransform","#compose","out","fromRotationTranslationScale","#getRotation","transform","normalized","column","divisor","row","getRotation","normalize","modifierFoldScratch","applyTransformModifiers","child","context","boneCount","bones","modifiers","transformModifiers","length","source","target","modifier","ApplyTransform","swap"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { applyDecs2311 as _applyDecs2311 } from '../../../_virtual/_rollupPluginBabelHelpers.js';
1
+ import { applyDecs2311 as _applyDecs2311 } from '../../_virtual/_rollupPluginBabelHelpers.js';
2
2
  import { io, type } from '@carbonenginejs/core-types/schema';
3
3
  import { CjsModel } from '@carbonenginejs/core-types/model';
4
4
  import { vec3 } from '@carbonenginejs/core-math/vec3';
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EveCloudVolumeBall.js","sources":["../../../../src/eve/child/EveCloudVolumeBall.js"],"sourcesContent":["// Ported from CarbonEngine (MIT, (c) 2026 CCP Games) - https://github.com/carbonengine/trinity\n// trinity/trinity/Eve/SpaceObject/Children/EveCloudEditableVolume.h\n// Promoted to hand-maintained source 2026-07-23 (Carbon-verified property shell; schema eve/child/EveCloudVolumeBall.json.).\nimport { io, type } from \"@carbonenginejs/core-types/schema\";\nimport { CjsModel } from \"@carbonenginejs/core-types/model\";\nimport { vec3 } from \"@carbonenginejs/core-math/vec3\";\nimport { vec4 } from \"@carbonenginejs/core-math/vec4\";\n\n/** EveCloudVolumeBall (eve/child) - generated from schema shapeHash 70440408.... */\n@type.define({ className: \"EveCloudVolumeBall\", family: \"eve/child\" })\nexport class EveCloudVolumeBall extends CjsModel\n{\n\n /** m_ballData.m_position (Vector3) [READWRITE, PERSIST, NOTIFY] */\n @io.notify\n @io.persist\n @type.vec3\n position = vec3.create();\n\n /** m_ballData.m_radius (float) [READWRITE, PERSIST, NOTIFY] */\n @io.notify\n @io.persist\n @type.float32\n radius = 0;\n\n /** m_ballData.m_opacity (float) [READWRITE, PERSIST, NOTIFY] */\n @io.notify\n @io.persist\n @type.float32\n opacity = 0;\n\n /** m_ballData.m_falloff (float) [READWRITE, PERSIST, NOTIFY] */\n @io.notify\n @io.persist\n @type.float32\n falloff = 0;\n\n /** m_ballData.m_selfIllumination (Color) [READWRITE, PERSIST, NOTIFY] */\n @io.notify\n @io.persist\n @type.color\n selfIllumination = vec4.create();\n\n}\n"],"names":["_EveCloudVolumeBall","EveCloudVolumeBall","CjsModel","e","_init_position","_init_extra_position","_init_radius","_init_extra_radius","_init_opacity","_init_extra_opacity","_init_falloff","_init_extra_falloff","_init_selfIllumination","_init_extra_selfIllumination","c","_initClass","_applyDecs","type","define","className","family","io","notify","persist","vec3","float32","color","constructor","args","position","create","radius","opacity","falloff","selfIllumination","vec4"],"mappings":";;;;;;;;AAQA;AAAA,IAAAA;AACA,MAAAC,kBAAA,SACwCC,QAAQ,CAChD;AAAA,EAAA;AAAA,IAAA,CAAA;AAAAC,MAAAA,CAAA,GAAAC,cAAA,EAAAC,oBAAA,EAAAC,YAAA,EAAAC,kBAAA,EAAAC,aAAA,EAAAC,mBAAA,EAAAC,aAAA,EAAAC,mBAAA,EAAAC,sBAAA,EAAAC,4BAAA,CAAA;MAAAC,CAAA,EAAA,CAAAd,mBAAA,EAAAe,UAAA;AAAA,KAAA,GAAAC,cAAA,CAAA,IAAA,EAAA,CAFCC,IAAI,CAACC,MAAM,CAAC;AAAEC,MAAAA,SAAS,EAAE,oBAAoB;AAAEC,MAAAA,MAAM,EAAE;KAAa,CAAC,MAKnEC,EAAE,EAAFA,EAAE,CAACC,MAAM,EACTD,EAAE,EAAFA,EAAE,CAACE,OAAO,EACVN,IAAI,EAAJA,IAAI,CAACO,IAAI,sBAITH,EAAE,EAAFA,EAAE,CAACC,MAAM,EACTD,EAAE,EAAFA,EAAE,CAACE,OAAO,EACVN,IAAI,EAAJA,IAAI,CAACQ,OAAO,oBAIZJ,EAAE,EAAFA,EAAE,CAACC,MAAM,EACTD,EAAE,EAAFA,EAAE,CAACE,OAAO,EACVN,IAAI,EAAJA,IAAI,CAACQ,OAAO,qBAIZJ,EAAE,EAAFA,EAAE,CAACC,MAAM,EACTD,EAAE,EAAFA,EAAE,CAACE,OAAO,EACVN,IAAI,EAAJA,IAAI,CAACQ,OAAO,qBAIZJ,EAAE,EAAFA,EAAE,CAACC,MAAM,EACTD,EAAE,EAAFA,EAAE,CAACE,OAAO,EACVN,IAAI,EAAJA,IAAI,CAACS,KAAK,wCA9B2BxB,QAAQ,CAAA;AAAA;AAAAyB,EAAAA,WAAAA,CAAA,GAAAC,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAAA,IAAA,CAAA;IAAAf,4BAAA,CAAA,IAAA,CAAA;AAAA,EAAA;AAG9C;AAIAgB,EAAAA,QAAQ,GAAAzB,cAAA,CAAA,IAAA,EAAGoB,IAAI,CAACM,MAAM,EAAE,CAAA;;AAExB;AAIAC,EAAAA,MAAM,IAAA1B,oBAAA,CAAA,IAAA,CAAA,EAAAC,YAAA,OAAG,CAAC,CAAA;;AAEV;AAIA0B,EAAAA,OAAO,IAAAzB,kBAAA,CAAA,IAAA,CAAA,EAAAC,aAAA,OAAG,CAAC,CAAA;;AAEX;AAIAyB,EAAAA,OAAO,IAAAxB,mBAAA,CAAA,IAAA,CAAA,EAAAC,aAAA,OAAG,CAAC,CAAA;;AAEX;EAIAwB,gBAAgB,IAAAvB,mBAAA,CAAA,IAAA,CAAA,EAAAC,sBAAA,OAAGuB,IAAI,CAACL,MAAM,EAAE,CAAA;AAAC,EAAA;IAAAf,UAAA,EAAA;AAAA;AAEnC;;;;"}
@@ -1,4 +1,4 @@
1
- import { applyDecs2311 as _applyDecs2311 } from '../../../../_virtual/_rollupPluginBabelHelpers.js';
1
+ import { applyDecs2311 as _applyDecs2311 } from '../../../_virtual/_rollupPluginBabelHelpers.js';
2
2
  import { type } from '@carbonenginejs/core-types/schema';
3
3
  import { CjsModel } from '@carbonenginejs/core-types/model';
4
4
  import { mat4 } from '@carbonenginejs/core-math/mat4';
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DroneAgent.js","sources":["../../../../../src/eve/child/behaviors/DroneAgent.js"],"sourcesContent":["// Ported from CarbonEngine (MIT, (c) 2026 CCP Games) - https://github.com/carbonengine/trinity\n// trinity/trinity/Eve/SpaceObject/Children/Behaviors/DroneAgent.h\n// Promoted to hand-maintained source 2026-07-23 (Carbon-verified property shell; schema eve/child/behaviors/DroneAgent.json.).\nimport { type } from \"@carbonenginejs/core-types/schema\";\nimport { CjsModel } from \"@carbonenginejs/core-types/model\";\nimport { mat4 } from \"@carbonenginejs/core-math/mat4\";\nimport { quat } from \"@carbonenginejs/core-math/quat\";\nimport { vec3 } from \"@carbonenginejs/core-math/vec3\";\n\n/** DroneAgent (eve/child/behaviors) - generated from schema shapeHash c50899e8.... */\n@type.define({ className: \"DroneAgent\", family: \"eve/child/behaviors\" })\nexport class DroneAgent extends CjsModel\n{\n\n /** closestAgentInGroup (DroneAgent*) */\n @type.objectRef(\"DroneAgent\")\n closestAgentInGroup = null;\n\n /** rotation (Quaternion) */\n @type.quat\n rotation = quat.create();\n\n /** position (Vector3) */\n @type.vec3\n position = vec3.create();\n\n /** acceleration (Vector3) */\n @type.vec3\n acceleration = vec3.create();\n\n /** velocity (Vector3) */\n @type.vec3\n velocity = vec3.create();\n\n /** accelerationLength (float) */\n @type.float32\n accelerationLength = 0;\n\n /** velocityLength (float) */\n @type.float32\n velocityLength = 0;\n\n /** target (Vector3) */\n @type.vec3\n target = vec3.create();\n\n /** targetDirection (Vector3) */\n @type.vec3\n targetDirection = vec3.create();\n\n /** id (int) */\n @type.int32\n id = 0;\n\n /** lifetime (float) */\n @type.float32\n lifetime = 0;\n\n /** playFX (bool) */\n @type.boolean\n playFX = false;\n\n /** fxStartTime (Be::Time) */\n @type.float64\n fxStartTime = 0;\n\n /** lastTransform (Matrix) */\n @type.mat4\n lastTransform = mat4.create();\n\n /** xfade (float) */\n @type.float32\n xfade = 0;\n\n /** isVisible (bool) */\n @type.boolean\n isVisible = false;\n\n /** screenSize (float) */\n @type.float32\n screenSize = 0;\n\n}\n"],"names":["_DroneAgent","DroneAgent","CjsModel","e","_init_closestAgentInGroup","_init_extra_closestAgentInGroup","_init_rotation","_init_extra_rotation","_init_position","_init_extra_position","_init_acceleration","_init_extra_acceleration","_init_velocity","_init_extra_velocity","_init_accelerationLength","_init_extra_accelerationLength","_init_velocityLength","_init_extra_velocityLength","_init_target","_init_extra_target","_init_targetDirection","_init_extra_targetDirection","_init_id","_init_extra_id","_init_lifetime","_init_extra_lifetime","_init_playFX","_init_extra_playFX","_init_fxStartTime","_init_extra_fxStartTime","_init_lastTransform","_init_extra_lastTransform","_init_xfade","_init_extra_xfade","_init_isVisible","_init_extra_isVisible","_init_screenSize","_init_extra_screenSize","c","_initClass","_applyDecs","type","define","className","family","objectRef","quat","vec3","float32","int32","boolean","float64","mat4","constructor","args","closestAgentInGroup","rotation","create","position","acceleration","velocity","accelerationLength","velocityLength","target","targetDirection","id","lifetime","playFX","fxStartTime","lastTransform","xfade","isVisible","screenSize"],"mappings":";;;;;;;;;AASA;AAAA,IAAAA;AACA,MAAAC,UAAA,SACgCC,QAAQ,CACxC;AAAA,EAAA;AAAA,IAAA,CAAA;AAAAC,MAAAA,CAAA,EAAA,CAAAC,yBAAA,EAAAC,+BAAA,EAAAC,cAAA,EAAAC,oBAAA,EAAAC,cAAA,EAAAC,oBAAA,EAAAC,kBAAA,EAAAC,wBAAA,EAAAC,cAAA,EAAAC,oBAAA,EAAAC,wBAAA,EAAAC,8BAAA,EAAAC,oBAAA,EAAAC,0BAAA,EAAAC,YAAA,EAAAC,kBAAA,EAAAC,qBAAA,EAAAC,2BAAA,EAAAC,QAAA,EAAAC,cAAA,EAAAC,cAAA,EAAAC,oBAAA,EAAAC,YAAA,EAAAC,kBAAA,EAAAC,iBAAA,EAAAC,uBAAA,EAAAC,mBAAA,EAAAC,yBAAA,EAAAC,WAAA,EAAAC,iBAAA,EAAAC,eAAA,EAAAC,qBAAA,EAAAC,gBAAA,EAAAC,sBAAA,CAAA;MAAAC,CAAA,EAAA,CAAAtC,WAAA,EAAAuC,UAAA;AAAA,KAAA,GAAAC,cAAA,CAAA,IAAA,EAAA,CAFCC,IAAI,CAACC,MAAM,CAAC;AAAEC,MAAAA,SAAS,EAAE,YAAY;AAAEC,MAAAA,MAAM,EAAE;KAAuB,CAAC,KAKrEH,IAAI,CAACI,SAAS,CAAC,YAAY,CAAC,EAAA,CAAA,EAAA,qBAAA,CAAA,EAAA,CAAA,CAI5BJ,IAAI,EAAJA,IAAI,CAACK,IAAI,CAAA,EAAA,EAAA,EAAA,UAAA,CAAA,EAAA,CAAA,CAITL,IAAI,EAAJA,IAAI,CAACM,IAAI,CAAA,EAAA,EAAA,EAAA,UAAA,CAAA,EAAA,CAAA,CAITN,IAAI,EAAJA,IAAI,CAACM,IAAI,CAAA,EAAA,EAAA,EAAA,cAAA,CAAA,EAAA,CAAA,CAITN,IAAI,EAAJA,IAAI,CAACM,IAAI,CAAA,EAAA,EAAA,EAAA,UAAA,CAAA,EAAA,CAAA,CAITN,IAAI,EAAJA,IAAI,CAACO,OAAO,gCAIZP,IAAI,EAAJA,IAAI,CAACO,OAAO,CAAA,EAAA,EAAA,EAAA,gBAAA,CAAA,EAAA,CAAA,CAIZP,IAAI,EAAJA,IAAI,CAACM,IAAI,CAAA,EAAA,EAAA,EAAA,QAAA,CAAA,EAAA,CAAA,CAITN,IAAI,EAAJA,IAAI,CAACM,IAAI,CAAA,EAAA,EAAA,EAAA,iBAAA,CAAA,EAAA,CAAA,CAITN,IAAI,EAAJA,IAAI,CAACQ,KAAK,CAAA,EAAA,EAAA,EAAA,IAAA,CAAA,EAAA,CAAA,CAIVR,IAAI,EAAJA,IAAI,CAACO,OAAO,CAAA,EAAA,EAAA,EAAA,UAAA,CAAA,EAAA,CAAA,CAIZP,IAAI,EAAJA,IAAI,CAACS,OAAO,CAAA,EAAA,EAAA,EAAA,QAAA,CAAA,EAAA,CAAA,CAIZT,IAAI,EAAJA,IAAI,CAACU,OAAO,CAAA,EAAA,EAAA,EAAA,aAAA,CAAA,EAAA,CAAA,CAIZV,IAAI,EAAJA,IAAI,CAACW,IAAI,2BAITX,IAAI,EAAJA,IAAI,CAACO,OAAO,CAAA,EAAA,EAAA,EAAA,OAAA,CAAA,EAAA,CAAA,CAIZP,IAAI,EAAJA,IAAI,CAACS,OAAO,CAAA,EAAA,EAAA,EAAA,WAAA,CAAA,EAAA,CAAA,CAIZT,IAAI,EAAJA,IAAI,CAACO,OAAO,CAAA,EAAA,EAAA,EAAA,YAAA,CAAA,CAAA,EAAA,CAAA,EAAA,MAAA,EApEiB9C,QAAQ,CAAA;AAAA;AAAAmD,EAAAA,WAAAA,CAAA,GAAAC,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAAA,IAAA,CAAA;IAAAjB,sBAAA,CAAA,IAAA,CAAA;AAAA,EAAA;AAGtC;EAEAkB,mBAAmB,GAAAnD,yBAAA,CAAA,IAAA,EAAG,IAAI,CAAA;;AAE1B;EAEAoD,QAAQ,IAAAnD,+BAAA,CAAA,IAAA,CAAA,EAAAC,cAAA,OAAGwC,IAAI,CAACW,MAAM,EAAE,CAAA;;AAExB;EAEAC,QAAQ,IAAAnD,oBAAA,CAAA,IAAA,CAAA,EAAAC,cAAA,OAAGuC,IAAI,CAACU,MAAM,EAAE,CAAA;;AAExB;EAEAE,YAAY,IAAAlD,oBAAA,CAAA,IAAA,CAAA,EAAAC,kBAAA,OAAGqC,IAAI,CAACU,MAAM,EAAE,CAAA;;AAE5B;EAEAG,QAAQ,IAAAjD,wBAAA,CAAA,IAAA,CAAA,EAAAC,cAAA,OAAGmC,IAAI,CAACU,MAAM,EAAE,CAAA;;AAExB;AAEAI,EAAAA,kBAAkB,IAAAhD,oBAAA,CAAA,IAAA,CAAA,EAAAC,wBAAA,OAAG,CAAC,CAAA;;AAEtB;AAEAgD,EAAAA,cAAc,IAAA/C,8BAAA,CAAA,IAAA,CAAA,EAAAC,oBAAA,OAAG,CAAC,CAAA;;AAElB;EAEA+C,MAAM,IAAA9C,0BAAA,CAAA,IAAA,CAAA,EAAAC,YAAA,OAAG6B,IAAI,CAACU,MAAM,EAAE,CAAA;;AAEtB;EAEAO,eAAe,IAAA7C,kBAAA,CAAA,IAAA,CAAA,EAAAC,qBAAA,OAAG2B,IAAI,CAACU,MAAM,EAAE,CAAA;;AAE/B;AAEAQ,EAAAA,EAAE,IAAA5C,2BAAA,CAAA,IAAA,CAAA,EAAAC,QAAA,OAAG,CAAC,CAAA;;AAEN;AAEA4C,EAAAA,QAAQ,IAAA3C,cAAA,CAAA,IAAA,CAAA,EAAAC,cAAA,OAAG,CAAC,CAAA;;AAEZ;AAEA2C,EAAAA,MAAM,IAAA1C,oBAAA,CAAA,IAAA,CAAA,EAAAC,YAAA,OAAG,KAAK,CAAA;;AAEd;AAEA0C,EAAAA,WAAW,IAAAzC,kBAAA,CAAA,IAAA,CAAA,EAAAC,iBAAA,OAAG,CAAC,CAAA;;AAEf;EAEAyC,aAAa,IAAAxC,uBAAA,CAAA,IAAA,CAAA,EAAAC,mBAAA,OAAGsB,IAAI,CAACK,MAAM,EAAE,CAAA;;AAE7B;AAEAa,EAAAA,KAAK,IAAAvC,yBAAA,CAAA,IAAA,CAAA,EAAAC,WAAA,OAAG,CAAC,CAAA;;AAET;AAEAuC,EAAAA,SAAS,IAAAtC,iBAAA,CAAA,IAAA,CAAA,EAAAC,eAAA,OAAG,KAAK,CAAA;;AAEjB;AAEAsC,EAAAA,UAAU,IAAArC,qBAAA,CAAA,IAAA,CAAA,EAAAC,gBAAA,OAAG,CAAC,CAAA;AAAC,EAAA;IAAAG,UAAA,EAAA;AAAA;AAEjB;;;;"}
@@ -1,4 +1,4 @@
1
- import { applyDecs2311 as _applyDecs2311 } from '../../../../_virtual/_rollupPluginBabelHelpers.js';
1
+ import { applyDecs2311 as _applyDecs2311 } from '../../../_virtual/_rollupPluginBabelHelpers.js';
2
2
  import { type } from '@carbonenginejs/core-types/schema';
3
3
  import { CjsModel } from '@carbonenginejs/core-types/model';
4
4
 
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SplineTunnel.js","sources":["../../../../../src/eve/child/behaviors/SplineTunnel.js"],"sourcesContent":["// Ported from CarbonEngine (MIT, (c) 2026 CCP Games) - https://github.com/carbonengine/trinity\n// trinity/trinity/Eve/SpaceObject/Children/Behaviors/SplineTunnelGroup.h\n// Promoted to hand-maintained source 2026-07-23 (Carbon-verified property shell; schema eve/child/behaviors/SplineTunnel.json.).\nimport { type } from \"@carbonenginejs/core-types/schema\";\nimport { CjsModel } from \"@carbonenginejs/core-types/model\";\n\n/** SplineTunnel (eve/child/behaviors) - generated from schema shapeHash d53f1701.... */\n@type.define({ className: \"SplineTunnel\", family: \"eve/child/behaviors\" })\nexport class SplineTunnel extends CjsModel\n{\n\n /** tunnelID (int) */\n @type.int32\n tunnelID = 0;\n\n /** tunnelGroupType (int) */\n @type.int32\n tunnelGroupType = 0;\n\n /** splinePoints (std::vector<SplineTunnelPoint>) */\n @type.list(\"SplineTunnelPoint\")\n splinePoints = [];\n\n /** cylWidth (float) */\n @type.float32\n cylWidth = 0;\n\n /** accelerationMultiplier (float) */\n @type.float32\n accelerationMultiplier = 0;\n\n /** pullSize (float) */\n @type.float32\n pullSize = 0;\n\n /** pointOfNoReturnSize (float) */\n @type.float32\n pointOfNoReturnSize = 0;\n\n}\n"],"names":["_SplineTunnel","SplineTunnel","CjsModel","e","_init_tunnelID","_init_extra_tunnelID","_init_tunnelGroupType","_init_extra_tunnelGroupType","_init_splinePoints","_init_extra_splinePoints","_init_cylWidth","_init_extra_cylWidth","_init_accelerationMultiplier","_init_extra_accelerationMultiplier","_init_pullSize","_init_extra_pullSize","_init_pointOfNoReturnSize","_init_extra_pointOfNoReturnSize","c","_initClass","_applyDecs","type","define","className","family","int32","list","float32","constructor","args","tunnelID","tunnelGroupType","splinePoints","cylWidth","accelerationMultiplier","pullSize","pointOfNoReturnSize"],"mappings":";;;;;;AAMA;AAAA,IAAAA;AACA,MAAAC,YAAA,SACkCC,QAAQ,CAC1C;AAAA,EAAA;AAAA,IAAA,CAAA;MAAAC,CAAA,EAAA,CAAAC,cAAA,EAAAC,oBAAA,EAAAC,qBAAA,EAAAC,2BAAA,EAAAC,kBAAA,EAAAC,wBAAA,EAAAC,cAAA,EAAAC,oBAAA,EAAAC,4BAAA,EAAAC,kCAAA,EAAAC,cAAA,EAAAC,oBAAA,EAAAC,yBAAA,EAAAC,+BAAA,CAAA;MAAAC,CAAA,EAAA,CAAAlB,aAAA,EAAAmB,UAAA;AAAA,KAAA,GAAAC,cAAA,CAAA,IAAA,EAAA,CAFCC,IAAI,CAACC,MAAM,CAAC;AAAEC,MAAAA,SAAS,EAAE,cAAc;AAAEC,MAAAA,MAAM,EAAE;KAAuB,CAAC,MAKvEH,IAAI,EAAJA,IAAI,CAACI,KAAK,sBAIVJ,IAAI,EAAJA,IAAI,CAACI,KAAK,4BAIVJ,IAAI,CAACK,IAAI,CAAC,mBAAmB,CAAC,EAAA,CAAA,EAAA,cAAA,CAAA,EAAA,CAAA,CAI9BL,IAAI,EAAJA,IAAI,CAACM,OAAO,CAAA,EAAA,EAAA,EAAA,UAAA,CAAA,EAAA,CAAA,CAIZN,IAAI,EAAJA,IAAI,CAACM,OAAO,CAAA,EAAA,EAAA,EAAA,wBAAA,CAAA,EAAA,CAAA,CAIZN,IAAI,EAAJA,IAAI,CAACM,OAAO,CAAA,EAAA,EAAA,EAAA,UAAA,CAAA,EAAA,CAAA,CAIZN,IAAI,EAAJA,IAAI,CAACM,OAAO,CAAA,EAAA,EAAA,EAAA,qBAAA,CAAA,CAAA,EAAA,CAAA,EAAA,MAAA,EA5BmBzB,QAAQ,CAAA;AAAA;AAAA0B,EAAAA,WAAAA,CAAA,GAAAC,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAAA,IAAA,CAAA;IAAAZ,+BAAA,CAAA,IAAA,CAAA;AAAA,EAAA;AAGxC;EAEAa,QAAQ,GAAA1B,cAAA,CAAA,IAAA,EAAG,CAAC,CAAA;;AAEZ;AAEA2B,EAAAA,eAAe,IAAA1B,oBAAA,CAAA,IAAA,CAAA,EAAAC,qBAAA,OAAG,CAAC,CAAA;;AAEnB;AAEA0B,EAAAA,YAAY,IAAAzB,2BAAA,CAAA,IAAA,CAAA,EAAAC,kBAAA,OAAG,EAAE,CAAA;;AAEjB;AAEAyB,EAAAA,QAAQ,IAAAxB,wBAAA,CAAA,IAAA,CAAA,EAAAC,cAAA,OAAG,CAAC,CAAA;;AAEZ;AAEAwB,EAAAA,sBAAsB,IAAAvB,oBAAA,CAAA,IAAA,CAAA,EAAAC,4BAAA,OAAG,CAAC,CAAA;;AAE1B;AAEAuB,EAAAA,QAAQ,IAAAtB,kCAAA,CAAA,IAAA,CAAA,EAAAC,cAAA,OAAG,CAAC,CAAA;;AAEZ;AAEAsB,EAAAA,mBAAmB,IAAArB,oBAAA,CAAA,IAAA,CAAA,EAAAC,yBAAA,OAAG,CAAC,CAAA;AAAC,EAAA;IAAAG,UAAA,EAAA;AAAA;AAE1B;;;;"}
@@ -1,4 +1,4 @@
1
- import { applyDecs2311 as _applyDecs2311 } from '../../../../_virtual/_rollupPluginBabelHelpers.js';
1
+ import { applyDecs2311 as _applyDecs2311 } from '../../../_virtual/_rollupPluginBabelHelpers.js';
2
2
  import { type } from '@carbonenginejs/core-types/schema';
3
3
  import { CjsModel } from '@carbonenginejs/core-types/model';
4
4
  import { vec3 } from '@carbonenginejs/core-math/vec3';
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SplineTunnelPoint.js","sources":["../../../../../src/eve/child/behaviors/SplineTunnelPoint.js"],"sourcesContent":["// Ported from CarbonEngine (MIT, (c) 2026 CCP Games) - https://github.com/carbonengine/trinity\n// trinity/trinity/Eve/SpaceObject/Children/Behaviors/SplineTunnelGroup.h\n// Promoted to hand-maintained source 2026-07-23 (Carbon-verified property shell; schema eve/child/behaviors/SplineTunnelPoint.json.).\nimport { type } from \"@carbonenginejs/core-types/schema\";\nimport { CjsModel } from \"@carbonenginejs/core-types/model\";\nimport { vec3 } from \"@carbonenginejs/core-math/vec3\";\n\n/** SplineTunnelPoint (eve/child/behaviors) - generated from schema shapeHash da3b5246.... */\n@type.define({ className: \"SplineTunnelPoint\", family: \"eve/child/behaviors\" })\nexport class SplineTunnelPoint extends CjsModel\n{\n\n /** accelerationMultiplier (float) */\n @type.float32\n accelerationMultiplier = 0;\n\n /** pos (Vector3) */\n @type.vec3\n pos = vec3.create();\n\n /** rot (Vector3) */\n @type.vec3\n rot = vec3.create();\n\n}\n"],"names":["_SplineTunnelPoint","SplineTunnelPoint","CjsModel","e","_init_accelerationMultiplier","_init_extra_accelerationMultiplier","_init_pos","_init_extra_pos","_init_rot","_init_extra_rot","c","_initClass","_applyDecs","type","define","className","family","float32","vec3","constructor","args","accelerationMultiplier","pos","create","rot"],"mappings":";;;;;;;AAOA;AAAA,IAAAA;AACA,MAAAC,iBAAA,SACuCC,QAAQ,CAC/C;AAAA,EAAA;AAAA,IAAA,CAAA;MAAAC,CAAA,EAAA,CAAAC,4BAAA,EAAAC,kCAAA,EAAAC,SAAA,EAAAC,eAAA,EAAAC,SAAA,EAAAC,eAAA,CAAA;MAAAC,CAAA,EAAA,CAAAV,kBAAA,EAAAW,UAAA;AAAA,KAAA,GAAAC,cAAA,CAAA,IAAA,EAAA,CAFCC,IAAI,CAACC,MAAM,CAAC;AAAEC,MAAAA,SAAS,EAAE,mBAAmB;AAAEC,MAAAA,MAAM,EAAE;KAAuB,CAAC,MAK5EH,IAAI,EAAJA,IAAI,CAACI,OAAO,oCAIZJ,IAAI,EAAJA,IAAI,CAACK,IAAI,iBAITL,IAAI,EAAJA,IAAI,CAACK,IAAI,2BAZ2BhB,QAAQ,CAAA;AAAA;AAAAiB,EAAAA,WAAAA,CAAA,GAAAC,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAAA,IAAA,CAAA;IAAAX,eAAA,CAAA,IAAA,CAAA;AAAA,EAAA;AAG7C;EAEAY,sBAAsB,GAAAjB,4BAAA,CAAA,IAAA,EAAG,CAAC,CAAA;;AAE1B;EAEAkB,GAAG,IAAAjB,kCAAA,CAAA,IAAA,CAAA,EAAAC,SAAA,OAAGY,IAAI,CAACK,MAAM,EAAE,CAAA;;AAEnB;EAEAC,GAAG,IAAAjB,eAAA,CAAA,IAAA,CAAA,EAAAC,SAAA,OAAGU,IAAI,CAACK,MAAM,EAAE,CAAA;AAAC,EAAA;IAAAZ,UAAA,EAAA;AAAA;AAEtB;;;;"}
@@ -114,7 +114,8 @@ new class extends _identity {
114
114
  return;
115
115
  }
116
116
  this.isVisible = false;
117
- const transform = mat4.multiply(mat4.create(), this.localTransform, systemLocation);
117
+ // Carbon (row-vector): m_localTransform * systemLocation - local first.
118
+ const transform = mat4.multiply(mat4.create(), systemLocation, this.localTransform);
118
119
  const sphere = sph3.transformMat4(vec4.create(), this.#boundingSphere, transform);
119
120
  this.isVisible = !!frustum?.IsSphereVisible?.(sphere);
120
121
  }
@@ -1 +1 @@
1
- {"version":3,"file":"EveBezierCurve.js","sources":["../../../../../src/eve/child/lineSetPaths/EveBezierCurve.js"],"sourcesContent":["// Source: E:\\carbonengine\\trinity\\trinity\\Eve\\SpaceObject\\Children\\LineSetPaths\\EveBezierCurve.h\r\n// Source: E:\\carbonengine\\trinity\\trinity\\Eve\\SpaceObject\\Children\\LineSetPaths\\EveBezierCurve.cpp\r\n// Source: E:\\carbonengine\\trinity\\trinity\\Eve\\SpaceObject\\Children\\LineSetPaths\\EveBezierCurve_Blue.cpp\r\nimport { mat4 } from \"@carbonenginejs/core-math/mat4\";\r\nimport { quat } from \"@carbonenginejs/core-math/quat\";\r\nimport { sph3 } from \"@carbonenginejs/core-math/sph3\";\r\nimport { vec3 } from \"@carbonenginejs/core-math/vec3\";\r\nimport { vec4 } from \"@carbonenginejs/core-math/vec4\";\r\nimport { CjsModel } from \"@carbonenginejs/core-types/model\";\r\nimport { carbon, impl, io, type } from \"@carbonenginejs/core-types/schema\";\r\nimport { EveChildTransform } from \"../EveChildTransform.js\";\r\n\r\n\r\n@type.define({\r\n className: \"EveBezierCurve\",\r\n family: \"eve/child/lineSetPaths\"\r\n})\r\nexport class EveBezierCurve extends EveChildTransform\r\n{\r\n @io.persist\r\n @type.string\r\n name = \"\";\r\n\r\n @io.persist\r\n @type.boolean\r\n display = true;\r\n\r\n @io.notify\r\n @io.persist\r\n @type.vec3\r\n translation = vec3.create();\r\n\r\n @io.notify\r\n @io.persist\r\n @type.quat\r\n rotation = quat.create();\r\n\r\n @io.notify\r\n @io.persist\r\n @type.vec3\r\n scaling = vec3.fromValues(1, 1, 1);\r\n\r\n @io.read\r\n @type.boolean\r\n isVisible = true;\r\n\r\n @io.notify\r\n @io.persist\r\n @type.vec3\r\n point1 = vec3.create();\r\n\r\n @io.notify\r\n @io.persist\r\n @type.vec3\r\n point2 = vec3.create();\r\n\r\n @io.notify\r\n @io.persist\r\n @type.vec3\r\n bezierPoint = vec3.create();\r\n\r\n @io.notify\r\n @io.persist\r\n @type.float32\r\n completeness = 1;\r\n\r\n @io.notify\r\n @io.persist\r\n @type.float32\r\n segments = 24;\r\n\r\n @io.notify\r\n @io.persist\r\n @type.float32\r\n segmentOffset = 0;\r\n\r\n @io.notify\r\n @io.persist\r\n @type.float32\r\n lineWidth = 1;\r\n\r\n @io.notify\r\n @io.persist\r\n @type.boolean\r\n scaleSegmentsByCompleteness = true;\r\n\r\n @io.notify\r\n @io.persist\r\n @type.boolean\r\n scaleEndpoints = true;\r\n\r\n @io.notify\r\n @io.persist\r\n @type.boolean\r\n billboardObjects = true;\r\n\r\n @io.persist\r\n @type.vec3\r\n objectScale = vec3.fromValues(1, 1, 1);\r\n\r\n @io.persist\r\n @type.float32\r\n movementSpeed = 0;\r\n\r\n @io.read\r\n @type.float32\r\n animValue = 0;\r\n\r\n #points = [];\r\n\r\n #parentTransform = mat4.create();\r\n\r\n #boundingSphere = vec4.create();\r\n\r\n #meshSize = 0;\r\n\r\n #regeneratePoints = true;\r\n\r\n @carbon.method\r\n @impl.implemented\r\n Initialize()\r\n {\r\n this.#regeneratePoints = true;\r\n return true;\r\n }\r\n\r\n @carbon.method\r\n @impl.adapted\r\n OnModified(_options = {})\r\n {\r\n this.completeness = Math.min(2, Math.max(0, this.completeness));\r\n this.segments = Math.min(128, Math.max(1, this.segments));\r\n this.segmentOffset = Math.min(1, Math.max(0, this.segmentOffset));\r\n this.#regeneratePoints = true;\r\n return true;\r\n }\r\n\r\n @carbon.method\r\n @impl.adapted\r\n Update(updateContext, _params = null)\r\n {\r\n if (this.movementSpeed !== 0)\r\n {\r\n this.animValue = (this.animValue + this.movementSpeed * EveBezierCurve.#getDeltaT(updateContext)) % 1;\r\n }\r\n if (!this.#regeneratePoints)\r\n {\r\n return false;\r\n }\r\n this.GeneratePoints();\r\n this.CalculateBoundingSphere();\r\n return true;\r\n }\r\n\r\n @carbon.method\r\n @impl.adapted\r\n GeneratePoints(parentTransform = mat4.create())\r\n {\r\n const segmentCount = this.#getSegmentCount();\r\n if (segmentCount <= 1)\r\n {\r\n return;\r\n }\r\n if (!mat4.exactEquals(parentTransform, EveBezierCurve.#identityMatrix))\r\n {\r\n this.UpdateTransform(parentTransform);\r\n mat4.copy(this.#parentTransform, parentTransform);\r\n }\r\n else\r\n {\r\n this.UpdateTransform(this.#parentTransform);\r\n }\r\n const lower = Math.min(this.completeness, 1);\r\n const upper = Math.max(0, this.completeness - 1);\r\n const points = [];\r\n for (let i = 0; i < segmentCount; i++)\r\n {\r\n const sourceT = i / segmentCount + this.segmentOffset / segmentCount;\r\n const t = sourceT * (lower - upper) + upper;\r\n const inverse = 1 - t;\r\n const a = inverse * inverse;\r\n const b = 2 * inverse * t;\r\n const c = t * t;\r\n points.push(vec3.fromValues(\r\n a * this.point1[0] + b * this.bezierPoint[0] + c * this.point2[0],\r\n a * this.point1[1] + b * this.bezierPoint[1] + c * this.point2[1],\r\n a * this.point1[2] + b * this.bezierPoint[2] + c * this.point2[2]\r\n ));\r\n }\r\n this.#points = points;\r\n this.#regeneratePoints = false;\r\n }\r\n\r\n @carbon.method\r\n @impl.adapted\r\n GetPointCount()\r\n {\r\n return this.#points.length;\r\n }\r\n\r\n @carbon.method\r\n @impl.adapted\r\n CalculateBoundingSphere(meshSize = 0, _reCalculateChildren = true)\r\n {\r\n if (meshSize !== 0)\r\n {\r\n this.#meshSize = meshSize;\r\n }\r\n else if (this.#meshSize !== 0)\r\n {\r\n meshSize = this.#meshSize;\r\n }\r\n const center = vec3.scale(vec3.create(), vec3.add(vec3.create(), vec3.add(vec3.create(), this.point1, this.point2), this.bezierPoint), 1 / 3);\r\n const radiusSquared = Math.max(\r\n vec3.squaredDistance(this.point1, center),\r\n vec3.squaredDistance(this.point2, center),\r\n vec3.squaredDistance(this.bezierPoint, center)\r\n );\r\n vec4.set(this.#boundingSphere, center[0], center[1], center[2], Math.sqrt(radiusSquared) + meshSize);\r\n }\r\n\r\n @carbon.method\r\n @impl.adapted\r\n GetBoundingSphere(out = vec4.create())\r\n {\r\n return sph3.transformMat4(out, this.#boundingSphere, this.localTransform);\r\n }\r\n\r\n @carbon.method\r\n @impl.adapted\r\n UpdateVisibility(frustum, _parentLod = null, systemLocation = mat4.create())\r\n {\r\n if (!this.display)\r\n {\r\n return;\r\n }\r\n this.isVisible = false;\r\n const transform = mat4.multiply(mat4.create(), this.localTransform, systemLocation);\r\n const sphere = sph3.transformMat4(vec4.create(), this.#boundingSphere, transform);\r\n this.isVisible = !!frustum?.IsSphereVisible?.(sphere);\r\n }\r\n\r\n @carbon.method\r\n @impl.adapted\r\n AddLinesToSet(lineSet, color, animColor, scrollSpeed = 0)\r\n {\r\n if (!this.display || !this.isVisible)\r\n {\r\n return;\r\n }\r\n if (this.#regeneratePoints)\r\n {\r\n this.GeneratePoints();\r\n this.CalculateBoundingSphere();\r\n }\r\n const segmentCount = Math.min(this.#getSegmentCount(), this.#points.length);\r\n for (let i = 0; i < segmentCount; i++)\r\n {\r\n const next = (i + 1) % segmentCount;\r\n if (next === 0 && this.completeness < 1)\r\n {\r\n continue;\r\n }\r\n const start = EveBezierCurve.#transformPoint(this.#points[i], this.localTransform);\r\n const endPoint = next === 0 ? this.point2 : this.#points[next];\r\n const end = EveBezierCurve.#transformPoint(endPoint, this.localTransform);\r\n const id = lineSet.AddStraightLine(start, color, end, color, this.lineWidth);\r\n if (scrollSpeed !== 0)\r\n {\r\n lineSet.ChangeLineAnimation(id, animColor, scrollSpeed, 1);\r\n }\r\n }\r\n }\r\n\r\n #getSegmentCount()\r\n {\r\n const completenessScale = 1 - Math.abs(this.completeness - 1);\r\n return Math.trunc(this.scaleSegmentsByCompleteness ? (this.segments + 0.5) * completenessScale : this.segments + 0.5);\r\n }\r\n\r\n static #identityMatrix = mat4.create();\r\n\r\n static #getDeltaT(context)\r\n {\r\n const value = context?.GetDeltaT?.() ?? context?.deltaT ?? 0;\r\n return Number.isFinite(Number(value)) ? Number(value) : 0;\r\n }\r\n\r\n static #transformPoint(point, transform)\r\n {\r\n return vec3.transformMat4(vec3.create(), point, transform);\r\n }\r\n}\r\n"],"names":["_EveBezierCurve","_identity","EveBezierCurve","EveChildTransform","e","_init_name","_init_extra_name","_init_display","_init_extra_display","_init_translation","_init_extra_translation","_init_rotation","_init_extra_rotation","_init_scaling","_init_extra_scaling","_init_isVisible","_init_extra_isVisible","_init_point","_init_extra_point","_init_point2","_init_extra_point2","_init_bezierPoint","_init_extra_bezierPoint","_init_completeness","_init_extra_completeness","_init_segments","_init_extra_segments","_init_segmentOffset","_init_extra_segmentOffset","_init_lineWidth","_init_extra_lineWidth","_init_scaleSegmentsByCompleteness","_init_extra_scaleSegmentsByCompleteness","_init_scaleEndpoints","_init_extra_scaleEndpoints","_init_billboardObjects","_init_extra_billboardObjects","_init_objectScale","_init_extra_objectScale","_init_movementSpeed","_init_extra_movementSpeed","_init_animValue","_init_extra_animValue","_initProto","c","_initClass","_applyDecs","type","define","className","family","io","persist","string","boolean","notify","vec3","quat","read","float32","carbon","method","impl","implemented","adapted","name","display","translation","create","rotation","scaling","fromValues","isVisible","point1","point2","bezierPoint","completeness","segments","segmentOffset","lineWidth","scaleSegmentsByCompleteness","scaleEndpoints","billboardObjects","objectScale","movementSpeed","animValue","mat4","vec4","Initialize","OnModified","_options","Math","min","max","Update","updateContext","_params","GeneratePoints","CalculateBoundingSphere","parentTransform","segmentCount","exactEquals","UpdateTransform","copy","lower","upper","points","i","sourceT","t","inverse","a","b","push","GetPointCount","length","meshSize","_reCalculateChildren","center","scale","add","radiusSquared","squaredDistance","set","sqrt","GetBoundingSphere","out","sph3","transformMat4","localTransform","UpdateVisibility","frustum","_parentLod","systemLocation","transform","multiply","sphere","IsSphereVisible","AddLinesToSet","lineSet","color","animColor","scrollSpeed","next","start","endPoint","end","id","AddStraightLine","ChangeLineAnimation","#getSegmentCount","completenessScale","abs","trunc","#getDeltaT","context","value","GetDeltaT","deltaT","Number","isFinite","#transformPoint","point","constructor"],"mappings":"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"}
1
+ {"version":3,"file":"EveBezierCurve.js","sources":["../../../../../src/eve/child/lineSetPaths/EveBezierCurve.js"],"sourcesContent":["// Source: E:\\carbonengine\\trinity\\trinity\\Eve\\SpaceObject\\Children\\LineSetPaths\\EveBezierCurve.h\r\n// Source: E:\\carbonengine\\trinity\\trinity\\Eve\\SpaceObject\\Children\\LineSetPaths\\EveBezierCurve.cpp\r\n// Source: E:\\carbonengine\\trinity\\trinity\\Eve\\SpaceObject\\Children\\LineSetPaths\\EveBezierCurve_Blue.cpp\r\nimport { mat4 } from \"@carbonenginejs/core-math/mat4\";\r\nimport { quat } from \"@carbonenginejs/core-math/quat\";\r\nimport { sph3 } from \"@carbonenginejs/core-math/sph3\";\r\nimport { vec3 } from \"@carbonenginejs/core-math/vec3\";\r\nimport { vec4 } from \"@carbonenginejs/core-math/vec4\";\r\nimport { CjsModel } from \"@carbonenginejs/core-types/model\";\r\nimport { carbon, impl, io, type } from \"@carbonenginejs/core-types/schema\";\r\nimport { EveChildTransform } from \"../EveChildTransform.js\";\r\n\r\n\r\n@type.define({\r\n className: \"EveBezierCurve\",\r\n family: \"eve/child/lineSetPaths\"\r\n})\r\nexport class EveBezierCurve extends EveChildTransform\r\n{\r\n @io.persist\r\n @type.string\r\n name = \"\";\r\n\r\n @io.persist\r\n @type.boolean\r\n display = true;\r\n\r\n @io.notify\r\n @io.persist\r\n @type.vec3\r\n translation = vec3.create();\r\n\r\n @io.notify\r\n @io.persist\r\n @type.quat\r\n rotation = quat.create();\r\n\r\n @io.notify\r\n @io.persist\r\n @type.vec3\r\n scaling = vec3.fromValues(1, 1, 1);\r\n\r\n @io.read\r\n @type.boolean\r\n isVisible = true;\r\n\r\n @io.notify\r\n @io.persist\r\n @type.vec3\r\n point1 = vec3.create();\r\n\r\n @io.notify\r\n @io.persist\r\n @type.vec3\r\n point2 = vec3.create();\r\n\r\n @io.notify\r\n @io.persist\r\n @type.vec3\r\n bezierPoint = vec3.create();\r\n\r\n @io.notify\r\n @io.persist\r\n @type.float32\r\n completeness = 1;\r\n\r\n @io.notify\r\n @io.persist\r\n @type.float32\r\n segments = 24;\r\n\r\n @io.notify\r\n @io.persist\r\n @type.float32\r\n segmentOffset = 0;\r\n\r\n @io.notify\r\n @io.persist\r\n @type.float32\r\n lineWidth = 1;\r\n\r\n @io.notify\r\n @io.persist\r\n @type.boolean\r\n scaleSegmentsByCompleteness = true;\r\n\r\n @io.notify\r\n @io.persist\r\n @type.boolean\r\n scaleEndpoints = true;\r\n\r\n @io.notify\r\n @io.persist\r\n @type.boolean\r\n billboardObjects = true;\r\n\r\n @io.persist\r\n @type.vec3\r\n objectScale = vec3.fromValues(1, 1, 1);\r\n\r\n @io.persist\r\n @type.float32\r\n movementSpeed = 0;\r\n\r\n @io.read\r\n @type.float32\r\n animValue = 0;\r\n\r\n #points = [];\r\n\r\n #parentTransform = mat4.create();\r\n\r\n #boundingSphere = vec4.create();\r\n\r\n #meshSize = 0;\r\n\r\n #regeneratePoints = true;\r\n\r\n @carbon.method\r\n @impl.implemented\r\n Initialize()\r\n {\r\n this.#regeneratePoints = true;\r\n return true;\r\n }\r\n\r\n @carbon.method\r\n @impl.adapted\r\n OnModified(_options = {})\r\n {\r\n this.completeness = Math.min(2, Math.max(0, this.completeness));\r\n this.segments = Math.min(128, Math.max(1, this.segments));\r\n this.segmentOffset = Math.min(1, Math.max(0, this.segmentOffset));\r\n this.#regeneratePoints = true;\r\n return true;\r\n }\r\n\r\n @carbon.method\r\n @impl.adapted\r\n Update(updateContext, _params = null)\r\n {\r\n if (this.movementSpeed !== 0)\r\n {\r\n this.animValue = (this.animValue + this.movementSpeed * EveBezierCurve.#getDeltaT(updateContext)) % 1;\r\n }\r\n if (!this.#regeneratePoints)\r\n {\r\n return false;\r\n }\r\n this.GeneratePoints();\r\n this.CalculateBoundingSphere();\r\n return true;\r\n }\r\n\r\n @carbon.method\r\n @impl.adapted\r\n GeneratePoints(parentTransform = mat4.create())\r\n {\r\n const segmentCount = this.#getSegmentCount();\r\n if (segmentCount <= 1)\r\n {\r\n return;\r\n }\r\n if (!mat4.exactEquals(parentTransform, EveBezierCurve.#identityMatrix))\r\n {\r\n this.UpdateTransform(parentTransform);\r\n mat4.copy(this.#parentTransform, parentTransform);\r\n }\r\n else\r\n {\r\n this.UpdateTransform(this.#parentTransform);\r\n }\r\n const lower = Math.min(this.completeness, 1);\r\n const upper = Math.max(0, this.completeness - 1);\r\n const points = [];\r\n for (let i = 0; i < segmentCount; i++)\r\n {\r\n const sourceT = i / segmentCount + this.segmentOffset / segmentCount;\r\n const t = sourceT * (lower - upper) + upper;\r\n const inverse = 1 - t;\r\n const a = inverse * inverse;\r\n const b = 2 * inverse * t;\r\n const c = t * t;\r\n points.push(vec3.fromValues(\r\n a * this.point1[0] + b * this.bezierPoint[0] + c * this.point2[0],\r\n a * this.point1[1] + b * this.bezierPoint[1] + c * this.point2[1],\r\n a * this.point1[2] + b * this.bezierPoint[2] + c * this.point2[2]\r\n ));\r\n }\r\n this.#points = points;\r\n this.#regeneratePoints = false;\r\n }\r\n\r\n @carbon.method\r\n @impl.adapted\r\n GetPointCount()\r\n {\r\n return this.#points.length;\r\n }\r\n\r\n @carbon.method\r\n @impl.adapted\r\n CalculateBoundingSphere(meshSize = 0, _reCalculateChildren = true)\r\n {\r\n if (meshSize !== 0)\r\n {\r\n this.#meshSize = meshSize;\r\n }\r\n else if (this.#meshSize !== 0)\r\n {\r\n meshSize = this.#meshSize;\r\n }\r\n const center = vec3.scale(vec3.create(), vec3.add(vec3.create(), vec3.add(vec3.create(), this.point1, this.point2), this.bezierPoint), 1 / 3);\r\n const radiusSquared = Math.max(\r\n vec3.squaredDistance(this.point1, center),\r\n vec3.squaredDistance(this.point2, center),\r\n vec3.squaredDistance(this.bezierPoint, center)\r\n );\r\n vec4.set(this.#boundingSphere, center[0], center[1], center[2], Math.sqrt(radiusSquared) + meshSize);\r\n }\r\n\r\n @carbon.method\r\n @impl.adapted\r\n GetBoundingSphere(out = vec4.create())\r\n {\r\n return sph3.transformMat4(out, this.#boundingSphere, this.localTransform);\r\n }\r\n\r\n @carbon.method\r\n @impl.adapted\r\n UpdateVisibility(frustum, _parentLod = null, systemLocation = mat4.create())\r\n {\r\n if (!this.display)\r\n {\r\n return;\r\n }\r\n this.isVisible = false;\r\n // Carbon (row-vector): m_localTransform * systemLocation - local first.\r\n const transform = mat4.multiply(mat4.create(), systemLocation, this.localTransform);\r\n const sphere = sph3.transformMat4(vec4.create(), this.#boundingSphere, transform);\r\n this.isVisible = !!frustum?.IsSphereVisible?.(sphere);\r\n }\r\n\r\n @carbon.method\r\n @impl.adapted\r\n AddLinesToSet(lineSet, color, animColor, scrollSpeed = 0)\r\n {\r\n if (!this.display || !this.isVisible)\r\n {\r\n return;\r\n }\r\n if (this.#regeneratePoints)\r\n {\r\n this.GeneratePoints();\r\n this.CalculateBoundingSphere();\r\n }\r\n const segmentCount = Math.min(this.#getSegmentCount(), this.#points.length);\r\n for (let i = 0; i < segmentCount; i++)\r\n {\r\n const next = (i + 1) % segmentCount;\r\n if (next === 0 && this.completeness < 1)\r\n {\r\n continue;\r\n }\r\n const start = EveBezierCurve.#transformPoint(this.#points[i], this.localTransform);\r\n const endPoint = next === 0 ? this.point2 : this.#points[next];\r\n const end = EveBezierCurve.#transformPoint(endPoint, this.localTransform);\r\n const id = lineSet.AddStraightLine(start, color, end, color, this.lineWidth);\r\n if (scrollSpeed !== 0)\r\n {\r\n lineSet.ChangeLineAnimation(id, animColor, scrollSpeed, 1);\r\n }\r\n }\r\n }\r\n\r\n #getSegmentCount()\r\n {\r\n const completenessScale = 1 - Math.abs(this.completeness - 1);\r\n return Math.trunc(this.scaleSegmentsByCompleteness ? (this.segments + 0.5) * completenessScale : this.segments + 0.5);\r\n }\r\n\r\n static #identityMatrix = mat4.create();\r\n\r\n static #getDeltaT(context)\r\n {\r\n const value = context?.GetDeltaT?.() ?? context?.deltaT ?? 0;\r\n return Number.isFinite(Number(value)) ? Number(value) : 0;\r\n }\r\n\r\n static #transformPoint(point, transform)\r\n {\r\n return vec3.transformMat4(vec3.create(), point, transform);\r\n }\r\n}\r\n"],"names":["_EveBezierCurve","_identity","EveBezierCurve","EveChildTransform","e","_init_name","_init_extra_name","_init_display","_init_extra_display","_init_translation","_init_extra_translation","_init_rotation","_init_extra_rotation","_init_scaling","_init_extra_scaling","_init_isVisible","_init_extra_isVisible","_init_point","_init_extra_point","_init_point2","_init_extra_point2","_init_bezierPoint","_init_extra_bezierPoint","_init_completeness","_init_extra_completeness","_init_segments","_init_extra_segments","_init_segmentOffset","_init_extra_segmentOffset","_init_lineWidth","_init_extra_lineWidth","_init_scaleSegmentsByCompleteness","_init_extra_scaleSegmentsByCompleteness","_init_scaleEndpoints","_init_extra_scaleEndpoints","_init_billboardObjects","_init_extra_billboardObjects","_init_objectScale","_init_extra_objectScale","_init_movementSpeed","_init_extra_movementSpeed","_init_animValue","_init_extra_animValue","_initProto","c","_initClass","_applyDecs","type","define","className","family","io","persist","string","boolean","notify","vec3","quat","read","float32","carbon","method","impl","implemented","adapted","name","display","translation","create","rotation","scaling","fromValues","isVisible","point1","point2","bezierPoint","completeness","segments","segmentOffset","lineWidth","scaleSegmentsByCompleteness","scaleEndpoints","billboardObjects","objectScale","movementSpeed","animValue","mat4","vec4","Initialize","OnModified","_options","Math","min","max","Update","updateContext","_params","GeneratePoints","CalculateBoundingSphere","parentTransform","segmentCount","exactEquals","UpdateTransform","copy","lower","upper","points","i","sourceT","t","inverse","a","b","push","GetPointCount","length","meshSize","_reCalculateChildren","center","scale","add","radiusSquared","squaredDistance","set","sqrt","GetBoundingSphere","out","sph3","transformMat4","localTransform","UpdateVisibility","frustum","_parentLod","systemLocation","transform","multiply","sphere","IsSphereVisible","AddLinesToSet","lineSet","color","animColor","scrollSpeed","next","start","endPoint","end","id","AddStraightLine","ChangeLineAnimation","#getSegmentCount","completenessScale","abs","trunc","#getDeltaT","context","value","GetDeltaT","deltaT","Number","isFinite","#transformPoint","point","constructor"],"mappings":"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"}