@carbonenginejs/runtime-trinity 0.6.0 → 0.7.0

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 (1087) hide show
  1. package/README.md +35 -243
  2. package/dist/controllers/CjsControllerExpressionProgram.js +157 -0
  3. package/dist/controllers/CjsControllerExpressionProgram.js.map +1 -1
  4. package/dist/controllers/ITr2ControllerAction.js +57 -0
  5. package/dist/controllers/ITr2ControllerAction.js.map +1 -1
  6. package/dist/controllers/Tr2ActionAnimateCurveSet.js +10 -0
  7. package/dist/controllers/Tr2ActionAnimateCurveSet.js.map +1 -1
  8. package/dist/controllers/Tr2ActionAnimateValue.js +26 -0
  9. package/dist/controllers/Tr2ActionAnimateValue.js.map +1 -1
  10. package/dist/controllers/Tr2ActionBindRTPC.js +11 -0
  11. package/dist/controllers/Tr2ActionBindRTPC.js.map +1 -1
  12. package/dist/controllers/Tr2ActionCallback.js +5 -0
  13. package/dist/controllers/Tr2ActionCallback.js.map +1 -1
  14. package/dist/controllers/Tr2ActionChildEffect.js +63 -0
  15. package/dist/controllers/Tr2ActionChildEffect.js.map +1 -1
  16. package/dist/controllers/Tr2ActionOverlay.js +68 -0
  17. package/dist/controllers/Tr2ActionOverlay.js.map +1 -1
  18. package/dist/controllers/Tr2ActionPlayCurveSet.js +16 -0
  19. package/dist/controllers/Tr2ActionPlayCurveSet.js.map +1 -1
  20. package/dist/controllers/Tr2ActionPlayMeshAnimation.js +29 -0
  21. package/dist/controllers/Tr2ActionPlayMeshAnimation.js.map +1 -1
  22. package/dist/controllers/Tr2ActionPlaySound.js +11 -0
  23. package/dist/controllers/Tr2ActionPlaySound.js.map +1 -1
  24. package/dist/controllers/Tr2ActionPython.js +11 -0
  25. package/dist/controllers/Tr2ActionPython.js.map +1 -1
  26. package/dist/controllers/Tr2ActionResetClipSphereCenter.js +17 -0
  27. package/dist/controllers/Tr2ActionResetClipSphereCenter.js.map +1 -1
  28. package/dist/controllers/Tr2ActionSetAttenuationScaling.js +5 -0
  29. package/dist/controllers/Tr2ActionSetAttenuationScaling.js.map +1 -1
  30. package/dist/controllers/Tr2ActionSetAudioEmitterPrefix.js +5 -0
  31. package/dist/controllers/Tr2ActionSetAudioEmitterPrefix.js.map +1 -1
  32. package/dist/controllers/Tr2ActionSetAudioSwitch.js +5 -0
  33. package/dist/controllers/Tr2ActionSetAudioSwitch.js.map +1 -1
  34. package/dist/controllers/Tr2ActionSetExternalControllerVariable.js +23 -0
  35. package/dist/controllers/Tr2ActionSetExternalControllerVariable.js.map +1 -1
  36. package/dist/controllers/Tr2ActionSetShaderOption.js +5 -0
  37. package/dist/controllers/Tr2ActionSetShaderOption.js.map +1 -1
  38. package/dist/controllers/Tr2ActionSetValue.js +35 -0
  39. package/dist/controllers/Tr2ActionSetValue.js.map +1 -1
  40. package/dist/controllers/Tr2ActionSpawnParticles.js +10 -0
  41. package/dist/controllers/Tr2ActionSpawnParticles.js.map +1 -1
  42. package/dist/controllers/Tr2BindingPoint.js +67 -0
  43. package/dist/controllers/Tr2BindingPoint.js.map +1 -1
  44. package/dist/controllers/Tr2Controller.js +37 -0
  45. package/dist/controllers/Tr2Controller.js.map +1 -1
  46. package/dist/controllers/Tr2ControllerEventHandler.js +10 -0
  47. package/dist/controllers/Tr2ControllerEventHandler.js.map +1 -1
  48. package/dist/controllers/Tr2ControllerExpression.js +17 -0
  49. package/dist/controllers/Tr2ControllerExpression.js.map +1 -1
  50. package/dist/controllers/Tr2ControllerFloatVariable.js +6 -0
  51. package/dist/controllers/Tr2ControllerFloatVariable.js.map +1 -1
  52. package/dist/controllers/Tr2ControllerReference.js +11 -0
  53. package/dist/controllers/Tr2ControllerReference.js.map +1 -1
  54. package/dist/controllers/Tr2StateMachine.js +17 -0
  55. package/dist/controllers/Tr2StateMachine.js.map +1 -1
  56. package/dist/controllers/Tr2StateMachineState.js +47 -0
  57. package/dist/controllers/Tr2StateMachineState.js.map +1 -1
  58. package/dist/controllers/Tr2StateMachineTransition.js +29 -0
  59. package/dist/controllers/Tr2StateMachineTransition.js.map +1 -1
  60. package/dist/controllers/Tr2SyncToAnimation.js +5 -0
  61. package/dist/controllers/Tr2SyncToAnimation.js.map +1 -1
  62. package/dist/controllers/Tr2TimelineController.js +61 -0
  63. package/dist/controllers/Tr2TimelineController.js.map +1 -1
  64. package/dist/controllers/contracts.js +24 -1
  65. package/dist/controllers/contracts.js.map +1 -1
  66. package/dist/controllers/index.js +1 -1
  67. package/dist/curves/CjsGrannyCurves.js +150 -0
  68. package/dist/curves/CjsGrannyCurves.js.map +1 -1
  69. package/dist/curves/Tr2BoneMatrixCurve.js +23 -0
  70. package/dist/curves/Tr2BoneMatrixCurve.js.map +1 -1
  71. package/dist/curves/Tr2CameraFollowCurveKey.js +6 -0
  72. package/dist/curves/Tr2CameraFollowCurveKey.js.map +1 -1
  73. package/dist/curves/Tr2CurveColor.js +6 -0
  74. package/dist/curves/Tr2CurveColor.js.map +1 -1
  75. package/dist/curves/Tr2CurveColorMixer.js +6 -0
  76. package/dist/curves/Tr2CurveColorMixer.js.map +1 -1
  77. package/dist/curves/Tr2CurveCombiner.js +5 -0
  78. package/dist/curves/Tr2CurveCombiner.js.map +1 -1
  79. package/dist/curves/Tr2CurveConstant.js +16 -0
  80. package/dist/curves/Tr2CurveConstant.js.map +1 -1
  81. package/dist/curves/Tr2CurveEulerRotation.js +5 -0
  82. package/dist/curves/Tr2CurveEulerRotation.js.map +1 -1
  83. package/dist/curves/Tr2CurveEulerRotationExpression.js +66 -0
  84. package/dist/curves/Tr2CurveEulerRotationExpression.js.map +1 -1
  85. package/dist/curves/Tr2CurveQuaternion.js +5 -0
  86. package/dist/curves/Tr2CurveQuaternion.js.map +1 -1
  87. package/dist/curves/Tr2CurveQuaternionKey.js +5 -0
  88. package/dist/curves/Tr2CurveQuaternionKey.js.map +1 -1
  89. package/dist/curves/Tr2CurveRandomAxisRotation.js +28 -0
  90. package/dist/curves/Tr2CurveRandomAxisRotation.js.map +1 -1
  91. package/dist/curves/Tr2CurveScalar.js +35 -0
  92. package/dist/curves/Tr2CurveScalar.js.map +1 -1
  93. package/dist/curves/Tr2CurveScalarExpression.js +11 -0
  94. package/dist/curves/Tr2CurveScalarExpression.js.map +1 -1
  95. package/dist/curves/Tr2CurveScalarKey.js +6 -0
  96. package/dist/curves/Tr2CurveScalarKey.js.map +1 -1
  97. package/dist/curves/Tr2CurveSetRange.js +5 -0
  98. package/dist/curves/Tr2CurveSetRange.js.map +1 -1
  99. package/dist/curves/Tr2CurveVector2.js +5 -0
  100. package/dist/curves/Tr2CurveVector2.js.map +1 -1
  101. package/dist/curves/Tr2CurveVector3.js +5 -0
  102. package/dist/curves/Tr2CurveVector3.js.map +1 -1
  103. package/dist/curves/Tr2CurveVector3Expression.js +71 -0
  104. package/dist/curves/Tr2CurveVector3Expression.js.map +1 -1
  105. package/dist/curves/Tr2CurveVector3Lerp.js +6 -0
  106. package/dist/curves/Tr2CurveVector3Lerp.js.map +1 -1
  107. package/dist/curves/Tr2DistanceTracker.js +6 -0
  108. package/dist/curves/Tr2DistanceTracker.js.map +1 -1
  109. package/dist/curves/Tr2FollowCurve.js +6 -0
  110. package/dist/curves/Tr2FollowCurve.js.map +1 -1
  111. package/dist/curves/Tr2GrannyEventTrack.js +5 -0
  112. package/dist/curves/Tr2GrannyEventTrack.js.map +1 -1
  113. package/dist/curves/Tr2GrannyTrack.js +6 -0
  114. package/dist/curves/Tr2GrannyTrack.js.map +1 -1
  115. package/dist/curves/Tr2GrannyTransformTrack.js +6 -0
  116. package/dist/curves/Tr2GrannyTransformTrack.js.map +1 -1
  117. package/dist/curves/Tr2GrannyVectorTrack.js +5 -0
  118. package/dist/curves/Tr2GrannyVectorTrack.js.map +1 -1
  119. package/dist/curves/Tr2MatrixKey.js +5 -0
  120. package/dist/curves/Tr2MatrixKey.js.map +1 -1
  121. package/dist/curves/Tr2ObjectFollowCurveKey.js +6 -0
  122. package/dist/curves/Tr2ObjectFollowCurveKey.js.map +1 -1
  123. package/dist/curves/Tr2QuaternionLerpCurve.js +6 -0
  124. package/dist/curves/Tr2QuaternionLerpCurve.js.map +1 -1
  125. package/dist/curves/Tr2RotationAdapter.js +6 -0
  126. package/dist/curves/Tr2RotationAdapter.js.map +1 -1
  127. package/dist/curves/Tr2ScalarExprKey.js +18 -0
  128. package/dist/curves/Tr2ScalarExprKey.js.map +1 -1
  129. package/dist/curves/Tr2ScalarExprKeyCurve.js +23 -0
  130. package/dist/curves/Tr2ScalarExprKeyCurve.js.map +1 -1
  131. package/dist/curves/Tr2ScalarFader.js +11 -0
  132. package/dist/curves/Tr2ScalarFader.js.map +1 -1
  133. package/dist/curves/Tr2TranslationAdapter.js +6 -0
  134. package/dist/curves/Tr2TranslationAdapter.js.map +1 -1
  135. package/dist/curves/TriColorSequencer.js +6 -0
  136. package/dist/curves/TriColorSequencer.js.map +1 -1
  137. package/dist/curves/TriCurveSet.js +23 -0
  138. package/dist/curves/TriCurveSet.js.map +1 -1
  139. package/dist/curves/TriEventCurve.js +23 -0
  140. package/dist/curves/TriEventCurve.js.map +1 -1
  141. package/dist/curves/TriEventKey.js +5 -0
  142. package/dist/curves/TriEventKey.js.map +1 -1
  143. package/dist/curves/TriPerlinCurve.js +30 -0
  144. package/dist/curves/TriPerlinCurve.js.map +1 -1
  145. package/dist/curves/TriVectorSequencer.js +6 -0
  146. package/dist/curves/TriVectorSequencer.js.map +1 -1
  147. package/dist/eve/AudioGameObject.js +89 -1
  148. package/dist/eve/AudioGameObject.js.map +1 -1
  149. package/dist/eve/BackAndForthData.js +7 -0
  150. package/dist/eve/BackAndForthData.js.map +1 -1
  151. package/dist/eve/CjsDistributionRandom.js +6 -0
  152. package/dist/eve/CjsDistributionRandom.js.map +1 -1
  153. package/dist/eve/CjsEveThrottleableState.js +11 -0
  154. package/dist/eve/CjsEveThrottleableState.js.map +1 -1
  155. package/dist/eve/EveChildUpdateParams.js +7 -0
  156. package/dist/eve/EveChildUpdateParams.js.map +1 -1
  157. package/dist/eve/EveComponentTypes.js.map +1 -1
  158. package/dist/eve/EveCustomMask.js +58 -27
  159. package/dist/eve/EveCustomMask.js.map +1 -1
  160. package/dist/eve/EveDistanceField.js +84 -0
  161. package/dist/eve/EveDistanceField.js.map +1 -1
  162. package/dist/eve/EveEntity.js +138 -0
  163. package/dist/eve/EveEntity.js.map +1 -0
  164. package/dist/eve/EveImpactOverlay.js +61 -0
  165. package/dist/eve/EveImpactOverlay.js.map +1 -1
  166. package/dist/eve/EveLODHelper.js +17 -13
  167. package/dist/eve/EveLODHelper.js.map +1 -1
  168. package/dist/eve/EveLineData.js +2 -0
  169. package/dist/eve/EveLineData.js.map +1 -1
  170. package/dist/eve/EveThrottleable.js +11 -0
  171. package/dist/eve/EveThrottleable.js.map +1 -1
  172. package/dist/eve/FollowASplineData.js +7 -0
  173. package/dist/eve/FollowASplineData.js.map +1 -1
  174. package/dist/eve/FormationData.js +6 -0
  175. package/dist/eve/FormationData.js.map +1 -1
  176. package/dist/eve/InertiaData.js +7 -0
  177. package/dist/eve/InertiaData.js.map +1 -1
  178. package/dist/eve/PlacementDataWithIdentifier.js +7 -0
  179. package/dist/eve/PlacementDataWithIdentifier.js.map +1 -1
  180. package/dist/eve/PlayFXData.js +7 -0
  181. package/dist/eve/PlayFXData.js.map +1 -1
  182. package/dist/eve/SeekTargetData.js +7 -0
  183. package/dist/eve/SeekTargetData.js.map +1 -1
  184. package/dist/eve/{EveSpaceObjectAttachmentUtils.js → attachment/EveSpaceObjectAttachmentUtils.js} +11 -11
  185. package/dist/eve/attachment/EveSpaceObjectAttachmentUtils.js.map +1 -0
  186. package/dist/eve/attachment/banner/EveBannerItem.js +70 -0
  187. package/dist/eve/attachment/banner/EveBannerItem.js.map +1 -0
  188. package/dist/eve/{EveBannerLight.js → attachment/banner/EveBannerLight.js} +13 -2
  189. package/dist/eve/attachment/banner/EveBannerLight.js.map +1 -0
  190. package/dist/eve/attachment/banner/EveBannerSet.js +537 -0
  191. package/dist/eve/attachment/banner/EveBannerSet.js.map +1 -0
  192. package/dist/eve/{EveBoosterSet2.js → attachment/booster/EveBoosterSet2.js} +204 -35
  193. package/dist/eve/attachment/booster/EveBoosterSet2.js.map +1 -0
  194. package/dist/eve/{EveBoosterSet2Renderable.js → attachment/booster/EveBoosterSet2Renderable.js} +205 -12
  195. package/dist/eve/attachment/booster/EveBoosterSet2Renderable.js.map +1 -0
  196. package/dist/eve/{EveTrailsSet.js → attachment/booster/EveTrailsSet.js} +49 -1
  197. package/dist/eve/attachment/booster/EveTrailsSet.js.map +1 -0
  198. package/dist/eve/attachment/decal/EveSpaceObjectDecal.js +512 -0
  199. package/dist/eve/attachment/decal/EveSpaceObjectDecal.js.map +1 -0
  200. package/dist/eve/{EveHazeSet.js → attachment/haze/EveHazeSet.js} +65 -6
  201. package/dist/eve/attachment/haze/EveHazeSet.js.map +1 -0
  202. package/dist/eve/attachment/haze/EveHazeSetItem.js +64 -0
  203. package/dist/eve/attachment/haze/EveHazeSetItem.js.map +1 -0
  204. package/dist/eve/{EveHazeSetLight.js → attachment/haze/EveHazeSetLight.js} +13 -2
  205. package/dist/eve/attachment/haze/EveHazeSetLight.js.map +1 -0
  206. package/dist/eve/attachment/itemSetBounds.js +131 -0
  207. package/dist/eve/attachment/itemSetBounds.js.map +1 -0
  208. package/dist/eve/{EvePlaneLight.js → attachment/plane/EvePlaneLight.js} +14 -2
  209. package/dist/eve/attachment/plane/EvePlaneLight.js.map +1 -0
  210. package/dist/eve/{EvePlaneSet.js → attachment/plane/EvePlaneSet.js} +119 -7
  211. package/dist/eve/attachment/plane/EvePlaneSet.js.map +1 -0
  212. package/dist/eve/attachment/plane/EvePlaneSetItem.js +72 -0
  213. package/dist/eve/attachment/plane/EvePlaneSetItem.js.map +1 -0
  214. package/dist/eve/{EveSpotlightLight.js → attachment/spotlight/EveSpotlightLight.js} +13 -2
  215. package/dist/eve/attachment/spotlight/EveSpotlightLight.js.map +1 -0
  216. package/dist/eve/{EveSpotlightSet.js → attachment/spotlight/EveSpotlightSet.js} +86 -6
  217. package/dist/eve/attachment/spotlight/EveSpotlightSet.js.map +1 -0
  218. package/dist/eve/attachment/spotlight/EveSpotlightSetItem.js +61 -0
  219. package/dist/eve/attachment/spotlight/EveSpotlightSetItem.js.map +1 -0
  220. package/dist/eve/{EveSpriteLight.js → attachment/sprite/EveSpriteLight.js} +14 -2
  221. package/dist/eve/attachment/sprite/EveSpriteLight.js.map +1 -0
  222. package/dist/eve/{EveSpriteLineSet.js → attachment/sprite/EveSpriteLineSet.js} +69 -7
  223. package/dist/eve/attachment/sprite/EveSpriteLineSet.js.map +1 -0
  224. package/dist/eve/{EveSpriteLineSetItem.js → attachment/sprite/EveSpriteLineSetItem.js} +29 -4
  225. package/dist/eve/attachment/sprite/EveSpriteLineSetItem.js.map +1 -0
  226. package/dist/eve/{EveSpriteSet.js → attachment/sprite/EveSpriteSet.js} +87 -8
  227. package/dist/eve/attachment/sprite/EveSpriteSet.js.map +1 -0
  228. package/dist/{generated/eve/attachment/sprites → eve/attachment/sprite}/EveSpriteSetItem.js +23 -26
  229. package/dist/eve/attachment/sprite/EveSpriteSetItem.js.map +1 -0
  230. package/dist/eve/attachment/turrets/EveTurretFiringFX.js +184 -2
  231. package/dist/eve/attachment/turrets/EveTurretFiringFX.js.map +1 -1
  232. package/dist/eve/attachment/turrets/EveTurretSet.js +236 -7
  233. package/dist/eve/attachment/turrets/EveTurretSet.js.map +1 -1
  234. package/dist/eve/attachment/turrets/EveTurretTarget.js +112 -0
  235. package/dist/eve/attachment/turrets/EveTurretTarget.js.map +1 -1
  236. package/dist/eve/camera/EveCamera.js +644 -0
  237. package/dist/eve/camera/EveCamera.js.map +1 -0
  238. package/dist/eve/child/EveChildAudio.js +63 -0
  239. package/dist/eve/child/EveChildAudio.js.map +1 -1
  240. package/dist/eve/child/EveChildBehaviorSystem.js +412 -0
  241. package/dist/eve/child/EveChildBehaviorSystem.js.map +1 -0
  242. package/dist/{generated/eve → eve}/child/EveChildBulletStorm.js +41 -3
  243. package/dist/eve/child/EveChildBulletStorm.js.map +1 -0
  244. package/dist/eve/child/EveChildContainer.js +175 -16
  245. package/dist/eve/child/EveChildContainer.js.map +1 -1
  246. package/dist/eve/child/EveChildEffectPropagator.js +1 -1
  247. package/dist/eve/child/EveChildEffectPropagator.js.map +1 -1
  248. package/dist/eve/child/EveChildFogVolume.js +72 -0
  249. package/dist/eve/child/EveChildFogVolume.js.map +1 -1
  250. package/dist/eve/child/EveChildInheritProperties.js +17 -0
  251. package/dist/eve/child/EveChildInheritProperties.js.map +1 -1
  252. package/dist/eve/child/EveChildInstancedMeshes.js +211 -1
  253. package/dist/eve/child/EveChildInstancedMeshes.js.map +1 -1
  254. package/dist/eve/child/EveChildLightingOverride.js +74 -0
  255. package/dist/eve/child/EveChildLightingOverride.js.map +1 -1
  256. package/dist/{generated/eve → eve}/child/EveChildLink.js +17 -16
  257. package/dist/eve/child/EveChildLink.js.map +1 -0
  258. package/dist/eve/child/EveChildMesh.js +351 -105
  259. package/dist/eve/child/EveChildMesh.js.map +1 -1
  260. package/dist/eve/child/EveChildSpherePin.js +108 -0
  261. package/dist/eve/child/EveChildSpherePin.js.map +1 -0
  262. package/dist/eve/child/EveChildTransform.js +44 -1
  263. package/dist/eve/child/EveChildTransform.js.map +1 -1
  264. package/dist/eve/child/IEveSpaceObjectChild.js +5 -0
  265. package/dist/eve/child/IEveSpaceObjectChild.js.map +1 -1
  266. package/dist/eve/child/behaviors/CollisionAvoidance.js +112 -0
  267. package/dist/eve/child/behaviors/CollisionAvoidance.js.map +1 -0
  268. package/dist/eve/child/behaviors/InclusionVolume.js +131 -0
  269. package/dist/eve/child/behaviors/InclusionVolume.js.map +1 -0
  270. package/dist/eve/child/behaviors/Wander.js +99 -0
  271. package/dist/eve/child/behaviors/Wander.js.map +1 -0
  272. package/dist/{generated/eve → eve}/child/behaviors/enums.js +1 -1
  273. package/dist/eve/child/behaviors/enums.js.map +1 -0
  274. package/dist/eve/child/behaviors/lifecycle/ProcessLifetime.js +540 -0
  275. package/dist/eve/child/behaviors/lifecycle/ProcessLifetime.js.map +1 -0
  276. package/dist/eve/{ProcessLifetimeData.js → child/behaviors/lifecycle/ProcessLifetimeData.js} +8 -2
  277. package/dist/eve/child/behaviors/lifecycle/ProcessLifetimeData.js.map +1 -0
  278. package/dist/eve/child/behaviors/{SplineTunnel.js → tunnels/SplineTunnel.js} +9 -7
  279. package/dist/eve/child/behaviors/tunnels/SplineTunnel.js.map +1 -0
  280. package/dist/eve/child/behaviors/tunnels/SplineTunnelGroup.js +211 -0
  281. package/dist/eve/child/behaviors/tunnels/SplineTunnelGroup.js.map +1 -0
  282. package/dist/eve/child/behaviors/{SplineTunnelPoint.js → tunnels/SplineTunnelPoint.js} +3 -3
  283. package/dist/eve/child/behaviors/tunnels/SplineTunnelPoint.js.map +1 -0
  284. package/dist/eve/child/lineSetPaths/EveBezierCurve.js +65 -0
  285. package/dist/eve/child/lineSetPaths/EveBezierCurve.js.map +1 -1
  286. package/dist/eve/child/lineSetPaths/EveCircle.js +63 -0
  287. package/dist/eve/child/lineSetPaths/EveCircle.js.map +1 -1
  288. package/dist/{generated/eve → eve}/child/modifiers/EveChildModifierAttachToBone.js +24 -16
  289. package/dist/eve/child/modifiers/EveChildModifierAttachToBone.js.map +1 -0
  290. package/dist/eve/child/modifiers/EveChildModifierBillboard2D.js +5 -0
  291. package/dist/eve/child/modifiers/EveChildModifierBillboard2D.js.map +1 -1
  292. package/dist/{generated/eve → eve}/child/modifiers/EveChildModifierBillboard3D.js +22 -19
  293. package/dist/eve/child/modifiers/EveChildModifierBillboard3D.js.map +1 -0
  294. package/dist/eve/child/modifiers/EveChildModifierBooster.js +6 -0
  295. package/dist/eve/child/modifiers/EveChildModifierBooster.js.map +1 -1
  296. package/dist/eve/child/modifiers/EveChildModifierCameraOrientedRotationConstrained.js +5 -0
  297. package/dist/eve/child/modifiers/EveChildModifierCameraOrientedRotationConstrained.js.map +1 -1
  298. package/dist/eve/child/modifiers/EveChildModifierHalo.js +5 -0
  299. package/dist/eve/child/modifiers/EveChildModifierHalo.js.map +1 -1
  300. package/dist/eve/child/modifiers/EveChildModifierHaloInverted.js +6 -0
  301. package/dist/eve/child/modifiers/EveChildModifierHaloInverted.js.map +1 -1
  302. package/dist/eve/child/modifiers/EveChildModifierSRT.js +5 -0
  303. package/dist/eve/child/modifiers/EveChildModifierSRT.js.map +1 -1
  304. package/dist/{generated/eve → eve}/child/modifiers/EveChildModifierStretch.js +31 -17
  305. package/dist/eve/child/modifiers/EveChildModifierStretch.js.map +1 -0
  306. package/dist/{generated/eve → eve}/child/modifiers/EveChildModifierTranslateWithCamera.js +16 -14
  307. package/dist/eve/child/modifiers/EveChildModifierTranslateWithCamera.js.map +1 -0
  308. package/dist/{generated/eve → eve}/child/procedural/EveChildProceduralContainer.js +11 -4
  309. package/dist/eve/child/procedural/EveChildProceduralContainer.js.map +1 -0
  310. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodAttributeMap.js +12 -12
  311. package/dist/eve/child/procedural/selection/EveProceduralMethodAttributeMap.js.map +1 -0
  312. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodAttributeMapParameter.js +6 -6
  313. package/dist/eve/child/procedural/selection/EveProceduralMethodAttributeMapParameter.js.map +1 -0
  314. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodCycling.js +12 -12
  315. package/dist/eve/child/procedural/selection/EveProceduralMethodCycling.js.map +1 -0
  316. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodCyclingParameter.js +8 -8
  317. package/dist/eve/child/procedural/selection/EveProceduralMethodCyclingParameter.js.map +1 -0
  318. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodRandom.js +17 -17
  319. package/dist/eve/child/procedural/selection/EveProceduralMethodRandom.js.map +1 -0
  320. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodRandomParameter.js +7 -7
  321. package/dist/eve/child/procedural/selection/EveProceduralMethodRandomParameter.js.map +1 -0
  322. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodThresholdParameter.js +7 -7
  323. package/dist/eve/child/procedural/selection/EveProceduralMethodThresholdParameter.js.map +1 -0
  324. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodThresholds.js +17 -17
  325. package/dist/eve/child/procedural/selection/EveProceduralMethodThresholds.js.map +1 -0
  326. package/dist/{generated/eve → eve}/distribution/EveBaseDistributionMethod.js +132 -3
  327. package/dist/eve/distribution/EveBaseDistributionMethod.js.map +1 -0
  328. package/dist/{generated/eve → eve}/distribution/attributeModifiers/EveDistributionModifierProcessLifetime.js +12 -1
  329. package/dist/eve/distribution/attributeModifiers/EveDistributionModifierProcessLifetime.js.map +1 -0
  330. package/dist/{generated/eve → eve}/distribution/attributeModifiers/EveDistributionModifierScaleBySpaceObjectParent.js +9 -1
  331. package/dist/eve/distribution/attributeModifiers/EveDistributionModifierScaleBySpaceObjectParent.js.map +1 -0
  332. package/dist/{generated/eve → eve}/distribution/attributeModifiers/EveDistributionModifierTransformOffset.js +12 -1
  333. package/dist/eve/distribution/attributeModifiers/EveDistributionModifierTransformOffset.js.map +1 -0
  334. package/dist/eve/distribution/attributeModifiers/enums.js.map +1 -0
  335. package/dist/{generated/eve → eve}/distribution/placement/EveDistributionPlacementGeneratorLocators.js +16 -3
  336. package/dist/eve/distribution/placement/EveDistributionPlacementGeneratorLocators.js.map +1 -0
  337. package/dist/{generated/eve → eve}/distribution/placement/EveDistributionPlacementGeneratorParentLocators.js +31 -3
  338. package/dist/eve/distribution/placement/EveDistributionPlacementGeneratorParentLocators.js.map +1 -0
  339. package/dist/{generated/eve → eve}/distribution/placement/EveDistributionPlacementGeneratorVolume.js +34 -3
  340. package/dist/eve/distribution/placement/EveDistributionPlacementGeneratorVolume.js.map +1 -0
  341. package/dist/{generated/eve → eve}/distribution/spawnModifiers/EveDistributionSpawnModifierLifeTimeOffset.js +14 -2
  342. package/dist/eve/distribution/spawnModifiers/EveDistributionSpawnModifierLifeTimeOffset.js.map +1 -0
  343. package/dist/{generated/eve → eve}/distribution/spawnModifiers/EveDistributionSpawnModifierRandomOffset.js +13 -2
  344. package/dist/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomOffset.js.map +1 -0
  345. package/dist/{generated/eve → eve}/distribution/spawnModifiers/EveDistributionSpawnModifierRandomRotation.js +13 -2
  346. package/dist/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomRotation.js.map +1 -0
  347. package/dist/{generated/eve → eve}/distribution/spawnModifiers/EveDistributionSpawnModifierRandomScale.js +13 -2
  348. package/dist/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomScale.js.map +1 -0
  349. package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerBurst.js +19 -1
  350. package/dist/eve/distribution/spawners/EveDistributionSpawnerBurst.js.map +1 -0
  351. package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerControllerTrigger.js +25 -1
  352. package/dist/eve/distribution/spawners/EveDistributionSpawnerControllerTrigger.js.map +1 -0
  353. package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerInterval.js +17 -1
  354. package/dist/eve/distribution/spawners/EveDistributionSpawnerInterval.js.map +1 -0
  355. package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerTriggerPlane.js +20 -1
  356. package/dist/eve/distribution/spawners/EveDistributionSpawnerTriggerPlane.js.map +1 -0
  357. package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerTriggerSnake.js +20 -1
  358. package/dist/eve/distribution/spawners/EveDistributionSpawnerTriggerSnake.js.map +1 -0
  359. package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerTriggerSphere.js +20 -1
  360. package/dist/eve/distribution/spawners/EveDistributionSpawnerTriggerSphere.js.map +1 -0
  361. package/dist/{generated/eve/effect → eve/effect/lensflare}/EveLensflare.js +44 -2
  362. package/dist/eve/effect/lensflare/EveLensflare.js.map +1 -0
  363. package/dist/eve/effect/multiEffect/EveMultiEffect.js +302 -0
  364. package/dist/eve/effect/multiEffect/EveMultiEffect.js.map +1 -0
  365. package/dist/eve/effect/multiEffect/EveMultiEffectParameter.js +92 -0
  366. package/dist/eve/effect/multiEffect/EveMultiEffectParameter.js.map +1 -0
  367. package/dist/eve/index.js +117 -47
  368. package/dist/eve/index.js.map +1 -1
  369. package/dist/eve/lights/CjsLightData.js +7 -0
  370. package/dist/eve/lights/CjsLightData.js.map +1 -1
  371. package/dist/eve/lights/Tr2Light.js +41 -0
  372. package/dist/eve/lights/Tr2Light.js.map +1 -1
  373. package/dist/eve/lights/Tr2PointLight.js +5 -0
  374. package/dist/eve/lights/Tr2PointLight.js.map +1 -1
  375. package/dist/eve/lights/Tr2SpotLight.js +5 -0
  376. package/dist/eve/lights/Tr2SpotLight.js.map +1 -1
  377. package/dist/eve/lights/Tr2TexturedPointLight.js +10 -0
  378. package/dist/eve/lights/Tr2TexturedPointLight.js.map +1 -1
  379. package/dist/eve/lights/lightConversion.js +29 -27
  380. package/dist/eve/lights/lightConversion.js.map +1 -1
  381. package/dist/eve/{EveLocator2.js → locator/EveLocator2.js} +20 -1
  382. package/dist/eve/locator/EveLocator2.js.map +1 -0
  383. package/dist/eve/{EveLocatorSets.js → locator/EveLocatorSets.js} +43 -1
  384. package/dist/eve/locator/EveLocatorSets.js.map +1 -0
  385. package/dist/eve/{Locator.js → locator/Locator.js} +6 -1
  386. package/dist/eve/locator/Locator.js.map +1 -0
  387. package/dist/eve/{LocatorData.js → locator/LocatorData.js} +3 -1
  388. package/dist/eve/locator/LocatorData.js.map +1 -0
  389. package/dist/eve/overlays/EveMeshOverlayEffect.js +208 -0
  390. package/dist/eve/overlays/EveMeshOverlayEffect.js.map +1 -0
  391. package/dist/eve/{EveParticleDirectForce.js → particles/force/EveParticleDirectForce.js} +5 -5
  392. package/dist/eve/particles/force/EveParticleDirectForce.js.map +1 -0
  393. package/dist/eve/{EveParticleDragForce.js → particles/force/EveParticleDragForce.js} +5 -5
  394. package/dist/eve/particles/force/EveParticleDragForce.js.map +1 -0
  395. package/dist/eve/{EveParticleSpring.js → particles/force/EveParticleSpring.js} +6 -6
  396. package/dist/eve/particles/force/EveParticleSpring.js.map +1 -0
  397. package/dist/{generated/eve/scene → eve/particles/static}/EveSceneStaticParticles.js +70 -36
  398. package/dist/eve/particles/static/EveSceneStaticParticles.js.map +1 -0
  399. package/dist/eve/perObjectData/childPerObjectRecords.js +90 -0
  400. package/dist/eve/perObjectData/childPerObjectRecords.js.map +1 -0
  401. package/dist/eve/renderable/stretch/CjsStretchRuntime.js +76 -0
  402. package/dist/eve/renderable/stretch/CjsStretchRuntime.js.map +1 -1
  403. package/dist/eve/renderable/stretch/EveFiringEffectElementContainer.js +85 -1
  404. package/dist/eve/renderable/stretch/EveFiringEffectElementContainer.js.map +1 -1
  405. package/dist/eve/renderable/stretch/EveLocalPositionCurve.js +91 -0
  406. package/dist/eve/renderable/stretch/EveLocalPositionCurve.js.map +1 -1
  407. package/dist/eve/renderable/stretch/EveRemotePositionCurve.js +36 -0
  408. package/dist/eve/renderable/stretch/EveRemotePositionCurve.js.map +1 -1
  409. package/dist/eve/renderable/stretch/EveStretch.js +158 -9
  410. package/dist/eve/renderable/stretch/EveStretch.js.map +1 -1
  411. package/dist/eve/renderable/stretch/EveStretch2.js +121 -12
  412. package/dist/eve/renderable/stretch/EveStretch2.js.map +1 -1
  413. package/dist/eve/renderable/stretch/EveStretch3.js +261 -8
  414. package/dist/eve/renderable/stretch/EveStretch3.js.map +1 -1
  415. package/dist/eve/scene/EveSpaceScene.js +56 -6
  416. package/dist/eve/scene/EveSpaceScene.js.map +1 -1
  417. package/dist/{generated/eve/scene → eve/scene/components}/EveComponentCollection.js +24 -1
  418. package/dist/eve/scene/components/EveComponentCollection.js.map +1 -0
  419. package/dist/{generated/eve/scene → eve/scene/components}/EveComponentRegistry.js +74 -2
  420. package/dist/eve/scene/components/EveComponentRegistry.js.map +1 -0
  421. package/dist/eve/scene/picking/EvePickingContext.js +61 -0
  422. package/dist/eve/scene/picking/EvePickingContext.js.map +1 -0
  423. package/dist/eve/scene/shadows/TriShadowFrustum.js +70 -0
  424. package/dist/eve/scene/shadows/TriShadowFrustum.js.map +1 -0
  425. package/dist/eve/scene/shadows/TriShadowOrthoFrustum.js +129 -0
  426. package/dist/eve/scene/shadows/TriShadowOrthoFrustum.js.map +1 -0
  427. package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierBucket.js +19 -19
  428. package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierBucket.js.map +1 -0
  429. package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierCameraDependency.js +19 -19
  430. package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierCameraDependency.js.map +1 -0
  431. package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierColor.js +12 -12
  432. package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierColor.js.map +1 -0
  433. package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierControllerVariableListener.js +12 -12
  434. package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierControllerVariableListener.js.map +1 -0
  435. package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierExpressionBucket.js +30 -30
  436. package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierExpressionBucket.js.map +1 -0
  437. package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierNoise.js +9 -9
  438. package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierNoise.js.map +1 -0
  439. package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightBaseAttributeModifier.js +23 -23
  440. package/dist/eve/smartLights/attributeModifiers/EveSmartLightBaseAttributeModifier.js.map +1 -0
  441. package/dist/eve/smartLights/attributeModifiers/enums.js.map +1 -0
  442. package/dist/{generated/eve → eve}/socket/EveSocketParameterBindingBase.js +26 -1
  443. package/dist/eve/socket/EveSocketParameterBindingBase.js.map +1 -0
  444. package/dist/{generated/eve → eve}/socket/EveSocketParameterBool.js +17 -1
  445. package/dist/eve/socket/EveSocketParameterBool.js.map +1 -0
  446. package/dist/{generated/eve → eve}/socket/EveSocketParameterColor.js +21 -5
  447. package/dist/eve/socket/EveSocketParameterColor.js.map +1 -0
  448. package/dist/eve/socket/EveSocketParameterFilePath.js +5 -5
  449. package/dist/eve/socket/EveSocketParameterFilePath.js.map +1 -1
  450. package/dist/{generated/eve → eve}/socket/EveSocketParameterFloat.js +17 -1
  451. package/dist/eve/socket/EveSocketParameterFloat.js.map +1 -0
  452. package/dist/{generated/eve → eve}/socket/EveSocketParameterInt.js +17 -1
  453. package/dist/eve/socket/EveSocketParameterInt.js.map +1 -0
  454. package/dist/{generated/eve → eve}/socket/EveSocketParameterString.js +42 -2
  455. package/dist/eve/socket/EveSocketParameterString.js.map +1 -0
  456. package/dist/{generated/eve → eve}/socket/EveSocketParameterVector2.js +17 -1
  457. package/dist/eve/socket/EveSocketParameterVector2.js.map +1 -0
  458. package/dist/{generated/eve → eve}/socket/EveSocketParameterVector3.js +17 -1
  459. package/dist/eve/socket/EveSocketParameterVector3.js.map +1 -0
  460. package/dist/{generated/eve → eve}/socket/EveSocketParameterVector4.js +17 -1
  461. package/dist/eve/socket/EveSocketParameterVector4.js.map +1 -0
  462. package/dist/eve/spaceObject/EveEffectRoot2.js +58 -31
  463. package/dist/eve/spaceObject/EveEffectRoot2.js.map +1 -1
  464. package/dist/eve/spaceObject/EveMissile.js +49 -1
  465. package/dist/eve/spaceObject/EveMissile.js.map +1 -1
  466. package/dist/eve/spaceObject/EveMissileWarhead.js +100 -1
  467. package/dist/eve/spaceObject/EveMissileWarhead.js.map +1 -1
  468. package/dist/eve/spaceObject/EveMobile.js +104 -0
  469. package/dist/eve/spaceObject/EveMobile.js.map +1 -1
  470. package/dist/eve/spaceObject/EveRootTransform.js +17 -0
  471. package/dist/eve/spaceObject/EveRootTransform.js.map +1 -1
  472. package/dist/{generated/eve → eve}/spaceObject/EveShip2.js +32 -12
  473. package/dist/eve/spaceObject/EveShip2.js.map +1 -0
  474. package/dist/eve/spaceObject/EveSpaceObject2.js +726 -199
  475. package/dist/eve/spaceObject/EveSpaceObject2.js.map +1 -1
  476. package/dist/eve/spaceObject/EveTransform.js +100 -4
  477. package/dist/eve/spaceObject/EveTransform.js.map +1 -1
  478. package/dist/eve/spaceObject/IEveSpaceObject2ParentData.js +70 -0
  479. package/dist/eve/spaceObject/IEveSpaceObject2ParentData.js.map +1 -0
  480. package/dist/eve/spaceObject/createEveSpaceObjectMainPerObjectValues.js +19 -16
  481. package/dist/eve/spaceObject/createEveSpaceObjectMainPerObjectValues.js.map +1 -1
  482. package/dist/eve/spaceObject/fxAttributes/EveCameraFxAttributes.js +92 -0
  483. package/dist/eve/spaceObject/fxAttributes/EveCameraFxAttributes.js.map +1 -0
  484. package/dist/eve/spaceObject/fxAttributes/EveSpaceObjectFxAttributes.js +158 -0
  485. package/dist/eve/spaceObject/fxAttributes/EveSpaceObjectFxAttributes.js.map +1 -0
  486. package/dist/{generated/eve/spaceObject → eve/spaceObject/planet}/EvePlanet.js +2 -2
  487. package/dist/eve/spaceObject/planet/EvePlanet.js.map +1 -0
  488. package/dist/{generated/eve → eve}/spaceObject/swarm/EveSwarmRenderable.js +102 -64
  489. package/dist/eve/spaceObject/swarm/EveSwarmRenderable.js.map +1 -0
  490. package/dist/eve/ui/EveEllipseDefinition.js +15 -0
  491. package/dist/eve/ui/EveEllipseDefinition.js.map +1 -1
  492. package/dist/eve/ui/EveEllipseSet.js +42 -0
  493. package/dist/eve/ui/EveEllipseSet.js.map +1 -1
  494. package/dist/{generated/eve → eve}/ui/EveSpherePin.js +76 -11
  495. package/dist/eve/ui/EveSpherePin.js.map +1 -0
  496. package/dist/eve/ui/EveSprite2dBracket.js +5 -0
  497. package/dist/eve/ui/EveSprite2dBracket.js.map +1 -1
  498. package/dist/eve/ui/EveUiObject.js +11 -0
  499. package/dist/eve/ui/EveUiObject.js.map +1 -1
  500. package/dist/{generated/eve/ui → eve/ui/lines}/EveLineSet.js +67 -6
  501. package/dist/eve/ui/lines/EveLineSet.js.map +1 -0
  502. package/dist/eve/ui/tacticalOverlay/EveTacticalOverlayTrackObject.js +78 -0
  503. package/dist/eve/ui/tacticalOverlay/EveTacticalOverlayTrackObject.js.map +1 -0
  504. package/dist/{generated/eve/ui → eve/ui/tacticalOverlay}/EveTacticalTrails.js +22 -2
  505. package/dist/eve/ui/tacticalOverlay/EveTacticalTrails.js.map +1 -0
  506. package/dist/eve/virtualCamera/EveVirtualCamera.js +152 -0
  507. package/dist/eve/virtualCamera/EveVirtualCamera.js.map +1 -1
  508. package/dist/eve/virtualCamera/EveVirtualCameraSystem.js +65 -0
  509. package/dist/eve/virtualCamera/EveVirtualCameraSystem.js.map +1 -1
  510. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatAdd.js +17 -0
  511. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatAdd.js.map +1 -1
  512. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatBase.js +19 -0
  513. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatBase.js.map +1 -1
  514. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatDamping.js +17 -0
  515. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatDamping.js.map +1 -1
  516. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatNoise.js +29 -0
  517. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatNoise.js.map +1 -1
  518. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatSet.js +15 -0
  519. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatSet.js.map +1 -1
  520. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Base.js +38 -0
  521. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Base.js.map +1 -1
  522. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Damping.js +17 -0
  523. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Damping.js.map +1 -1
  524. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Inertia.js +18 -0
  525. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Inertia.js.map +1 -1
  526. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveBetween.js +20 -0
  527. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveBetween.js.map +1 -1
  528. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveForward.js +20 -0
  529. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveForward.js.map +1 -1
  530. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveRight.js +11 -0
  531. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveRight.js.map +1 -1
  532. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveUp.js +14 -0
  533. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveUp.js.map +1 -1
  534. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Offset.js +16 -0
  535. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Offset.js.map +1 -1
  536. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Orbit.js +20 -0
  537. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Orbit.js.map +1 -1
  538. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Shake.js +36 -0
  539. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Shake.js.map +1 -1
  540. package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionBase.js +36 -0
  541. package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionBase.js.map +1 -1
  542. package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionCut.js +11 -0
  543. package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionCut.js.map +1 -1
  544. package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionLerp.js +37 -0
  545. package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionLerp.js.map +1 -1
  546. package/dist/eve/volume/EveBoxVolume.js +59 -0
  547. package/dist/eve/volume/EveBoxVolume.js.map +1 -1
  548. package/dist/eve/volume/EveEllipsoidVolume.js +54 -0
  549. package/dist/eve/volume/EveEllipsoidVolume.js.map +1 -1
  550. package/dist/eve/volume/EveSphereVolume.js +34 -0
  551. package/dist/eve/volume/EveSphereVolume.js.map +1 -1
  552. package/dist/generated/eve/child/EveChildCloud2.js +138 -138
  553. package/dist/generated/eve/child/EveChildCloud2.js.map +1 -1
  554. package/dist/generated/eve/child/EveChildParticleSystem.js +10 -4
  555. package/dist/generated/eve/child/EveChildParticleSystem.js.map +1 -1
  556. package/dist/generated/eve/child/EveChildSocket.js +1 -1
  557. package/dist/generated/eve/child/EveChildSocket.js.map +1 -1
  558. package/dist/generated/eve/child/behaviors/BackAndForth.js +14 -17
  559. package/dist/generated/eve/child/behaviors/BackAndForth.js.map +1 -1
  560. package/dist/generated/eve/child/behaviors/BehaviorGroup.js +2 -2
  561. package/dist/generated/eve/child/behaviors/BehaviorGroup.js.map +1 -1
  562. package/dist/generated/eve/child/behaviors/EveKDdroneManagementTree.js +26 -29
  563. package/dist/generated/eve/child/behaviors/EveKDdroneManagementTree.js.map +1 -1
  564. package/dist/generated/eve/child/behaviors/FollowASpline.js +13 -17
  565. package/dist/generated/eve/child/behaviors/FollowASpline.js.map +1 -1
  566. package/dist/generated/eve/child/behaviors/PlayFX.js +14 -14
  567. package/dist/generated/eve/child/behaviors/PlayFX.js.map +1 -1
  568. package/dist/generated/eve/child/behaviors/SeekTarget.js +1 -1
  569. package/dist/generated/eve/child/behaviors/SeekTarget.js.map +1 -1
  570. package/dist/generated/eve/child/behaviors/index.js +0 -6
  571. package/dist/generated/eve/child/behaviors/index.js.map +1 -1
  572. package/dist/generated/eve/child/index.js +0 -23
  573. package/dist/generated/eve/child/index.js.map +1 -1
  574. package/dist/generated/eve/effect/index.js +0 -3
  575. package/dist/generated/eve/effect/index.js.map +1 -1
  576. package/dist/generated/eve/index.js +0 -88
  577. package/dist/generated/eve/index.js.map +1 -1
  578. package/dist/generated/eve/scene/index.js +0 -6
  579. package/dist/generated/eve/scene/index.js.map +1 -1
  580. package/dist/generated/eve/smartLights/EveSmartLightColorShareGroup.js +20 -20
  581. package/dist/generated/eve/smartLights/EveSmartLightColorShareGroup.js.map +1 -1
  582. package/dist/generated/eve/smartLights/EveSmartLightPointLight.js +1 -1
  583. package/dist/generated/eve/smartLights/EveSmartLightPointLight.js.map +1 -1
  584. package/dist/generated/eve/smartLights/index.js +0 -8
  585. package/dist/generated/eve/smartLights/index.js.map +1 -1
  586. package/dist/generated/eve/spaceObject/index.js +0 -4
  587. package/dist/generated/eve/spaceObject/index.js.map +1 -1
  588. package/dist/generated/eve/spaceObject/swarm/EveSwarm.js +11 -11
  589. package/dist/generated/eve/spaceObject/swarm/EveSwarm.js.map +1 -1
  590. package/dist/generated/eve/spaceObject/swarm/index.js +0 -1
  591. package/dist/generated/eve/spaceObject/swarm/index.js.map +1 -1
  592. package/dist/generated/eve/ui/index.js +0 -4
  593. package/dist/generated/eve/ui/index.js.map +1 -1
  594. package/dist/generated/index.js +0 -93
  595. package/dist/generated/index.js.map +1 -1
  596. package/dist/generated/trinityCore/index.js +0 -5
  597. package/dist/generated/trinityCore/index.js.map +1 -1
  598. package/dist/index.js +130 -155
  599. package/dist/index.js.map +1 -1
  600. package/dist/particle/Tr2GpuSharedEmitter.js +39 -0
  601. package/dist/particle/Tr2GpuSharedEmitter.js.map +1 -1
  602. package/dist/particle/Tr2GpuUniqueEmitter.js +5 -0
  603. package/dist/particle/Tr2GpuUniqueEmitter.js.map +1 -1
  604. package/dist/particle/Tr2ParticleAttractorForce.js +10 -0
  605. package/dist/particle/Tr2ParticleAttractorForce.js.map +1 -1
  606. package/dist/particle/Tr2ParticleDirectForce.js +7 -0
  607. package/dist/particle/Tr2ParticleDirectForce.js.map +1 -1
  608. package/dist/particle/Tr2ParticleDragForce.js +7 -0
  609. package/dist/particle/Tr2ParticleDragForce.js.map +1 -1
  610. package/dist/particle/Tr2ParticleElementDeclaration.js +5 -0
  611. package/dist/particle/Tr2ParticleElementDeclaration.js.map +1 -1
  612. package/dist/particle/Tr2ParticleFluidDragForce.js +10 -0
  613. package/dist/particle/Tr2ParticleFluidDragForce.js.map +1 -1
  614. package/dist/particle/Tr2ParticleSpring.js +10 -0
  615. package/dist/particle/Tr2ParticleSpring.js.map +1 -1
  616. package/dist/particle/Tr2ParticleVortexForce.js +10 -0
  617. package/dist/particle/Tr2ParticleVortexForce.js.map +1 -1
  618. package/dist/particle/particleElementBinding.js +12 -0
  619. package/dist/particle/particleElementBinding.js.map +1 -1
  620. package/dist/postProcess/Tr2PPBloomEffect.js +6 -0
  621. package/dist/postProcess/Tr2PPBloomEffect.js.map +1 -1
  622. package/dist/postProcess/Tr2PPDepthOfFieldEffect.js +16 -0
  623. package/dist/postProcess/Tr2PPDepthOfFieldEffect.js.map +1 -1
  624. package/dist/postProcess/Tr2PPGenericEffect.js +7 -0
  625. package/dist/postProcess/Tr2PPGenericEffect.js.map +1 -1
  626. package/dist/postProcess/Tr2PPTaaEffect.js +10 -0
  627. package/dist/postProcess/Tr2PPTaaEffect.js.map +1 -1
  628. package/dist/postProcess/Tr2PPTonemappingEffect.js +5 -0
  629. package/dist/postProcess/Tr2PPTonemappingEffect.js.map +1 -1
  630. package/dist/postProcess/Tr2PostProcess.js +5 -0
  631. package/dist/postProcess/Tr2PostProcess.js.map +1 -1
  632. package/dist/postProcess/Tr2PostProcess2.js +147 -0
  633. package/dist/postProcess/Tr2PostProcess2.js.map +1 -1
  634. package/dist/postProcess/Tr2PostProcessAttributes.js +89 -0
  635. package/dist/postProcess/Tr2PostProcessAttributes.js.map +1 -1
  636. package/dist/renderJob/Tr2RenderJobs.js +34 -0
  637. package/dist/renderJob/Tr2RenderJobs.js.map +1 -1
  638. package/dist/renderJob/TriRenderJob.js +59 -0
  639. package/dist/renderJob/TriRenderJob.js.map +1 -1
  640. package/dist/renderJob/TriRenderStep.js +20 -0
  641. package/dist/renderJob/TriRenderStep.js.map +1 -1
  642. package/dist/renderJob/TriStepClear.js +18 -0
  643. package/dist/renderJob/TriStepClear.js.map +1 -1
  644. package/dist/renderJob/TriStepCopyRenderTarget.js +51 -0
  645. package/dist/renderJob/TriStepCopyRenderTarget.js.map +1 -1
  646. package/dist/renderJob/TriStepEnableWireframeMode.js +9 -0
  647. package/dist/renderJob/TriStepEnableWireframeMode.js.map +1 -1
  648. package/dist/renderJob/TriStepGenerateMipMaps.js +9 -0
  649. package/dist/renderJob/TriStepGenerateMipMaps.js.map +1 -1
  650. package/dist/renderJob/TriStepPopDepthStencil.js +6 -0
  651. package/dist/renderJob/TriStepPopDepthStencil.js.map +1 -1
  652. package/dist/renderJob/TriStepPopProjection.js +6 -0
  653. package/dist/renderJob/TriStepPopProjection.js.map +1 -1
  654. package/dist/renderJob/TriStepPopRenderTarget.js +12 -0
  655. package/dist/renderJob/TriStepPopRenderTarget.js.map +1 -1
  656. package/dist/renderJob/TriStepPopViewTransform.js +6 -0
  657. package/dist/renderJob/TriStepPopViewTransform.js.map +1 -1
  658. package/dist/renderJob/TriStepPopViewport.js +6 -0
  659. package/dist/renderJob/TriStepPopViewport.js.map +1 -1
  660. package/dist/renderJob/TriStepPresentSwapChain.js +12 -0
  661. package/dist/renderJob/TriStepPresentSwapChain.js.map +1 -1
  662. package/dist/renderJob/TriStepPushDepthStencil.js +17 -0
  663. package/dist/renderJob/TriStepPushDepthStencil.js.map +1 -1
  664. package/dist/renderJob/TriStepPushProjection.js +6 -0
  665. package/dist/renderJob/TriStepPushProjection.js.map +1 -1
  666. package/dist/renderJob/TriStepPushRenderTarget.js +9 -0
  667. package/dist/renderJob/TriStepPushRenderTarget.js.map +1 -1
  668. package/dist/renderJob/TriStepPushViewTransform.js +6 -0
  669. package/dist/renderJob/TriStepPushViewTransform.js.map +1 -1
  670. package/dist/renderJob/TriStepPushViewport.js +6 -0
  671. package/dist/renderJob/TriStepPushViewport.js.map +1 -1
  672. package/dist/renderJob/TriStepRemoteSync.js +17 -0
  673. package/dist/renderJob/TriStepRemoteSync.js.map +1 -1
  674. package/dist/renderJob/TriStepResolve.js +13 -0
  675. package/dist/renderJob/TriStepResolve.js.map +1 -1
  676. package/dist/renderJob/TriStepRunJob.js +12 -0
  677. package/dist/renderJob/TriStepRunJob.js.map +1 -1
  678. package/dist/renderJob/TriStepSetDepthStencil.js +12 -0
  679. package/dist/renderJob/TriStepSetDepthStencil.js.map +1 -1
  680. package/dist/renderJob/TriStepSetProjection.js +14 -0
  681. package/dist/renderJob/TriStepSetProjection.js.map +1 -1
  682. package/dist/renderJob/TriStepSetRenderState.js +20 -0
  683. package/dist/renderJob/TriStepSetRenderState.js.map +1 -1
  684. package/dist/renderJob/TriStepSetRenderTarget.js +12 -0
  685. package/dist/renderJob/TriStepSetRenderTarget.js.map +1 -1
  686. package/dist/renderJob/TriStepSetStdRndStates.js +18 -0
  687. package/dist/renderJob/TriStepSetStdRndStates.js.map +1 -1
  688. package/dist/renderJob/TriStepSetView.js +29 -2
  689. package/dist/renderJob/TriStepSetView.js.map +1 -1
  690. package/dist/renderJob/TriStepSetViewport.js +17 -0
  691. package/dist/renderJob/TriStepSetViewport.js.map +1 -1
  692. package/dist/renderJob/TriStepSetVisualizationMode.js +19 -0
  693. package/dist/renderJob/TriStepSetVisualizationMode.js.map +1 -1
  694. package/dist/shader/Tr2Effect.js +217 -2
  695. package/dist/shader/Tr2Effect.js.map +1 -1
  696. package/dist/shader/Tr2Material.js +41 -0
  697. package/dist/shader/Tr2Material.js.map +1 -1
  698. package/dist/shader/index.js +1 -11
  699. package/dist/shader/index.js.map +1 -1
  700. package/dist/shader/material/Tr2EffectLibraryParameters.js +7 -0
  701. package/dist/shader/material/Tr2EffectLibraryParameters.js.map +1 -1
  702. package/dist/shader/material/Tr2EffectPassParameters.js +23 -0
  703. package/dist/shader/material/Tr2EffectPassParameters.js.map +1 -1
  704. package/dist/shader/material/Tr2MaterialStageInput.js +15 -0
  705. package/dist/shader/material/Tr2MaterialStageInput.js.map +1 -1
  706. package/dist/shader/parameter/CjsParameter.js +94 -0
  707. package/dist/shader/parameter/CjsParameter.js.map +1 -1
  708. package/dist/shader/parameter/CjsVectorParameter.js +20 -0
  709. package/dist/shader/parameter/CjsVectorParameter.js.map +1 -1
  710. package/dist/shader/parameter/Tr2FloatParameter.js +53 -0
  711. package/dist/shader/parameter/Tr2FloatParameter.js.map +1 -1
  712. package/dist/shader/parameter/Tr2GeometryBufferParameter.js +39 -0
  713. package/dist/shader/parameter/Tr2GeometryBufferParameter.js.map +1 -1
  714. package/dist/shader/parameter/Tr2Matrix4Parameter.js +54 -0
  715. package/dist/shader/parameter/Tr2Matrix4Parameter.js.map +1 -1
  716. package/dist/shader/parameter/Tr2RuntimeTextureParameter.js +54 -0
  717. package/dist/shader/parameter/Tr2RuntimeTextureParameter.js.map +1 -1
  718. package/dist/shader/parameter/Tr2TextureAnimationParameter.js +35 -0
  719. package/dist/shader/parameter/Tr2TextureAnimationParameter.js.map +1 -1
  720. package/dist/shader/parameter/Tr2Vector2Parameter.js +86 -0
  721. package/dist/shader/parameter/Tr2Vector2Parameter.js.map +1 -1
  722. package/dist/shader/parameter/Tr2Vector3Parameter.js +95 -0
  723. package/dist/shader/parameter/Tr2Vector3Parameter.js.map +1 -1
  724. package/dist/shader/parameter/Tr2Vector4Parameter.js +105 -0
  725. package/dist/shader/parameter/Tr2Vector4Parameter.js.map +1 -1
  726. package/dist/shader/parameter/TriFloatArrayParameter.js +26 -0
  727. package/dist/shader/parameter/TriFloatArrayParameter.js.map +1 -1
  728. package/dist/shader/parameter/TriTextureParameter.js +84 -0
  729. package/dist/shader/parameter/TriTextureParameter.js.map +1 -1
  730. package/dist/shader/parameter/TriTransformParameter.js +2 -0
  731. package/dist/shader/parameter/TriTransformParameter.js.map +1 -1
  732. package/dist/shader/parameter/TriVariableParameter.js +38 -0
  733. package/dist/shader/parameter/TriVariableParameter.js.map +1 -1
  734. package/dist/shader/parameter/TriVector4.js +2 -0
  735. package/dist/shader/parameter/TriVector4.js.map +1 -1
  736. package/dist/shader/reflection/Tr2ShaderOption.js +6 -1
  737. package/dist/shader/reflection/Tr2ShaderOption.js.map +1 -1
  738. package/dist/shader/support/CjsVariableStore.js +140 -0
  739. package/dist/shader/support/CjsVariableStore.js.map +1 -1
  740. package/dist/shader/support/Tr2ShaderBuffer.js +15 -0
  741. package/dist/shader/support/Tr2ShaderBuffer.js.map +1 -1
  742. package/dist/trinityCore/CjsBatchManager.js +62 -2
  743. package/dist/trinityCore/CjsBatchManager.js.map +1 -1
  744. package/dist/trinityCore/GrannyBoneOffset.js +51 -0
  745. package/dist/trinityCore/GrannyBoneOffset.js.map +1 -1
  746. package/dist/trinityCore/ITriRenderBatchAccumulator.js +65 -3
  747. package/dist/trinityCore/ITriRenderBatchAccumulator.js.map +1 -1
  748. package/dist/trinityCore/Tr2DirectInstanceData.js +19 -0
  749. package/dist/trinityCore/Tr2DirectInstanceData.js.map +1 -1
  750. package/dist/trinityCore/Tr2ExpressionTermInfo.js +21 -0
  751. package/dist/trinityCore/Tr2ExpressionTermInfo.js.map +1 -1
  752. package/dist/trinityCore/Tr2GpuBuffer.js +5 -0
  753. package/dist/trinityCore/Tr2GpuBuffer.js.map +1 -1
  754. package/dist/{generated/trinityCore → trinityCore}/Tr2GrannyAnimation.js +137 -8
  755. package/dist/trinityCore/Tr2GrannyAnimation.js.map +1 -0
  756. package/dist/trinityCore/Tr2InstancedMesh.js +52 -0
  757. package/dist/trinityCore/Tr2InstancedMesh.js.map +1 -1
  758. package/dist/trinityCore/Tr2MaterialParameterStore.js +5 -0
  759. package/dist/trinityCore/Tr2MaterialParameterStore.js.map +1 -1
  760. package/dist/trinityCore/Tr2Mesh.js +37 -0
  761. package/dist/trinityCore/Tr2Mesh.js.map +1 -1
  762. package/dist/trinityCore/Tr2MeshArea.js +78 -0
  763. package/dist/trinityCore/Tr2MeshArea.js.map +1 -1
  764. package/dist/trinityCore/Tr2MeshBase.js +98 -2
  765. package/dist/trinityCore/Tr2MeshBase.js.map +1 -1
  766. package/dist/trinityCore/Tr2PerObjectData.js +10 -0
  767. package/dist/trinityCore/Tr2PerObjectData.js.map +1 -1
  768. package/dist/trinityCore/Tr2PickType.js +33 -0
  769. package/dist/trinityCore/Tr2PickType.js.map +1 -0
  770. package/dist/trinityCore/Tr2RenderBatch.js +137 -0
  771. package/dist/trinityCore/Tr2RenderBatch.js.map +1 -1
  772. package/dist/trinityCore/Tr2RenderContext.js +271 -0
  773. package/dist/trinityCore/Tr2RenderContext.js.map +1 -1
  774. package/dist/trinityCore/Tr2RuntimeInstanceData.js +179 -0
  775. package/dist/trinityCore/Tr2RuntimeInstanceData.js.map +1 -1
  776. package/dist/trinityCore/Tr2ShLightingManager.js +397 -0
  777. package/dist/trinityCore/Tr2ShLightingManager.js.map +1 -0
  778. package/dist/trinityCore/Tr2VariableStore.js +26 -0
  779. package/dist/trinityCore/Tr2VariableStore.js.map +1 -1
  780. package/dist/trinityCore/Tr2VisibilityResults.js +5 -0
  781. package/dist/trinityCore/Tr2VisibilityResults.js.map +1 -1
  782. package/dist/trinityCore/TriDevice.js +5 -0
  783. package/dist/trinityCore/TriDevice.js.map +1 -1
  784. package/dist/trinityCore/TriFrustum.js +21 -14
  785. package/dist/trinityCore/TriFrustum.js.map +1 -1
  786. package/dist/trinityCore/TriObserverLocal.js +43 -0
  787. package/dist/trinityCore/TriObserverLocal.js.map +1 -1
  788. package/dist/trinityCore/TriProjection.js +86 -32
  789. package/dist/trinityCore/TriProjection.js.map +1 -1
  790. package/dist/trinityCore/TriRect.js +12 -0
  791. package/dist/trinityCore/TriRect.js.map +1 -1
  792. package/dist/trinityCore/TriRenderBatchAccumulator.js +46 -0
  793. package/dist/trinityCore/TriRenderBatchAccumulator.js.map +1 -1
  794. package/dist/trinityCore/TriRenderBatchMap.js +39 -2
  795. package/dist/trinityCore/TriRenderBatchMap.js.map +1 -1
  796. package/dist/trinityCore/TriSettings.js +38 -0
  797. package/dist/trinityCore/TriSettings.js.map +1 -1
  798. package/dist/trinityCore/TriVariable.js +30 -0
  799. package/dist/trinityCore/TriVariable.js.map +1 -1
  800. package/dist/trinityCore/TriView.js +16 -1
  801. package/dist/trinityCore/TriView.js.map +1 -1
  802. package/dist/trinityCore/TriViewport.js +12 -0
  803. package/dist/trinityCore/TriViewport.js.map +1 -1
  804. package/dist/trinityCore/{Tr2BindingVector3.js → binding/Tr2BindingVector3.js} +1 -1
  805. package/dist/trinityCore/binding/Tr2BindingVector3.js.map +1 -0
  806. package/dist/trinityCore/binding/Tr2DynamicBinding.js +266 -0
  807. package/dist/trinityCore/binding/Tr2DynamicBinding.js.map +1 -0
  808. package/dist/trinityCore/binding/Tr2ExternalParameter.js +392 -0
  809. package/dist/trinityCore/binding/Tr2ExternalParameter.js.map +1 -0
  810. package/dist/trinityCore/{Tr2PyValueBinding.js → binding/Tr2PyValueBinding.js} +30 -6
  811. package/dist/trinityCore/binding/Tr2PyValueBinding.js.map +1 -0
  812. package/dist/trinityCore/binding/TriValueBinding.js +648 -0
  813. package/dist/trinityCore/binding/TriValueBinding.js.map +1 -0
  814. package/dist/trinityCore/index.js +11 -4
  815. package/dist/trinityCore/index.js.map +1 -1
  816. package/dist/trinityCore/pickRay.js +84 -0
  817. package/dist/trinityCore/pickRay.js.map +1 -0
  818. package/dist/trinityCore/rawData/CjsPerObjectLayouts.js +931 -0
  819. package/dist/trinityCore/rawData/CjsPerObjectLayouts.js.map +1 -0
  820. package/dist/trinityCore/rawData/RawData.js +294 -38
  821. package/dist/trinityCore/rawData/RawData.js.map +1 -1
  822. package/dist/trinityCore/rawData/TriPoolAllocator.js +357 -0
  823. package/dist/trinityCore/rawData/TriPoolAllocator.js.map +1 -0
  824. package/dist/utilities/Range.js +53 -0
  825. package/dist/utilities/Range.js.map +1 -1
  826. package/docs/README.md +88 -0
  827. package/docs/architecture.md +162 -0
  828. package/docs/concepts/eve-runtime-behavior.md +86 -0
  829. package/docs/concepts/generated-class-lifecycle.md +116 -0
  830. package/docs/reference/api.md +76 -0
  831. package/docs/reference/classes/eve-runtime.md +106 -0
  832. package/docs/reference/classes/trinity-core.md +26 -0
  833. package/docs/reference/implementation-status.md +104 -0
  834. package/docs/reference/main-semantic-extraction.md +104 -0
  835. package/package.json +33 -24
  836. package/dist/eve/DecalVSPerObjectData.js +0 -34
  837. package/dist/eve/DecalVSPerObjectData.js.map +0 -1
  838. package/dist/eve/EveBannerItem.js +0 -43
  839. package/dist/eve/EveBannerItem.js.map +0 -1
  840. package/dist/eve/EveBannerLight.js.map +0 -1
  841. package/dist/eve/EveBannerSet.js +0 -190
  842. package/dist/eve/EveBannerSet.js.map +0 -1
  843. package/dist/eve/EveBasicPerObjectData.js +0 -31
  844. package/dist/eve/EveBasicPerObjectData.js.map +0 -1
  845. package/dist/eve/EveBoosterSet2.js.map +0 -1
  846. package/dist/eve/EveBoosterSet2Renderable.js.map +0 -1
  847. package/dist/eve/EveChildSpherePinPerObjectData.js +0 -37
  848. package/dist/eve/EveChildSpherePinPerObjectData.js.map +0 -1
  849. package/dist/eve/EveHazeSet.js.map +0 -1
  850. package/dist/eve/EveHazeSetLight.js.map +0 -1
  851. package/dist/eve/EveLocator2.js.map +0 -1
  852. package/dist/eve/EveLocatorSets.js.map +0 -1
  853. package/dist/eve/EveParticleDirectForce.js.map +0 -1
  854. package/dist/eve/EveParticleDragForce.js.map +0 -1
  855. package/dist/eve/EveParticleSpring.js.map +0 -1
  856. package/dist/eve/EvePerObjectPSData.js +0 -29
  857. package/dist/eve/EvePerObjectPSData.js.map +0 -1
  858. package/dist/eve/EvePerObjectVSData.js +0 -29
  859. package/dist/eve/EvePerObjectVSData.js.map +0 -1
  860. package/dist/eve/EvePlaneLight.js.map +0 -1
  861. package/dist/eve/EvePlaneSet.js.map +0 -1
  862. package/dist/eve/EvePlaneSetItem.js +0 -45
  863. package/dist/eve/EvePlaneSetItem.js.map +0 -1
  864. package/dist/eve/EveSpaceObjectAttachmentUtils.js.map +0 -1
  865. package/dist/eve/EveSpaceObjectDecal.js +0 -150
  866. package/dist/eve/EveSpaceObjectDecal.js.map +0 -1
  867. package/dist/eve/EveSpaceObjectPSData.js +0 -73
  868. package/dist/eve/EveSpaceObjectPSData.js.map +0 -1
  869. package/dist/eve/EveSpaceObjectVSData.js +0 -79
  870. package/dist/eve/EveSpaceObjectVSData.js.map +0 -1
  871. package/dist/eve/EveSpacePerObjectData.js +0 -97
  872. package/dist/eve/EveSpacePerObjectData.js.map +0 -1
  873. package/dist/eve/EveSpherePinPerObjectData.js +0 -37
  874. package/dist/eve/EveSpherePinPerObjectData.js.map +0 -1
  875. package/dist/eve/EveSpotlightLight.js.map +0 -1
  876. package/dist/eve/EveSpotlightSet.js.map +0 -1
  877. package/dist/eve/EveSpriteLight.js.map +0 -1
  878. package/dist/eve/EveSpriteLineSet.js.map +0 -1
  879. package/dist/eve/EveSpriteLineSetItem.js.map +0 -1
  880. package/dist/eve/EveSpriteSet.js.map +0 -1
  881. package/dist/eve/EveTrailsSet.js.map +0 -1
  882. package/dist/eve/Locator.js.map +0 -1
  883. package/dist/eve/LocatorData.js.map +0 -1
  884. package/dist/eve/ProcessLifetimeData.js.map +0 -1
  885. package/dist/eve/attachment/turrets/EveTurretSetPSData.js +0 -47
  886. package/dist/eve/attachment/turrets/EveTurretSetPSData.js.map +0 -1
  887. package/dist/eve/attachment/turrets/EveTurretSetVSData.js +0 -62
  888. package/dist/eve/attachment/turrets/EveTurretSetVSData.js.map +0 -1
  889. package/dist/eve/child/behaviors/SplineTunnel.js.map +0 -1
  890. package/dist/eve/child/behaviors/SplineTunnelPoint.js.map +0 -1
  891. package/dist/eve/perObjectData/DecalPSPerObjectData.js +0 -56
  892. package/dist/eve/perObjectData/DecalPSPerObjectData.js.map +0 -1
  893. package/dist/eve/perObjectData/EveMissileWarheadPerObjectData.js +0 -31
  894. package/dist/eve/perObjectData/EveMissileWarheadPerObjectData.js.map +0 -1
  895. package/dist/eve/perObjectData/EveTurretSetPerObjectData.js +0 -36
  896. package/dist/eve/perObjectData/EveTurretSetPerObjectData.js.map +0 -1
  897. package/dist/eve/perObjectData/MergeMorphsConstantBuffer.js +0 -64
  898. package/dist/eve/perObjectData/MergeMorphsConstantBuffer.js.map +0 -1
  899. package/dist/generated/eve/EveCamera.js +0 -264
  900. package/dist/generated/eve/EveCamera.js.map +0 -1
  901. package/dist/generated/eve/EveEntity.js +0 -81
  902. package/dist/generated/eve/EveEntity.js.map +0 -1
  903. package/dist/generated/eve/attachment/decal/index.js +0 -2
  904. package/dist/generated/eve/attachment/decal/index.js.map +0 -1
  905. package/dist/generated/eve/attachment/haze/EveHazeSetItem.js +0 -52
  906. package/dist/generated/eve/attachment/haze/EveHazeSetItem.js.map +0 -1
  907. package/dist/generated/eve/attachment/haze/index.js +0 -2
  908. package/dist/generated/eve/attachment/haze/index.js.map +0 -1
  909. package/dist/generated/eve/attachment/index.js +0 -5
  910. package/dist/generated/eve/attachment/index.js.map +0 -1
  911. package/dist/generated/eve/attachment/spotlights/EveSpotlightSetItem.js +0 -55
  912. package/dist/generated/eve/attachment/spotlights/EveSpotlightSetItem.js.map +0 -1
  913. package/dist/generated/eve/attachment/spotlights/index.js +0 -2
  914. package/dist/generated/eve/attachment/spotlights/index.js.map +0 -1
  915. package/dist/generated/eve/attachment/sprites/EveSpriteSetItem.js.map +0 -1
  916. package/dist/generated/eve/attachment/sprites/index.js +0 -2
  917. package/dist/generated/eve/attachment/sprites/index.js.map +0 -1
  918. package/dist/generated/eve/attachment/turrets/enums.js +0 -32
  919. package/dist/generated/eve/attachment/turrets/enums.js.map +0 -1
  920. package/dist/generated/eve/attachment/turrets/index.js +0 -2
  921. package/dist/generated/eve/attachment/turrets/index.js.map +0 -1
  922. package/dist/generated/eve/child/EveChildBehaviorSystem.js +0 -357
  923. package/dist/generated/eve/child/EveChildBehaviorSystem.js.map +0 -1
  924. package/dist/generated/eve/child/EveChildBulletStorm.js.map +0 -1
  925. package/dist/generated/eve/child/EveChildLink.js.map +0 -1
  926. package/dist/generated/eve/child/EveChildSpherePin.js +0 -54
  927. package/dist/generated/eve/child/EveChildSpherePin.js.map +0 -1
  928. package/dist/generated/eve/child/behaviors/CollisionAvoidance.js +0 -85
  929. package/dist/generated/eve/child/behaviors/CollisionAvoidance.js.map +0 -1
  930. package/dist/generated/eve/child/behaviors/InclusionVolume.js +0 -104
  931. package/dist/generated/eve/child/behaviors/InclusionVolume.js.map +0 -1
  932. package/dist/generated/eve/child/behaviors/ProcessLifetime.js +0 -458
  933. package/dist/generated/eve/child/behaviors/ProcessLifetime.js.map +0 -1
  934. package/dist/generated/eve/child/behaviors/SplineTunnelGroup.js +0 -161
  935. package/dist/generated/eve/child/behaviors/SplineTunnelGroup.js.map +0 -1
  936. package/dist/generated/eve/child/behaviors/Wander.js +0 -92
  937. package/dist/generated/eve/child/behaviors/Wander.js.map +0 -1
  938. package/dist/generated/eve/child/behaviors/enums.js.map +0 -1
  939. package/dist/generated/eve/child/modifiers/EveChildModifierAttachToBone.js.map +0 -1
  940. package/dist/generated/eve/child/modifiers/EveChildModifierBillboard3D.js.map +0 -1
  941. package/dist/generated/eve/child/modifiers/EveChildModifierStretch.js.map +0 -1
  942. package/dist/generated/eve/child/modifiers/EveChildModifierTranslateWithCamera.js.map +0 -1
  943. package/dist/generated/eve/child/modifiers/index.js +0 -5
  944. package/dist/generated/eve/child/modifiers/index.js.map +0 -1
  945. package/dist/generated/eve/child/procedural/EveChildProceduralContainer.js.map +0 -1
  946. package/dist/generated/eve/child/procedural/index.js +0 -10
  947. package/dist/generated/eve/child/procedural/index.js.map +0 -1
  948. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodAttributeMap.js.map +0 -1
  949. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodAttributeMapParameter.js.map +0 -1
  950. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodCycling.js.map +0 -1
  951. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodCyclingParameter.js.map +0 -1
  952. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodRandom.js.map +0 -1
  953. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodRandomParameter.js.map +0 -1
  954. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodThresholdParameter.js.map +0 -1
  955. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodThresholds.js.map +0 -1
  956. package/dist/generated/eve/child/procedural/selection/index.js +0 -9
  957. package/dist/generated/eve/child/procedural/selection/index.js.map +0 -1
  958. package/dist/generated/eve/distribution/EveBaseDistributionMethod.js.map +0 -1
  959. package/dist/generated/eve/distribution/attributeModifiers/EveDistributionModifierProcessLifetime.js.map +0 -1
  960. package/dist/generated/eve/distribution/attributeModifiers/EveDistributionModifierScaleBySpaceObjectParent.js.map +0 -1
  961. package/dist/generated/eve/distribution/attributeModifiers/EveDistributionModifierTransformOffset.js.map +0 -1
  962. package/dist/generated/eve/distribution/attributeModifiers/enums.js.map +0 -1
  963. package/dist/generated/eve/distribution/attributeModifiers/index.js +0 -5
  964. package/dist/generated/eve/distribution/attributeModifiers/index.js.map +0 -1
  965. package/dist/generated/eve/distribution/index.js +0 -19
  966. package/dist/generated/eve/distribution/index.js.map +0 -1
  967. package/dist/generated/eve/distribution/placement/EveDistributionPlacementGeneratorLocators.js.map +0 -1
  968. package/dist/generated/eve/distribution/placement/EveDistributionPlacementGeneratorParentLocators.js.map +0 -1
  969. package/dist/generated/eve/distribution/placement/EveDistributionPlacementGeneratorVolume.js.map +0 -1
  970. package/dist/generated/eve/distribution/placement/index.js +0 -4
  971. package/dist/generated/eve/distribution/placement/index.js.map +0 -1
  972. package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierLifeTimeOffset.js.map +0 -1
  973. package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomOffset.js.map +0 -1
  974. package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomRotation.js.map +0 -1
  975. package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomScale.js.map +0 -1
  976. package/dist/generated/eve/distribution/spawnModifiers/index.js +0 -5
  977. package/dist/generated/eve/distribution/spawnModifiers/index.js.map +0 -1
  978. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerBurst.js.map +0 -1
  979. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerControllerTrigger.js.map +0 -1
  980. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerInterval.js.map +0 -1
  981. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerTriggerPlane.js.map +0 -1
  982. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerTriggerSnake.js.map +0 -1
  983. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerTriggerSphere.js.map +0 -1
  984. package/dist/generated/eve/distribution/spawners/index.js +0 -7
  985. package/dist/generated/eve/distribution/spawners/index.js.map +0 -1
  986. package/dist/generated/eve/effect/EveLensflare.js.map +0 -1
  987. package/dist/generated/eve/effect/EveMultiEffect.js +0 -84
  988. package/dist/generated/eve/effect/EveMultiEffect.js.map +0 -1
  989. package/dist/generated/eve/effect/EveMultiEffectParameter.js +0 -45
  990. package/dist/generated/eve/effect/EveMultiEffectParameter.js.map +0 -1
  991. package/dist/generated/eve/fxAttributes/EveCameraFxAttributes.js +0 -47
  992. package/dist/generated/eve/fxAttributes/EveCameraFxAttributes.js.map +0 -1
  993. package/dist/generated/eve/fxAttributes/EveSpaceObjectFxAttributes.js +0 -63
  994. package/dist/generated/eve/fxAttributes/EveSpaceObjectFxAttributes.js.map +0 -1
  995. package/dist/generated/eve/fxAttributes/index.js +0 -3
  996. package/dist/generated/eve/fxAttributes/index.js.map +0 -1
  997. package/dist/generated/eve/overlays/EveMeshOverlayEffect.js +0 -58
  998. package/dist/generated/eve/overlays/EveMeshOverlayEffect.js.map +0 -1
  999. package/dist/generated/eve/overlays/index.js +0 -2
  1000. package/dist/generated/eve/overlays/index.js.map +0 -1
  1001. package/dist/generated/eve/perObjectData/EveBoosterSetPerObjectData.js +0 -66
  1002. package/dist/generated/eve/perObjectData/EveBoosterSetPerObjectData.js.map +0 -1
  1003. package/dist/generated/eve/perObjectData/EveChildBulletStormPerObjectData.js +0 -39
  1004. package/dist/generated/eve/perObjectData/EveChildBulletStormPerObjectData.js.map +0 -1
  1005. package/dist/generated/eve/perObjectData/EveDecalPerObjectData.js +0 -34
  1006. package/dist/generated/eve/perObjectData/EveDecalPerObjectData.js.map +0 -1
  1007. package/dist/generated/eve/perObjectData/EveSceneStaticParticlesPerObjectData.js +0 -32
  1008. package/dist/generated/eve/perObjectData/EveSceneStaticParticlesPerObjectData.js.map +0 -1
  1009. package/dist/generated/eve/perObjectData/index.js +0 -5
  1010. package/dist/generated/eve/perObjectData/index.js.map +0 -1
  1011. package/dist/generated/eve/scene/EveComponentCollection.js.map +0 -1
  1012. package/dist/generated/eve/scene/EveComponentRegistry.js.map +0 -1
  1013. package/dist/generated/eve/scene/EvePickingContext.js +0 -43
  1014. package/dist/generated/eve/scene/EvePickingContext.js.map +0 -1
  1015. package/dist/generated/eve/scene/EveSceneStaticParticles.js.map +0 -1
  1016. package/dist/generated/eve/scene/TriShadowFrustum.js +0 -83
  1017. package/dist/generated/eve/scene/TriShadowFrustum.js.map +0 -1
  1018. package/dist/generated/eve/scene/TriShadowOrthoFrustum.js +0 -140
  1019. package/dist/generated/eve/scene/TriShadowOrthoFrustum.js.map +0 -1
  1020. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierBucket.js.map +0 -1
  1021. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierCameraDependency.js.map +0 -1
  1022. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierColor.js.map +0 -1
  1023. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierControllerVariableListener.js.map +0 -1
  1024. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierExpressionBucket.js.map +0 -1
  1025. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierNoise.js.map +0 -1
  1026. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightBaseAttributeModifier.js.map +0 -1
  1027. package/dist/generated/eve/smartLights/attributeModifiers/enums.js.map +0 -1
  1028. package/dist/generated/eve/smartLights/attributeModifiers/index.js +0 -9
  1029. package/dist/generated/eve/smartLights/attributeModifiers/index.js.map +0 -1
  1030. package/dist/generated/eve/socket/EveSocketParameterBindingBase.js.map +0 -1
  1031. package/dist/generated/eve/socket/EveSocketParameterBool.js.map +0 -1
  1032. package/dist/generated/eve/socket/EveSocketParameterColor.js.map +0 -1
  1033. package/dist/generated/eve/socket/EveSocketParameterFloat.js.map +0 -1
  1034. package/dist/generated/eve/socket/EveSocketParameterInt.js.map +0 -1
  1035. package/dist/generated/eve/socket/EveSocketParameterString.js.map +0 -1
  1036. package/dist/generated/eve/socket/EveSocketParameterVector2.js.map +0 -1
  1037. package/dist/generated/eve/socket/EveSocketParameterVector3.js.map +0 -1
  1038. package/dist/generated/eve/socket/EveSocketParameterVector4.js.map +0 -1
  1039. package/dist/generated/eve/socket/index.js +0 -10
  1040. package/dist/generated/eve/socket/index.js.map +0 -1
  1041. package/dist/generated/eve/spaceObject/EvePlanet.js.map +0 -1
  1042. package/dist/generated/eve/spaceObject/EveShip2.js.map +0 -1
  1043. package/dist/generated/eve/spaceObject/IEveSpaceObject2.js +0 -46
  1044. package/dist/generated/eve/spaceObject/IEveSpaceObject2.js.map +0 -1
  1045. package/dist/generated/eve/spaceObject/swarm/EveSwarmRenderable.js.map +0 -1
  1046. package/dist/generated/eve/ui/EveLineSet.js.map +0 -1
  1047. package/dist/generated/eve/ui/EveSpherePin.js.map +0 -1
  1048. package/dist/generated/eve/ui/EveTacticalOverlayTrackObject.js +0 -44
  1049. package/dist/generated/eve/ui/EveTacticalOverlayTrackObject.js.map +0 -1
  1050. package/dist/generated/eve/ui/EveTacticalTrails.js.map +0 -1
  1051. package/dist/generated/trinityCore/Tr2DynamicBinding.js +0 -58
  1052. package/dist/generated/trinityCore/Tr2DynamicBinding.js.map +0 -1
  1053. package/dist/generated/trinityCore/Tr2ExternalParameter.js +0 -164
  1054. package/dist/generated/trinityCore/Tr2ExternalParameter.js.map +0 -1
  1055. package/dist/generated/trinityCore/Tr2GrannyAnimation.js.map +0 -1
  1056. package/dist/generated/trinityCore/Tr2ShLightingManager.js +0 -48
  1057. package/dist/generated/trinityCore/Tr2ShLightingManager.js.map +0 -1
  1058. package/dist/generated/trinityCore/TriValueBinding.js +0 -249
  1059. package/dist/generated/trinityCore/TriValueBinding.js.map +0 -1
  1060. package/dist/shader/Tr2Shader.js +0 -150
  1061. package/dist/shader/Tr2Shader.js.map +0 -1
  1062. package/dist/shader/reflection/Tr2EffectConstant.js +0 -61
  1063. package/dist/shader/reflection/Tr2EffectConstant.js.map +0 -1
  1064. package/dist/shader/reflection/Tr2EffectDefine.js +0 -34
  1065. package/dist/shader/reflection/Tr2EffectDefine.js.map +0 -1
  1066. package/dist/shader/reflection/Tr2EffectDescription.js +0 -34
  1067. package/dist/shader/reflection/Tr2EffectDescription.js.map +0 -1
  1068. package/dist/shader/reflection/Tr2EffectLibrary.js +0 -61
  1069. package/dist/shader/reflection/Tr2EffectLibrary.js.map +0 -1
  1070. package/dist/shader/reflection/Tr2EffectParameterAnnotation.js +0 -54
  1071. package/dist/shader/reflection/Tr2EffectParameterAnnotation.js.map +0 -1
  1072. package/dist/shader/reflection/Tr2EffectResource.js +0 -63
  1073. package/dist/shader/reflection/Tr2EffectResource.js.map +0 -1
  1074. package/dist/shader/reflection/Tr2EffectStageInput.js +0 -58
  1075. package/dist/shader/reflection/Tr2EffectStageInput.js.map +0 -1
  1076. package/dist/shader/reflection/Tr2EffectTechnique.js +0 -40
  1077. package/dist/shader/reflection/Tr2EffectTechnique.js.map +0 -1
  1078. package/dist/shader/reflection/Tr2Pass.js +0 -46
  1079. package/dist/shader/reflection/Tr2Pass.js.map +0 -1
  1080. package/dist/shader/sampler/Tr2SamplerSetup.js +0 -34
  1081. package/dist/shader/sampler/Tr2SamplerSetup.js.map +0 -1
  1082. package/dist/trinityCore/Tr2BindingVector3.js.map +0 -1
  1083. package/dist/trinityCore/Tr2PyValueBinding.js.map +0 -1
  1084. package/dist/trinityCore/rawData/RawDataStore.js +0 -232
  1085. package/dist/trinityCore/rawData/RawDataStore.js.map +0 -1
  1086. /package/dist/{generated/eve → eve}/distribution/attributeModifiers/enums.js +0 -0
  1087. /package/dist/{generated/eve → eve}/smartLights/attributeModifiers/enums.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"TriTextureParameter.js","sources":["../../../../src/shader/parameter/TriTextureParameter.js"],"sourcesContent":["// Source: E:\\carbonengine\\trinity\\trinity\\Shader\\Parameter\\TriTextureParameter.h\r\n// Source: E:\\carbonengine\\trinity\\trinity\\Shader\\Parameter\\TriTextureParameter.cpp\r\nimport { carbon, impl, io, type } from \"@carbonenginejs/runtime-utils/schema\";\r\nimport { CjsModel } from \"@carbonenginejs/runtime-utils/model\";\r\nimport { CjsParameter } from \"./CjsParameter.js\";\r\n\r\n\r\n@type.define({\r\n className: \"TriTextureParameter\",\r\n family: \"shader\"\r\n})\r\nexport class TriTextureParameter extends CjsParameter\r\n{\r\n @io.flag(\"resource\")\r\n @io.notify\r\n @io.persist\r\n @type.path\r\n resourcePath = \"\";\r\n\r\n @io.persist\r\n @type.uint32\r\n uavMipLevel = 0;\r\n\r\n @io.read\r\n @type.float32\r\n positionScale = 0;\r\n\r\n @io.read\r\n @type.objectRef(\"ITr2TextureProvider\")\r\n resource = null;\r\n\r\n @io.read\r\n @type.boolean\r\n usedByCurrentTechnique = false;\r\n\r\n @io.read\r\n @type.boolean\r\n usedByCurrentEffect = false;\r\n\r\n @io.flag(\"effectHandles\")\r\n @io.notify\r\n @io.persist\r\n @type.string\r\n name = \"\";\r\n\r\n @io.read\r\n @type.float32\r\n uvDensityScale0 = 0;\r\n\r\n @io.read\r\n @type.float32\r\n uvDensityScale1 = 0;\r\n\r\n @io.read\r\n @type.float32\r\n uvDensityScale2 = 0;\r\n\r\n @io.read\r\n @type.float32\r\n uvDensityScale3 = 0;\r\n\r\n #cachedEffect = null;\r\n\r\n #lowResResource = null;\r\n\r\n #materials = [];\r\n\r\n #textureLodEnabled = false;\r\n\r\n @carbon.method\r\n @impl.implemented\r\n GetParameterName()\r\n {\r\n return this.name;\r\n }\r\n\r\n /** Content hash: resource path (when set) then name. */\r\n @carbon.method\r\n @impl.adapted\r\n GetHashValue(startingHash = CjsParameter.FNV1_INITIAL)\r\n {\r\n if (this.resourcePath)\r\n {\r\n startingHash = CjsParameter.hashFnv1String(this.resourcePath, startingHash);\r\n }\r\n return CjsParameter.hashFnv1String(this.name, startingHash);\r\n }\r\n @carbon.method\r\n @impl.adapted\r\n SetParameterName(name)\r\n {\r\n return this.SetValues({ name: String(name) }, { source: this, returnBoolean: true });\r\n }\r\n @carbon.method\r\n @impl.adapted\r\n GetResourcePath()\r\n {\r\n const resource = this.GetResource();\r\n return resource?.GetPath?.() ?? resource?.path ?? resource?.resourcePath ?? this.resourcePath;\r\n }\r\n @carbon.method\r\n @impl.adapted\r\n SetResourcePath(resourcePath)\r\n {\r\n this.SetValues({ resourcePath: String(resourcePath) }, { source: this });\r\n }\r\n @carbon.method\r\n @impl.adapted\r\n SetResource(resource)\r\n {\r\n if (this.resource !== resource)\r\n {\r\n this.resource = resource;\r\n }\r\n this.#lowResResource = null;\r\n this.RebuildEffectHandles(this.#cachedEffect);\r\n this.OnTextureChanged();\r\n }\r\n @carbon.method\r\n @impl.adapted\r\n GetResource()\r\n {\r\n return this.#lowResResource ?? this.resource;\r\n }\r\n @carbon.method\r\n @impl.implemented\r\n SupportsDirtyNotification()\r\n {\r\n return true;\r\n }\r\n @carbon.method\r\n @impl.adapted\r\n EnableTextureLoding(uvDensityScale)\r\n {\r\n this.#textureLodEnabled = true;\r\n this.positionScale = Number(uvDensityScale[0] ?? 0);\r\n this.uvDensityScale0 = Number(uvDensityScale[1] ?? 0);\r\n this.uvDensityScale1 = Number(uvDensityScale[2] ?? 0);\r\n this.uvDensityScale2 = Number(uvDensityScale[3] ?? 0);\r\n this.uvDensityScale3 = Number(uvDensityScale[4] ?? 0);\r\n }\r\n @carbon.method\r\n @impl.implemented\r\n DisableTextureLoding()\r\n {\r\n this.#textureLodEnabled = false;\r\n }\r\n @carbon.method\r\n @impl.adapted\r\n UsedWithScreenSize(screenSize, worldRadius, uvDensities = [])\r\n {\r\n if (!this.#textureLodEnabled)\r\n {\r\n this.#requestResourceResolution(0);\r\n return 0;\r\n }\r\n let resolution = 0;\r\n const positionDensity = worldRadius * Number(this.positionScale ?? 0);\r\n if (positionDensity > 0)\r\n {\r\n resolution = Math.max(resolution, screenSize / positionDensity);\r\n }\r\n const scales = [Number(this.uvDensityScale0 ?? 0), Number(this.uvDensityScale1 ?? 0), Number(this.uvDensityScale2 ?? 0), Number(this.uvDensityScale3 ?? 0)];\r\n for (let i = 0; i < Math.min(uvDensities.length, scales.length); i++)\r\n {\r\n const density = Number(uvDensities[i]) * scales[i];\r\n if (density > 0)\r\n {\r\n resolution = Math.max(resolution, screenSize / density);\r\n }\r\n }\r\n let requestedLod = 0;\r\n const resource = this.GetResource();\r\n const original = resource?.GetOriginalResolutionAsFloat?.() ?? 0;\r\n if (resolution > 0 && original > 0)\r\n {\r\n const requestedResolution = Math.max(1, resolution);\r\n const resolutionChange = Math.floor(original / requestedResolution);\r\n if (resolutionChange > 0)\r\n {\r\n requestedLod = Math.floor(Math.log2(resolutionChange));\r\n }\r\n }\r\n this.#requestResourceResolution(requestedLod);\r\n return requestedLod;\r\n }\r\n @carbon.method\r\n @impl.adapted\r\n OnModified(_options = {})\r\n {\r\n const flags = this.__state.flags;\r\n if (flags.delete(\"resource\"))\r\n {\r\n this.resource = null;\r\n this.#lowResResource = null;\r\n this.Initialize();\r\n }\r\n if (flags.delete(\"effectHandles\"))\r\n {\r\n this.RebuildEffectHandles(this.#cachedEffect);\r\n }\r\n return true;\r\n }\r\n @carbon.method\r\n @impl.adapted\r\n Initialize()\r\n {\r\n return true;\r\n }\r\n @carbon.method\r\n @impl.adapted\r\n RebuildEffectHandles(effectRes)\r\n {\r\n this.#cachedEffect = effectRes;\r\n const used = !!this.name && (CjsParameter.hasEffectResource(effectRes, this.name) || CjsParameter.hasEffectConstant(effectRes, this.name));\r\n this.usedByCurrentEffect = used;\r\n this.usedByCurrentTechnique = used;\r\n }\r\n @carbon.method\r\n @impl.implemented\r\n OnAddedToMaterial(material)\r\n {\r\n if (!this.#materials.includes(material))\r\n {\r\n this.#materials.push(material);\r\n }\r\n }\r\n @carbon.method\r\n @impl.implemented\r\n OnRemovedFromMaterial(material)\r\n {\r\n const index = this.#materials.indexOf(material);\r\n if (index >= 0)\r\n {\r\n this.#materials.splice(index, 1);\r\n }\r\n }\r\n @carbon.method\r\n @impl.adapted\r\n OnTextureChanged()\r\n {\r\n for (const material of this.#materials)\r\n {\r\n const target = material;\r\n target?.ResourceChanged?.();\r\n target?.MarkConstantBuffersDirty?.();\r\n }\r\n }\r\n #requestResourceResolution(lod)\r\n {\r\n const target = this.GetResource();\r\n target?.RequestResolution?.(lod);\r\n }\r\n\r\n /** JS convenience: raw values this parameter class claims for map-form inference. */\r\n static isValue(value)\r\n {\r\n return typeof value === \"string\";\r\n }\r\n\r\n}\r\n"],"names":["_TriTextureParameter","TriTextureParameter","CjsParameter","e","_init_resourcePath","_init_extra_resourcePath","_init_uavMipLevel","_init_extra_uavMipLevel","_init_positionScale","_init_extra_positionScale","_init_resource","_init_extra_resource","_init_usedByCurrentTechnique","_init_extra_usedByCurrentTechnique","_init_usedByCurrentEffect","_init_extra_usedByCurrentEffect","_init_name","_init_extra_name","_init_uvDensityScale","_init_extra_uvDensityScale","_init_uvDensityScale2","_init_extra_uvDensityScale2","_init_uvDensityScale3","_init_extra_uvDensityScale3","_init_uvDensityScale4","_init_extra_uvDensityScale4","_initProto","c","_initClass","_applyDecs","type","define","className","family","io","flag","notify","persist","path","uint32","read","float32","objectRef","boolean","string","carbon","method","impl","implemented","adapted","resourcePath","uavMipLevel","positionScale","resource","usedByCurrentTechnique","usedByCurrentEffect","name","uvDensityScale0","uvDensityScale1","uvDensityScale2","uvDensityScale3","GetParameterName","GetHashValue","startingHash","FNV1_INITIAL","hashFnv1String","SetParameterName","SetValues","String","source","returnBoolean","GetResourcePath","GetResource","GetPath","SetResourcePath","SetResource","RebuildEffectHandles","OnTextureChanged","SupportsDirtyNotification","EnableTextureLoding","uvDensityScale","Number","DisableTextureLoding","UsedWithScreenSize","screenSize","worldRadius","uvDensities","resolution","positionDensity","Math","max","scales","i","min","length","density","requestedLod","original","GetOriginalResolutionAsFloat","requestedResolution","resolutionChange","floor","log2","OnModified","_options","flags","__state","delete","Initialize","effectRes","used","hasEffectResource","hasEffectConstant","OnAddedToMaterial","material","includes","push","OnRemovedFromMaterial","index","indexOf","splice","target","ResourceChanged","MarkConstantBuffersDirty","#requestResourceResolution","lod","RequestResolution","isValue","value"],"mappings":"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"}
1
+ {"version":3,"file":"TriTextureParameter.js","sources":["../../../../src/shader/parameter/TriTextureParameter.js"],"sourcesContent":["// Source: E:\\carbonengine\\trinity\\trinity\\Shader\\Parameter\\TriTextureParameter.h\r\n// Source: E:\\carbonengine\\trinity\\trinity\\Shader\\Parameter\\TriTextureParameter.cpp\r\nimport { carbon, impl, io, type } from \"@carbonenginejs/runtime-utils/schema\";\r\nimport { CjsModel } from \"@carbonenginejs/runtime-utils/model\";\r\nimport { CjsParameter } from \"./CjsParameter.js\";\r\n\r\n\r\n/**\r\n * A named texture slot on an effect, owning the authored res path, the resolved\r\n * texture provider and the UV-density scales that drive mip selection.\r\n */\r\n@type.define({\r\n className: \"TriTextureParameter\",\r\n family: \"shader\"\r\n})\r\nexport class TriTextureParameter extends CjsParameter\r\n{\r\n @io.flag(\"resource\")\r\n @io.notify\r\n @io.persist\r\n @type.path\r\n resourcePath = \"\";\r\n\r\n @io.persist\r\n @type.uint32\r\n uavMipLevel = 0;\r\n\r\n @io.read\r\n @type.float32\r\n positionScale = 0;\r\n\r\n @io.read\r\n @type.objectRef(\"ITr2TextureProvider\")\r\n resource = null;\r\n\r\n @io.read\r\n @type.boolean\r\n usedByCurrentTechnique = false;\r\n\r\n @io.read\r\n @type.boolean\r\n usedByCurrentEffect = false;\r\n\r\n @io.flag(\"effectHandles\")\r\n @io.notify\r\n @io.persist\r\n @type.string\r\n name = \"\";\r\n\r\n @io.read\r\n @type.float32\r\n uvDensityScale0 = 0;\r\n\r\n @io.read\r\n @type.float32\r\n uvDensityScale1 = 0;\r\n\r\n @io.read\r\n @type.float32\r\n uvDensityScale2 = 0;\r\n\r\n @io.read\r\n @type.float32\r\n uvDensityScale3 = 0;\r\n\r\n #cachedEffect = null;\r\n\r\n #lowResResource = null;\r\n\r\n #materials = [];\r\n\r\n #textureLodEnabled = false;\r\n\r\n /** The shader resource name this texture binds to. */\r\n @carbon.method\r\n @impl.implemented\r\n GetParameterName()\r\n {\r\n return this.name;\r\n }\r\n\r\n /** Content hash: resource path (when set) then name. */\r\n @carbon.method\r\n @impl.adapted\r\n GetHashValue(startingHash = CjsParameter.FNV1_INITIAL)\r\n {\r\n if (this.resourcePath)\r\n {\r\n startingHash = CjsParameter.hashFnv1String(this.resourcePath, startingHash);\r\n }\r\n return CjsParameter.hashFnv1String(this.name, startingHash);\r\n }\r\n\r\n /**\r\n * Sets the name through SetValues so the effectHandles rebuild flag fires;\r\n * returns whether it changed.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n SetParameterName(name)\r\n {\r\n return this.SetValues({ name: String(name) }, { source: this, returnBoolean: true });\r\n }\r\n\r\n /**\r\n * The path of the currently attached texture when it exposes one, falling back\r\n * to the authored resourcePath - so after a redirect this can differ from what\r\n * was authored.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n GetResourcePath()\r\n {\r\n const resource = this.GetResource();\r\n return resource?.GetPath?.() ?? resource?.path ?? resource?.resourcePath ?? this.resourcePath;\r\n }\r\n\r\n /**\r\n * Sets the authored path and raises the resource flag, so the next OnModified\r\n * drops the attached texture and asks for it again.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n SetResourcePath(resourcePath)\r\n {\r\n this.SetValues({ resourcePath: String(resourcePath) }, { source: this });\r\n }\r\n\r\n /**\r\n * Attaches a resolved texture provider, discards any low-res stand-in,\r\n * re-resolves effect handles against the cached shader and notifies owning\r\n * materials.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n SetResource(resource)\r\n {\r\n if (this.resource !== resource)\r\n {\r\n this.resource = resource;\r\n }\r\n this.#lowResResource = null;\r\n this.RebuildEffectHandles(this.#cachedEffect);\r\n this.OnTextureChanged();\r\n }\r\n\r\n /**\r\n * The texture actually in use: the low-res stand-in while one is active,\r\n * otherwise the resolved resource.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n GetResource()\r\n {\r\n return this.#lowResResource ?? this.resource;\r\n }\r\n\r\n /** Always true - a texture swap must dirty the owning materials' resource sets. */\r\n @carbon.method\r\n @impl.implemented\r\n SupportsDirtyNotification()\r\n {\r\n return true;\r\n }\r\n\r\n /**\r\n * Turns on screen-size-driven mip selection and stores the density scales; Carbon's spelling of the method name is kept.\r\n * @param uvDensityScale five scales: the world-position scale first, then the four UV-set scales\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n EnableTextureLoding(uvDensityScale)\r\n {\r\n this.#textureLodEnabled = true;\r\n this.positionScale = Number(uvDensityScale[0] ?? 0);\r\n this.uvDensityScale0 = Number(uvDensityScale[1] ?? 0);\r\n this.uvDensityScale1 = Number(uvDensityScale[2] ?? 0);\r\n this.uvDensityScale2 = Number(uvDensityScale[3] ?? 0);\r\n this.uvDensityScale3 = Number(uvDensityScale[4] ?? 0);\r\n }\r\n\r\n /** Turns mip selection off, so UsedWithScreenSize then always requests LOD 0. */\r\n @carbon.method\r\n @impl.implemented\r\n DisableTextureLoding()\r\n {\r\n this.#textureLodEnabled = false;\r\n }\r\n\r\n /**\r\n * Carbon TriTextureParameter::UsedWithScreenSize (cpp:53-97): takes the largest resolution demanded by the world-position and per-UV-set densities, compares it against the texture's native resolution, and asks the resource for the resulting mip level.\r\n * @returns {number} the requested LOD, 0 when LOD is disabled or no density applies\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n UsedWithScreenSize(screenSize, worldRadius, uvDensities = [])\r\n {\r\n if (!this.#textureLodEnabled)\r\n {\r\n this.#requestResourceResolution(0);\r\n return 0;\r\n }\r\n let resolution = 0;\r\n const positionDensity = worldRadius * Number(this.positionScale ?? 0);\r\n if (positionDensity > 0)\r\n {\r\n resolution = Math.max(resolution, screenSize / positionDensity);\r\n }\r\n const scales = [Number(this.uvDensityScale0 ?? 0), Number(this.uvDensityScale1 ?? 0), Number(this.uvDensityScale2 ?? 0), Number(this.uvDensityScale3 ?? 0)];\r\n for (let i = 0; i < Math.min(uvDensities.length, scales.length); i++)\r\n {\r\n const density = Number(uvDensities[i]) * scales[i];\r\n if (density > 0)\r\n {\r\n resolution = Math.max(resolution, screenSize / density);\r\n }\r\n }\r\n let requestedLod = 0;\r\n const resource = this.GetResource();\r\n const original = resource?.GetOriginalResolutionAsFloat?.() ?? 0;\r\n if (resolution > 0 && original > 0)\r\n {\r\n const requestedResolution = Math.max(1, resolution);\r\n const resolutionChange = Math.floor(original / requestedResolution);\r\n if (resolutionChange > 0)\r\n {\r\n requestedLod = Math.floor(Math.log2(resolutionChange));\r\n }\r\n }\r\n this.#requestResourceResolution(requestedLod);\r\n return requestedLod;\r\n }\r\n\r\n /**\r\n * Consumes the two dirty flags: `resource` drops the attached texture and\r\n * re-initializes, `effectHandles` re-resolves against the cached shader.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n OnModified(_options = {})\r\n {\r\n const flags = this.__state.flags;\r\n if (flags.delete(\"resource\"))\r\n {\r\n this.resource = null;\r\n this.#lowResResource = null;\r\n this.Initialize();\r\n }\r\n if (flags.delete(\"effectHandles\"))\r\n {\r\n this.RebuildEffectHandles(this.#cachedEffect);\r\n }\r\n return true;\r\n }\r\n\r\n /**\r\n * Nothing to do in this GPU-free package - res paths are never resolved to\r\n * texture bytes here; returns true so callers can treat initialization as\r\n * successful.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n Initialize()\r\n {\r\n return true;\r\n }\r\n\r\n /**\r\n * Caches the shader and records whether it exposes a resource or constant of\r\n * this name; no GPU binding is created.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n RebuildEffectHandles(effectRes)\r\n {\r\n this.#cachedEffect = effectRes;\r\n const used = !!this.name && (CjsParameter.hasEffectResource(effectRes, this.name) || CjsParameter.hasEffectConstant(effectRes, this.name));\r\n this.usedByCurrentEffect = used;\r\n this.usedByCurrentTechnique = used;\r\n }\r\n\r\n /**\r\n * Registers a material to be notified when the texture changes; duplicates are\r\n * ignored.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n OnAddedToMaterial(material)\r\n {\r\n if (!this.#materials.includes(material))\r\n {\r\n this.#materials.push(material);\r\n }\r\n }\r\n\r\n /**\r\n * Stops notifying a material; the material reference is dropped, not the\r\n * texture.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n OnRemovedFromMaterial(material)\r\n {\r\n const index = this.#materials.indexOf(material);\r\n if (index >= 0)\r\n {\r\n this.#materials.splice(index, 1);\r\n }\r\n }\r\n\r\n /**\r\n * Tells every owning material that its resource sets and constant buffers are\r\n * stale.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n OnTextureChanged()\r\n {\r\n for (const material of this.#materials)\r\n {\r\n const target = material;\r\n target?.ResourceChanged?.();\r\n target?.MarkConstantBuffersDirty?.();\r\n }\r\n }\r\n\r\n /**\r\n * Asks the texture currently in use for a mip level, if it supports resolution\r\n * requests.\r\n */\r\n #requestResourceResolution(lod)\r\n {\r\n const target = this.GetResource();\r\n target?.RequestResolution?.(lod);\r\n }\r\n\r\n /** JS convenience: raw values this parameter class claims for map-form inference. */\r\n static isValue(value)\r\n {\r\n return typeof value === \"string\";\r\n }\r\n\r\n}\r\n"],"names":["_TriTextureParameter","TriTextureParameter","CjsParameter","e","_init_resourcePath","_init_extra_resourcePath","_init_uavMipLevel","_init_extra_uavMipLevel","_init_positionScale","_init_extra_positionScale","_init_resource","_init_extra_resource","_init_usedByCurrentTechnique","_init_extra_usedByCurrentTechnique","_init_usedByCurrentEffect","_init_extra_usedByCurrentEffect","_init_name","_init_extra_name","_init_uvDensityScale","_init_extra_uvDensityScale","_init_uvDensityScale2","_init_extra_uvDensityScale2","_init_uvDensityScale3","_init_extra_uvDensityScale3","_init_uvDensityScale4","_init_extra_uvDensityScale4","_initProto","c","_initClass","_applyDecs","type","define","className","family","io","flag","notify","persist","path","uint32","read","float32","objectRef","boolean","string","carbon","method","impl","implemented","adapted","resourcePath","uavMipLevel","positionScale","resource","usedByCurrentTechnique","usedByCurrentEffect","name","uvDensityScale0","uvDensityScale1","uvDensityScale2","uvDensityScale3","GetParameterName","GetHashValue","startingHash","FNV1_INITIAL","hashFnv1String","SetParameterName","SetValues","String","source","returnBoolean","GetResourcePath","GetResource","GetPath","SetResourcePath","SetResource","RebuildEffectHandles","OnTextureChanged","SupportsDirtyNotification","EnableTextureLoding","uvDensityScale","Number","DisableTextureLoding","UsedWithScreenSize","screenSize","worldRadius","uvDensities","resolution","positionDensity","Math","max","scales","i","min","length","density","requestedLod","original","GetOriginalResolutionAsFloat","requestedResolution","resolutionChange","floor","log2","OnModified","_options","flags","__state","delete","Initialize","effectRes","used","hasEffectResource","hasEffectConstant","OnAddedToMaterial","material","includes","push","OnRemovedFromMaterial","index","indexOf","splice","target","ResourceChanged","MarkConstantBuffersDirty","#requestResourceResolution","lod","RequestResolution","isValue","value"],"mappings":"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"}
@@ -45,6 +45,8 @@ new class extends _identity {
45
45
 
46
46
  /** m_worldTransform (Matrix) [READWRITE, PERSIST] */
47
47
  worldTransform = (_init_extra_translation(this), _init_worldTransform(this, mat4.create()));
48
+
49
+ /** The shader constant name the composed transform matrix is uploaded to. */
48
50
  GetParameterName() {
49
51
  return this.name;
50
52
  }
@@ -1 +1 @@
1
- {"version":3,"file":"TriTransformParameter.js","sources":["../../../../src/shader/parameter/TriTransformParameter.js"],"sourcesContent":["// Ported from CarbonEngine (MIT, (c) 2026 CCP Games) - https://github.com/carbonengine/trinity\r\n// trinity/trinity/Shader/Parameter/TriTransformParameter.h\r\n// Generated by format-carbon carbon-class --emit. Verify against shader/TriTransformParameter.json.\r\nimport { carbon, impl, io, schema, type } from \"@carbonenginejs/runtime-utils/schema\";\r\nimport { mat4 } from \"@carbonenginejs/runtime-utils/mat4\";\r\nimport { quat } from \"@carbonenginejs/runtime-utils/quat\";\r\nimport { vec3 } from \"@carbonenginejs/runtime-utils/vec3\";\r\nimport { CjsParameter } from \"./CjsParameter.js\";\r\nimport { TriTransformBase } from \"@carbonenginejs/runtime-utils/graphics\";\r\n\r\n/** TriTransformParameter (shader) - generated from schema shapeHash de073c4a.... */\r\n@type.define({ className: \"TriTransformParameter\", family: \"shader\" })\r\nexport class TriTransformParameter extends CjsParameter\r\n{\r\n\r\n /** m_transformBase (TRITRANSFORMBASE - enum TRITRANSFORMBASE) [READWRITE, PERSIST, ENUM] */\r\n @io.persist\r\n @type.int32\r\n @schema.enum(\"TRITRANSFORMBASE\")\r\n transformBase = 0;\r\n\r\n /** m_rotationCenter (Vector3) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.vec3\r\n rotationCenter = vec3.create();\r\n\r\n /** m_name (BlueSharedString) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.string\r\n name = \"\";\r\n\r\n /** m_rotation (Quaternion) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.quat\r\n rotation = quat.create();\r\n\r\n /** m_scaling (Vector3) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.vec3\r\n scaling = vec3.fromValues(1, 1, 1);\r\n\r\n /** m_translation (Vector3) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.vec3\r\n translation = vec3.create();\r\n\r\n /** m_worldTransform (Matrix) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.mat4\r\n worldTransform = mat4.create();\r\n\r\n @carbon.method\r\n @impl.implemented\r\n GetParameterName()\r\n {\r\n return this.name;\r\n }\r\n\r\n /**\r\n * Content hash: transform base + translation/scaling/rotation bytes, then\r\n * name (Carbon hashes the contiguous transform-state struct region).\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n GetHashValue(startingHash = CjsParameter.FNV1_INITIAL)\r\n {\r\n startingHash = CjsParameter.hashFnv1Floats([this.transformBase], startingHash);\r\n startingHash = CjsParameter.hashFnv1Floats(this.translation, startingHash);\r\n startingHash = CjsParameter.hashFnv1Floats(this.scaling, startingHash);\r\n startingHash = CjsParameter.hashFnv1Floats(this.rotation, startingHash);\r\n return CjsParameter.hashFnv1String(this.name, startingHash);\r\n }\r\n\r\n /** Carbon TriTransformParameter::CopyValueToEffect\r\n * (TriTransformParameter.cpp:30-66) builds the 6-arg TransformationMatrix\r\n * (math Matrix.cpp:66-143, scalingCenter NULL): row-vector\r\n * S * T(-rotationCenter) * R * T(rotationCenter + translation) - the scale\r\n * is about the TRUE ORIGIN while only the rotation pivots on\r\n * m_rotationCenter (translation bytes: t + rc - R*rc, rc UNSCALED). NOT\r\n * gl-matrix's fromRotationTranslationScaleOrigin, which scales about the\r\n * origin point too (t + o - R*(S*o)) - the two differ whenever\r\n * scaling != 1 and rotationCenter != 0. gl column order:\r\n * T(rc + t) * R * T(-rc) * S. NOTE: Carbon's TRITB_OBJECT branch\r\n * (cpp:48-66) additionally multiplies in the object world matrix - an\r\n * unported composition (the JS treats every non-FIXED base as the zeroed\r\n * inverse view only); when ported it must swap per the convention. */\r\n @carbon.method\r\n @impl.adapted\r\n CopyValueToEffect(_inputType, dest, size = 64, context = null)\r\n {\r\n const transform = mat4.create();\r\n const rotationCenter = this.rotationCenter;\r\n // gl column build of T(rc + t) * R * T(-rc) * S, right-to-left:\r\n mat4.fromQuat(transform, this.rotation);\r\n mat4.translate(transform, transform, [-rotationCenter[0], -rotationCenter[1], -rotationCenter[2]]);\r\n mat4.scale(transform, transform, this.scaling);\r\n transform[12] += rotationCenter[0] + this.translation[0];\r\n transform[13] += rotationCenter[1] + this.translation[1];\r\n transform[14] += rotationCenter[2] + this.translation[2];\r\n const base = context?.inverseViewTransform ?? context?.GetInverseViewTransform?.() ?? null;\r\n if (base && this.transformBase !== 0)\r\n {\r\n const baseTransform = mat4.clone(base);\r\n baseTransform[12] = 0;\r\n baseTransform[13] = 0;\r\n baseTransform[14] = 0;\r\n // Carbon (row-vector): texTransform *= original - the base transform\r\n // applies first, the authored SRT last.\r\n mat4.multiply(transform, transform, baseTransform);\r\n }\r\n const out = mat4.create();\r\n mat4.transpose(out, transform);\r\n const count = Math.min(16, Math.floor(Number(size) / 4) || 16, dest?.length ?? 16);\r\n for (let i = 0; i < count; i++)\r\n {\r\n dest[i] = out[i];\r\n }\r\n }\r\n\r\n static TRITRANSFORMBASE = TriTransformBase;\r\n\r\n}\r\n"],"names":["_TriTransformParamete","_identity","TriTransformParameter","CjsParameter","e","_init_transformBase","_init_extra_transformBase","_init_rotationCenter","_init_extra_rotationCenter","_init_name","_init_extra_name","_init_rotation","_init_extra_rotation","_init_scaling","_init_extra_scaling","_init_translation","_init_extra_translation","_init_worldTransform","_init_extra_worldTransform","_initProto","c","_initClass","_applyDecs","type","define","className","family","io","persist","int32","schema","enum","vec3","string","quat","mat4","carbon","method","impl","implemented","adapted","constructor","args","transformBase","rotationCenter","create","name","rotation","scaling","fromValues","translation","worldTransform","GetParameterName","GetHashValue","startingHash","FNV1_INITIAL","hashFnv1Floats","hashFnv1String","CopyValueToEffect","_inputType","dest","size","context","transform","fromQuat","translate","scale","base","inverseViewTransform","GetInverseViewTransform","baseTransform","clone","multiply","out","transpose","count","Math","min","floor","Number","length","i","TRITRANSFORMBASE","TriTransformBase"],"mappings":"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"}
1
+ {"version":3,"file":"TriTransformParameter.js","sources":["../../../../src/shader/parameter/TriTransformParameter.js"],"sourcesContent":["// Ported from CarbonEngine (MIT, (c) 2026 CCP Games) - https://github.com/carbonengine/trinity\r\n// trinity/trinity/Shader/Parameter/TriTransformParameter.h\r\n// Generated by format-carbon carbon-class --emit. Verify against shader/TriTransformParameter.json.\r\nimport { carbon, impl, io, schema, type } from \"@carbonenginejs/runtime-utils/schema\";\r\nimport { mat4 } from \"@carbonenginejs/runtime-utils/mat4\";\r\nimport { quat } from \"@carbonenginejs/runtime-utils/quat\";\r\nimport { vec3 } from \"@carbonenginejs/runtime-utils/vec3\";\r\nimport { CjsParameter } from \"./CjsParameter.js\";\r\nimport { TriTransformBase } from \"@carbonenginejs/runtime-utils/graphics\";\r\n\r\n/** TriTransformParameter (shader) - generated from schema shapeHash de073c4a.... */\r\n@type.define({ className: \"TriTransformParameter\", family: \"shader\" })\r\nexport class TriTransformParameter extends CjsParameter\r\n{\r\n\r\n /** m_transformBase (TRITRANSFORMBASE - enum TRITRANSFORMBASE) [READWRITE, PERSIST, ENUM] */\r\n @io.persist\r\n @type.int32\r\n @schema.enum(\"TRITRANSFORMBASE\")\r\n transformBase = 0;\r\n\r\n /** m_rotationCenter (Vector3) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.vec3\r\n rotationCenter = vec3.create();\r\n\r\n /** m_name (BlueSharedString) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.string\r\n name = \"\";\r\n\r\n /** m_rotation (Quaternion) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.quat\r\n rotation = quat.create();\r\n\r\n /** m_scaling (Vector3) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.vec3\r\n scaling = vec3.fromValues(1, 1, 1);\r\n\r\n /** m_translation (Vector3) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.vec3\r\n translation = vec3.create();\r\n\r\n /** m_worldTransform (Matrix) [READWRITE, PERSIST] */\r\n @io.persist\r\n @type.mat4\r\n worldTransform = mat4.create();\r\n\r\n /** The shader constant name the composed transform matrix is uploaded to. */\r\n @carbon.method\r\n @impl.implemented\r\n GetParameterName()\r\n {\r\n return this.name;\r\n }\r\n\r\n /**\r\n * Content hash: transform base + translation/scaling/rotation bytes, then\r\n * name (Carbon hashes the contiguous transform-state struct region).\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n GetHashValue(startingHash = CjsParameter.FNV1_INITIAL)\r\n {\r\n startingHash = CjsParameter.hashFnv1Floats([this.transformBase], startingHash);\r\n startingHash = CjsParameter.hashFnv1Floats(this.translation, startingHash);\r\n startingHash = CjsParameter.hashFnv1Floats(this.scaling, startingHash);\r\n startingHash = CjsParameter.hashFnv1Floats(this.rotation, startingHash);\r\n return CjsParameter.hashFnv1String(this.name, startingHash);\r\n }\r\n\r\n /** Carbon TriTransformParameter::CopyValueToEffect\r\n * (TriTransformParameter.cpp:30-66) builds the 6-arg TransformationMatrix\r\n * (math Matrix.cpp:66-143, scalingCenter NULL): row-vector\r\n * S * T(-rotationCenter) * R * T(rotationCenter + translation) - the scale\r\n * is about the TRUE ORIGIN while only the rotation pivots on\r\n * m_rotationCenter (translation bytes: t + rc - R*rc, rc UNSCALED). NOT\r\n * gl-matrix's fromRotationTranslationScaleOrigin, which scales about the\r\n * origin point too (t + o - R*(S*o)) - the two differ whenever\r\n * scaling != 1 and rotationCenter != 0. gl column order:\r\n * T(rc + t) * R * T(-rc) * S. NOTE: Carbon's TRITB_OBJECT branch\r\n * (cpp:48-66) additionally multiplies in the object world matrix - an\r\n * unported composition (the JS treats every non-FIXED base as the zeroed\r\n * inverse view only); when ported it must swap per the convention. */\r\n @carbon.method\r\n @impl.adapted\r\n CopyValueToEffect(_inputType, dest, size = 64, context = null)\r\n {\r\n const transform = mat4.create();\r\n const rotationCenter = this.rotationCenter;\r\n // gl column build of T(rc + t) * R * T(-rc) * S, right-to-left:\r\n mat4.fromQuat(transform, this.rotation);\r\n mat4.translate(transform, transform, [-rotationCenter[0], -rotationCenter[1], -rotationCenter[2]]);\r\n mat4.scale(transform, transform, this.scaling);\r\n transform[12] += rotationCenter[0] + this.translation[0];\r\n transform[13] += rotationCenter[1] + this.translation[1];\r\n transform[14] += rotationCenter[2] + this.translation[2];\r\n const base = context?.inverseViewTransform ?? context?.GetInverseViewTransform?.() ?? null;\r\n if (base && this.transformBase !== 0)\r\n {\r\n const baseTransform = mat4.clone(base);\r\n baseTransform[12] = 0;\r\n baseTransform[13] = 0;\r\n baseTransform[14] = 0;\r\n // Carbon (row-vector): texTransform *= original - the base transform\r\n // applies first, the authored SRT last.\r\n mat4.multiply(transform, transform, baseTransform);\r\n }\r\n const out = mat4.create();\r\n mat4.transpose(out, transform);\r\n const count = Math.min(16, Math.floor(Number(size) / 4) || 16, dest?.length ?? 16);\r\n for (let i = 0; i < count; i++)\r\n {\r\n dest[i] = out[i];\r\n }\r\n }\r\n\r\n static TRITRANSFORMBASE = TriTransformBase;\r\n\r\n}\r\n"],"names":["_TriTransformParamete","_identity","TriTransformParameter","CjsParameter","e","_init_transformBase","_init_extra_transformBase","_init_rotationCenter","_init_extra_rotationCenter","_init_name","_init_extra_name","_init_rotation","_init_extra_rotation","_init_scaling","_init_extra_scaling","_init_translation","_init_extra_translation","_init_worldTransform","_init_extra_worldTransform","_initProto","c","_initClass","_applyDecs","type","define","className","family","io","persist","int32","schema","enum","vec3","string","quat","mat4","carbon","method","impl","implemented","adapted","constructor","args","transformBase","rotationCenter","create","name","rotation","scaling","fromValues","translation","worldTransform","GetParameterName","GetHashValue","startingHash","FNV1_INITIAL","hashFnv1Floats","hashFnv1String","CopyValueToEffect","_inputType","dest","size","context","transform","fromQuat","translate","scale","base","inverseViewTransform","GetInverseViewTransform","baseTransform","clone","multiply","out","transpose","count","Math","min","floor","Number","length","i","TRITRANSFORMBASE","TriTransformBase"],"mappings":"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"}
@@ -31,6 +31,11 @@ class TriVariableParameter extends CjsParameter {
31
31
  variable = (_init_extra_variableName(this), null);
32
32
  variableStore = null;
33
33
  cachedEffect = null;
34
+
35
+ /**
36
+ * The shader constant or resource name the variable's value is uploaded to;
37
+ * distinct from variableName, which names the store entry.
38
+ */
34
39
  GetParameterName() {
35
40
  return this.name;
36
41
  }
@@ -39,6 +44,11 @@ class TriVariableParameter extends CjsParameter {
39
44
  GetHashValue(startingHash = CjsParameter.FNV1_INITIAL) {
40
45
  return CjsParameter.hashFnv1String(this.name, startingHash);
41
46
  }
47
+
48
+ /**
49
+ * Resolves variableName against a store and caches the variable object; an empty variableName clears the binding. Always returns true.
50
+ * @param variableStore store to bind against; null keeps the store supplied by an earlier call
51
+ */
42
52
  Initialize(variableStore = null) {
43
53
  this.variableStore = variableStore ?? this.variableStore;
44
54
  if (!this.variableName) {
@@ -48,6 +58,11 @@ class TriVariableParameter extends CjsParameter {
48
58
  this.variable = this.variableStore?.GetVariable?.(this.variableName) ?? this.variableStore?.getVariable?.(this.variableName) ?? this.variableStore?.[this.variableName] ?? this.variable;
49
59
  return true;
50
60
  }
61
+
62
+ /**
63
+ * Consumes the two dirty flags: `variable` re-resolves the store binding,
64
+ * `effectHandles` re-resolves usage against the cached shader.
65
+ */
51
66
  OnModified(_options = {}) {
52
67
  const flags = this.__state.flags;
53
68
  if (flags.delete("variable")) {
@@ -58,6 +73,12 @@ class TriVariableParameter extends CjsParameter {
58
73
  }
59
74
  return true;
60
75
  }
76
+
77
+ /**
78
+ * Records usage by looking the name up as a shader resource when the bound
79
+ * variable is a texture or buffer type and as a shader constant otherwise; an
80
+ * unbound variable always counts as unused.
81
+ */
61
82
  RebuildEffectHandles(effectRes) {
62
83
  this.cachedEffect = effectRes;
63
84
  this.usedByCurrentEffect = false;
@@ -71,15 +92,32 @@ class TriVariableParameter extends CjsParameter {
71
92
  this.usedByCurrentEffect = used;
72
93
  this.usedByCurrentTechnique = used;
73
94
  }
95
+
96
+ /**
97
+ * Delegates the write to the bound variable, so the store owns the value; does
98
+ * nothing when no variable is bound.
99
+ */
74
100
  CopyValueToEffect(inputType, dest, size, renderContext) {
75
101
  this.variable?.CopyValueToEffect?.(inputType, dest, size, renderContext);
76
102
  }
103
+
104
+ /**
105
+ * Always false - populating a resource set is device work this package does
106
+ * not do.
107
+ */
77
108
  CopyToResourceSet() {
78
109
  return false;
79
110
  }
111
+
112
+ /** Always false - UAV binding is left to the engine adapter. */
80
113
  ApplyUav() {
81
114
  return false;
82
115
  }
116
+
117
+ /**
118
+ * The bound variable's type tag, which decides whether the name binds as a
119
+ * resource or a constant; `invalid` when nothing is bound.
120
+ */
83
121
  GetVariableType() {
84
122
  return this.variable?.GetType?.() ?? this.variable?.type ?? "invalid";
85
123
  }
@@ -1 +1 @@
1
- {"version":3,"file":"TriVariableParameter.js","sources":["../../../../src/shader/parameter/TriVariableParameter.js"],"sourcesContent":["// Ported from CarbonEngine (MIT, (c) 2026 CCP Games) - https://github.com/carbonengine/trinity\r\n// trinity/trinity/Shader/Parameter/TriVariableParameter.h\r\n// Generated by format-carbon carbon-class --emit. Verify against shader/TriVariableParameter.json.\r\nimport { carbon, impl, io, type } from \"@carbonenginejs/runtime-utils/schema\";\r\nimport { CjsModel } from \"@carbonenginejs/runtime-utils/model\";\r\nimport { CjsParameter } from \"./CjsParameter.js\";\r\n\r\n/** TriVariableParameter (shader) - generated from schema shapeHash c1071754.... */\r\n@type.define({ className: \"TriVariableParameter\", family: \"shader\" })\r\nexport class TriVariableParameter extends CjsParameter\r\n{\r\n\r\n /** m_name (BlueSharedString) [READWRITE, NOTIFY, PERSIST] */\r\n @io.flag(\"effectHandles\")\r\n @io.notify\r\n @io.persist\r\n @type.string\r\n name = \"\";\r\n\r\n /** m_isUsedByEffect (bool) [READ] */\r\n @io.read\r\n @type.boolean\r\n usedByCurrentTechnique = false;\r\n\r\n /** m_isUsedByEffect (bool) [READ] */\r\n @io.read\r\n @type.boolean\r\n usedByCurrentEffect = false;\r\n\r\n /** m_variableName (BlueSharedString) [READWRITE, NOTIFY, PERSIST] */\r\n @io.flag(\"variable\")\r\n @io.notify\r\n @io.persist\r\n @type.string\r\n variableName = \"\";\r\n\r\n variable = null;\r\n\r\n variableStore = null;\r\n\r\n cachedEffect = null;\r\n\r\n @carbon.method\r\n @impl.implemented\r\n GetParameterName()\r\n {\r\n return this.name;\r\n }\r\n\r\n /** Content hash: name only - the variable's value comes from the store. */\r\n @carbon.method\r\n @impl.adapted\r\n GetHashValue(startingHash = CjsParameter.FNV1_INITIAL)\r\n {\r\n return CjsParameter.hashFnv1String(this.name, startingHash);\r\n }\r\n\r\n @carbon.method\r\n @impl.adapted\r\n Initialize(variableStore = null)\r\n {\r\n this.variableStore = variableStore ?? this.variableStore;\r\n if (!this.variableName)\r\n {\r\n this.variable = null;\r\n return true;\r\n }\r\n this.variable = this.variableStore?.GetVariable?.(this.variableName) ?? this.variableStore?.getVariable?.(this.variableName) ?? this.variableStore?.[this.variableName] ?? this.variable;\r\n return true;\r\n }\r\n\r\n @carbon.method\r\n @impl.adapted\r\n OnModified(_options = {})\r\n {\r\n const flags = this.__state.flags;\r\n if (flags.delete(\"variable\"))\r\n {\r\n this.Initialize(this.variableStore);\r\n }\r\n if (flags.delete(\"effectHandles\"))\r\n {\r\n this.RebuildEffectHandles(this.cachedEffect);\r\n }\r\n return true;\r\n }\r\n\r\n @carbon.method\r\n @impl.adapted\r\n RebuildEffectHandles(effectRes)\r\n {\r\n this.cachedEffect = effectRes;\r\n this.usedByCurrentEffect = false;\r\n this.usedByCurrentTechnique = false;\r\n if (!this.name || !effectRes || !this.variable)\r\n {\r\n return;\r\n }\r\n const type = this.GetVariableType();\r\n const isResource = type === \"texture\" || type === \"textureRes\" || type === \"gpuBuffer\" || type === 4 || type === 5;\r\n const used = isResource ? !!CjsParameter.getEffectResource(effectRes, this.name) : !!CjsParameter.getEffectConstant(effectRes, this.name);\r\n this.usedByCurrentEffect = used;\r\n this.usedByCurrentTechnique = used;\r\n }\r\n\r\n @carbon.method\r\n @impl.adapted\r\n CopyValueToEffect(inputType, dest, size, renderContext)\r\n {\r\n this.variable?.CopyValueToEffect?.(inputType, dest, size, renderContext);\r\n }\r\n\r\n @carbon.method\r\n @impl.adapted\r\n CopyToResourceSet()\r\n {\r\n return false;\r\n }\r\n\r\n @carbon.method\r\n @impl.adapted\r\n ApplyUav()\r\n {\r\n return false;\r\n }\r\n\r\n @carbon.method\r\n @impl.implemented\r\n GetVariableType()\r\n {\r\n return this.variable?.GetType?.() ?? this.variable?.type ?? \"invalid\";\r\n }\r\n\r\n}\r\n"],"names":["_TriVariableParameter","TriVariableParameter","CjsParameter","e","_init_name","_init_extra_name","_init_usedByCurrentTechnique","_init_extra_usedByCurrentTechnique","_init_usedByCurrentEffect","_init_extra_usedByCurrentEffect","_init_variableName","_init_extra_variableName","_initProto","c","_initClass","_applyDecs","type","define","className","family","io","flag","notify","persist","string","read","boolean","carbon","method","impl","implemented","adapted","name","usedByCurrentTechnique","usedByCurrentEffect","variableName","variable","variableStore","cachedEffect","GetParameterName","GetHashValue","startingHash","FNV1_INITIAL","hashFnv1String","Initialize","GetVariable","getVariable","OnModified","_options","flags","__state","delete","RebuildEffectHandles","effectRes","GetVariableType","isResource","used","getEffectResource","getEffectConstant","CopyValueToEffect","inputType","dest","size","renderContext","CopyToResourceSet","ApplyUav","GetType"],"mappings":"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"}
1
+ {"version":3,"file":"TriVariableParameter.js","sources":["../../../../src/shader/parameter/TriVariableParameter.js"],"sourcesContent":["// Ported from CarbonEngine (MIT, (c) 2026 CCP Games) - https://github.com/carbonengine/trinity\r\n// trinity/trinity/Shader/Parameter/TriVariableParameter.h\r\n// Generated by format-carbon carbon-class --emit. Verify against shader/TriVariableParameter.json.\r\nimport { carbon, impl, io, type } from \"@carbonenginejs/runtime-utils/schema\";\r\nimport { CjsModel } from \"@carbonenginejs/runtime-utils/model\";\r\nimport { CjsParameter } from \"./CjsParameter.js\";\r\n\r\n/** TriVariableParameter (shader) - generated from schema shapeHash c1071754.... */\r\n@type.define({ className: \"TriVariableParameter\", family: \"shader\" })\r\nexport class TriVariableParameter extends CjsParameter\r\n{\r\n\r\n /** m_name (BlueSharedString) [READWRITE, NOTIFY, PERSIST] */\r\n @io.flag(\"effectHandles\")\r\n @io.notify\r\n @io.persist\r\n @type.string\r\n name = \"\";\r\n\r\n /** m_isUsedByEffect (bool) [READ] */\r\n @io.read\r\n @type.boolean\r\n usedByCurrentTechnique = false;\r\n\r\n /** m_isUsedByEffect (bool) [READ] */\r\n @io.read\r\n @type.boolean\r\n usedByCurrentEffect = false;\r\n\r\n /** m_variableName (BlueSharedString) [READWRITE, NOTIFY, PERSIST] */\r\n @io.flag(\"variable\")\r\n @io.notify\r\n @io.persist\r\n @type.string\r\n variableName = \"\";\r\n\r\n variable = null;\r\n\r\n variableStore = null;\r\n\r\n cachedEffect = null;\r\n\r\n /**\r\n * The shader constant or resource name the variable's value is uploaded to;\r\n * distinct from variableName, which names the store entry.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n GetParameterName()\r\n {\r\n return this.name;\r\n }\r\n\r\n /** Content hash: name only - the variable's value comes from the store. */\r\n @carbon.method\r\n @impl.adapted\r\n GetHashValue(startingHash = CjsParameter.FNV1_INITIAL)\r\n {\r\n return CjsParameter.hashFnv1String(this.name, startingHash);\r\n }\r\n\r\n /**\r\n * Resolves variableName against a store and caches the variable object; an empty variableName clears the binding. Always returns true.\r\n * @param variableStore store to bind against; null keeps the store supplied by an earlier call\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n Initialize(variableStore = null)\r\n {\r\n this.variableStore = variableStore ?? this.variableStore;\r\n if (!this.variableName)\r\n {\r\n this.variable = null;\r\n return true;\r\n }\r\n this.variable = this.variableStore?.GetVariable?.(this.variableName) ?? this.variableStore?.getVariable?.(this.variableName) ?? this.variableStore?.[this.variableName] ?? this.variable;\r\n return true;\r\n }\r\n\r\n /**\r\n * Consumes the two dirty flags: `variable` re-resolves the store binding,\r\n * `effectHandles` re-resolves usage against the cached shader.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n OnModified(_options = {})\r\n {\r\n const flags = this.__state.flags;\r\n if (flags.delete(\"variable\"))\r\n {\r\n this.Initialize(this.variableStore);\r\n }\r\n if (flags.delete(\"effectHandles\"))\r\n {\r\n this.RebuildEffectHandles(this.cachedEffect);\r\n }\r\n return true;\r\n }\r\n\r\n /**\r\n * Records usage by looking the name up as a shader resource when the bound\r\n * variable is a texture or buffer type and as a shader constant otherwise; an\r\n * unbound variable always counts as unused.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n RebuildEffectHandles(effectRes)\r\n {\r\n this.cachedEffect = effectRes;\r\n this.usedByCurrentEffect = false;\r\n this.usedByCurrentTechnique = false;\r\n if (!this.name || !effectRes || !this.variable)\r\n {\r\n return;\r\n }\r\n const type = this.GetVariableType();\r\n const isResource = type === \"texture\" || type === \"textureRes\" || type === \"gpuBuffer\" || type === 4 || type === 5;\r\n const used = isResource ? !!CjsParameter.getEffectResource(effectRes, this.name) : !!CjsParameter.getEffectConstant(effectRes, this.name);\r\n this.usedByCurrentEffect = used;\r\n this.usedByCurrentTechnique = used;\r\n }\r\n\r\n /**\r\n * Delegates the write to the bound variable, so the store owns the value; does\r\n * nothing when no variable is bound.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n CopyValueToEffect(inputType, dest, size, renderContext)\r\n {\r\n this.variable?.CopyValueToEffect?.(inputType, dest, size, renderContext);\r\n }\r\n\r\n /**\r\n * Always false - populating a resource set is device work this package does\r\n * not do.\r\n */\r\n @carbon.method\r\n @impl.adapted\r\n CopyToResourceSet()\r\n {\r\n return false;\r\n }\r\n\r\n /** Always false - UAV binding is left to the engine adapter. */\r\n @carbon.method\r\n @impl.adapted\r\n ApplyUav()\r\n {\r\n return false;\r\n }\r\n\r\n /**\r\n * The bound variable's type tag, which decides whether the name binds as a\r\n * resource or a constant; `invalid` when nothing is bound.\r\n */\r\n @carbon.method\r\n @impl.implemented\r\n GetVariableType()\r\n {\r\n return this.variable?.GetType?.() ?? this.variable?.type ?? \"invalid\";\r\n }\r\n\r\n}\r\n"],"names":["_TriVariableParameter","TriVariableParameter","CjsParameter","e","_init_name","_init_extra_name","_init_usedByCurrentTechnique","_init_extra_usedByCurrentTechnique","_init_usedByCurrentEffect","_init_extra_usedByCurrentEffect","_init_variableName","_init_extra_variableName","_initProto","c","_initClass","_applyDecs","type","define","className","family","io","flag","notify","persist","string","read","boolean","carbon","method","impl","implemented","adapted","name","usedByCurrentTechnique","usedByCurrentEffect","variableName","variable","variableStore","cachedEffect","GetParameterName","GetHashValue","startingHash","FNV1_INITIAL","hashFnv1String","Initialize","GetVariable","getVariable","OnModified","_options","flags","__state","delete","RebuildEffectHandles","effectRes","GetVariableType","isResource","used","getEffectResource","getEffectConstant","CopyValueToEffect","inputType","dest","size","renderContext","CopyToResourceSet","ApplyUav","GetType"],"mappings":"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"}
@@ -4,6 +4,8 @@ import { CjsModel } from '@carbonenginejs/runtime-utils/model';
4
4
  import { io, type } from '@carbonenginejs/runtime-utils/schema';
5
5
 
6
6
  let _initClass, _init_data, _init_extra_data;
7
+
8
+ /** One vec4 row of a TriFloatArrayParameter's value list. */
7
9
  let _TriVector;
8
10
  class TriVector4 extends CjsModel {
9
11
  static {
@@ -1 +1 @@
1
- {"version":3,"file":"TriVector4.js","sources":["../../../../src/shader/parameter/TriVector4.js"],"sourcesContent":["// Source: E:\\carbonengine\\trinity\\trinity\\Shader\\Parameter\\TriFloatArrayParameter.h\n// Source: E:\\carbonengine\\trinity\\trinity\\Shader\\Parameter\\TriFloatArrayParameter.cpp\nimport { vec4 } from \"@carbonenginejs/runtime-utils/vec4\";\nimport { CjsModel } from \"@carbonenginejs/runtime-utils/model\";\nimport { io, type } from \"@carbonenginejs/runtime-utils/schema\";\n\n\n@type.define({\n className: \"TriVector4\",\n family: \"shader\"\n})\nexport class TriVector4 extends CjsModel\n{\n @io.persist\n @type.vec4\n data = vec4.create();\n}\n"],"names":["_TriVector","TriVector4","CjsModel","e","_init_data","_init_extra_data","c","_initClass","_applyDecs","type","define","className","family","io","persist","vec4","constructor","args","data","create"],"mappings":";;;;;;AAIgE,IAAAA;AAGhE,MAAAC,UAAA,SAIgCC,QAAQ,CACxC;AAAA,EAAA;AAAA,IAAA,CAAA;MAAAC,CAAA,EAAA,CAAAC,UAAA,EAAAC,gBAAA,CAAA;MAAAC,CAAA,EAAA,CAAAN,UAAA,EAAAO,UAAA;AAAA,KAAA,GAAAC,cAAA,CAAA,IAAA,EAAA,CALCC,IAAI,CAACC,MAAM,CAAC;AACXC,MAAAA,SAAS,EAAE,YAAY;AACvBC,MAAAA,MAAM,EAAE;AACV,KAAC,CAAC,CAAA,EAAA,CAAA,CAAA,CAGCC,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACM,IAAI,4BAHoBb,QAAQ,CAAA;AAAA;AAAAc,EAAAA,WAAAA,CAAA,GAAAC,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAAA,IAAA,CAAA;IAAAZ,gBAAA,CAAA,IAAA,CAAA;AAAA,EAAA;AAItCa,EAAAA,IAAI,GAAAd,UAAA,CAAA,IAAA,EAAGW,IAAI,CAACI,MAAM,EAAE,CAAA;AAAC,EAAA;IAAAZ,UAAA,EAAA;AAAA;AACvB;;;;"}
1
+ {"version":3,"file":"TriVector4.js","sources":["../../../../src/shader/parameter/TriVector4.js"],"sourcesContent":["// Source: E:\\carbonengine\\trinity\\trinity\\Shader\\Parameter\\TriFloatArrayParameter.h\n// Source: E:\\carbonengine\\trinity\\trinity\\Shader\\Parameter\\TriFloatArrayParameter.cpp\nimport { vec4 } from \"@carbonenginejs/runtime-utils/vec4\";\nimport { CjsModel } from \"@carbonenginejs/runtime-utils/model\";\nimport { io, type } from \"@carbonenginejs/runtime-utils/schema\";\n\n\n/** One vec4 row of a TriFloatArrayParameter's value list. */\n@type.define({\n className: \"TriVector4\",\n family: \"shader\"\n})\nexport class TriVector4 extends CjsModel\n{\n @io.persist\n @type.vec4\n data = vec4.create();\n}\n"],"names":["_TriVector","TriVector4","CjsModel","e","_init_data","_init_extra_data","c","_initClass","_applyDecs","type","define","className","family","io","persist","vec4","constructor","args","data","create"],"mappings":";;;;;;;AAOA;AAAA,IAAAA;AACA,MAAAC,UAAA,SAIgCC,QAAQ,CACxC;AAAA,EAAA;AAAA,IAAA,CAAA;MAAAC,CAAA,EAAA,CAAAC,UAAA,EAAAC,gBAAA,CAAA;MAAAC,CAAA,EAAA,CAAAN,UAAA,EAAAO,UAAA;AAAA,KAAA,GAAAC,cAAA,CAAA,IAAA,EAAA,CALCC,IAAI,CAACC,MAAM,CAAC;AACXC,MAAAA,SAAS,EAAE,YAAY;AACvBC,MAAAA,MAAM,EAAE;AACV,KAAC,CAAC,CAAA,EAAA,CAAA,CAAA,CAGCC,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACM,IAAI,4BAHoBb,QAAQ,CAAA;AAAA;AAAAc,EAAAA,WAAAA,CAAA,GAAAC,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAAA,IAAA,CAAA;IAAAZ,gBAAA,CAAA,IAAA,CAAA;AAAA,EAAA;AAItCa,EAAAA,IAAI,GAAAd,UAAA,CAAA,IAAA,EAAGW,IAAI,CAACI,MAAM,EAAE,CAAA;AAAC,EAAA;IAAAZ,UAAA,EAAA;AAAA;AACvB;;;;"}
@@ -4,7 +4,12 @@ import { CjsModel } from '@carbonenginejs/runtime-utils/model';
4
4
 
5
5
  let _initClass, _init_name, _init_extra_name, _init_value, _init_extra_value;
6
6
 
7
- /** Tr2ShaderOption (shader) - generated from schema shapeHash a79378fe.... */
7
+ /**
8
+ * Mutable authored option on the Tr2Effect facade.
9
+ *
10
+ * Tr2EffectRes accepts this plain name/value shape but does not own authored
11
+ * option lifetime.
12
+ */
8
13
  let _Tr2ShaderOption;
9
14
  class Tr2ShaderOption extends CjsModel {
10
15
  static {
@@ -1 +1 @@
1
- {"version":3,"file":"Tr2ShaderOption.js","sources":["../../../../src/shader/reflection/Tr2ShaderOption.js"],"sourcesContent":["// Ported from CarbonEngine (MIT, (c) 2026 CCP Games) - https://github.com/carbonengine/trinity\n// trinity/trinity/Shader/Tr2EffectDescription.h\n// Generated by format-carbon carbon-class --emit. Verify against shader/Tr2ShaderOption.json.\nimport { io, type } from \"@carbonenginejs/runtime-utils/schema\";\nimport { CjsModel } from \"@carbonenginejs/runtime-utils/model\";\n\n/** Tr2ShaderOption (shader) - generated from schema shapeHash a79378fe.... */\n@type.define({ className: \"Tr2ShaderOption\", family: \"shader\" })\nexport class Tr2ShaderOption extends CjsModel\n{\n\n /** name (BlueSharedString) */\n @io.rebuild(\"pipeline\")\n @io.persist\n @type.string\n name = \"\";\n\n /** value (BlueSharedString) */\n @io.rebuild(\"pipeline\")\n @io.persist\n @type.string\n value = \"\";\n\n}\n"],"names":["_Tr2ShaderOption","Tr2ShaderOption","CjsModel","e","_init_name","_init_extra_name","_init_value","_init_extra_value","c","_initClass","_applyDecs","type","define","className","family","io","rebuild","persist","string","constructor","args","name","value"],"mappings":";;;;;;AAMA;AAAA,IAAAA;AACA,MAAAC,eAAA,SACqCC,QAAQ,CAC7C;AAAA,EAAA;AAAA,IAAA,CAAA;AAAAC,MAAAA,CAAA,GAAAC,UAAA,EAAAC,gBAAA,EAAAC,WAAA,EAAAC,iBAAA,CAAA;MAAAC,CAAA,EAAA,CAAAR,gBAAA,EAAAS,UAAA;AAAA,KAAA,GAAAC,cAAA,CAAA,IAAA,EAAA,CAFCC,IAAI,CAACC,MAAM,CAAC;AAAEC,MAAAA,SAAS,EAAE,iBAAiB;AAAEC,MAAAA,MAAM,EAAE;AAAS,KAAC,CAAC,CAAA,EAAA,CAAA,CAAA,CAAA,MAAA,EAK7DC,EAAE,CAACC,OAAO,CAAC,UAAU,CAAC,EACtBD,EAAE,EAAFA,EAAE,CAACE,OAAO,EACVN,IAAI,EAAJA,IAAI,CAACO,MAAM,CAAA,EAAA,EAAA,EAAA,MAAA,CAAA,EAAA,CAAA,CAAA,MAAA,EAIXH,EAAE,CAACC,OAAO,CAAC,UAAU,CAAC,EACtBD,EAAE,EAAFA,EAAE,CAACE,OAAO,EACVN,IAAI,EAAJA,IAAI,CAACO,MAAM,6BAZuBhB,QAAQ,CAAA;AAAA;AAAAiB,EAAAA,WAAAA,CAAA,GAAAC,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAAA,IAAA,CAAA;IAAAb,iBAAA,CAAA,IAAA,CAAA;AAAA,EAAA;AAG3C;EAIAc,IAAI,GAAAjB,UAAA,CAAA,IAAA,EAAG,EAAE,CAAA;;AAET;AAIAkB,EAAAA,KAAK,IAAAjB,gBAAA,CAAA,IAAA,CAAA,EAAAC,WAAA,OAAG,EAAE,CAAA;AAAC,EAAA;IAAAG,UAAA,EAAA;AAAA;AAEb;;;;"}
1
+ {"version":3,"file":"Tr2ShaderOption.js","sources":["../../../../src/shader/reflection/Tr2ShaderOption.js"],"sourcesContent":["// Source: trinity/trinity/Shader/Tr2EffectDescription.h\nimport { io, type } from \"@carbonenginejs/runtime-utils/schema\";\nimport { CjsModel } from \"@carbonenginejs/runtime-utils/model\";\n\n/**\n * Mutable authored option on the Tr2Effect facade.\n *\n * Tr2EffectRes accepts this plain name/value shape but does not own authored\n * option lifetime.\n */\n@type.define({ className: \"Tr2ShaderOption\", family: \"shader\" })\nexport class Tr2ShaderOption extends CjsModel\n{\n\n /** name (BlueSharedString) */\n @io.rebuild(\"pipeline\")\n @io.persist\n @type.string\n name = \"\";\n\n /** value (BlueSharedString) */\n @io.rebuild(\"pipeline\")\n @io.persist\n @type.string\n value = \"\";\n\n}\n"],"names":["_Tr2ShaderOption","Tr2ShaderOption","CjsModel","e","_init_name","_init_extra_name","_init_value","_init_extra_value","c","_initClass","_applyDecs","type","define","className","family","io","rebuild","persist","string","constructor","args","name","value"],"mappings":";;;;;;AAIA;AACA;AACA;AACA;AACA;AACA;AALA,IAAAA;AAMA,MAAAC,eAAA,SACqCC,QAAQ,CAC7C;AAAA,EAAA;AAAA,IAAA,CAAA;AAAAC,MAAAA,CAAA,GAAAC,UAAA,EAAAC,gBAAA,EAAAC,WAAA,EAAAC,iBAAA,CAAA;MAAAC,CAAA,EAAA,CAAAR,gBAAA,EAAAS,UAAA;AAAA,KAAA,GAAAC,cAAA,CAAA,IAAA,EAAA,CAFCC,IAAI,CAACC,MAAM,CAAC;AAAEC,MAAAA,SAAS,EAAE,iBAAiB;AAAEC,MAAAA,MAAM,EAAE;AAAS,KAAC,CAAC,CAAA,EAAA,CAAA,CAAA,CAAA,MAAA,EAK7DC,EAAE,CAACC,OAAO,CAAC,UAAU,CAAC,EACtBD,EAAE,EAAFA,EAAE,CAACE,OAAO,EACVN,IAAI,EAAJA,IAAI,CAACO,MAAM,CAAA,EAAA,EAAA,EAAA,MAAA,CAAA,EAAA,CAAA,CAAA,MAAA,EAIXH,EAAE,CAACC,OAAO,CAAC,UAAU,CAAC,EACtBD,EAAE,EAAFA,EAAE,CAACE,OAAO,EACVN,IAAI,EAAJA,IAAI,CAACO,MAAM,6BAZuBhB,QAAQ,CAAA;AAAA;AAAAiB,EAAAA,WAAAA,CAAA,GAAAC,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAAA,IAAA,CAAA;IAAAb,iBAAA,CAAA,IAAA,CAAA;AAAA,EAAA;AAG3C;EAIAc,IAAI,GAAAjB,UAAA,CAAA,IAAA,EAAG,EAAE,CAAA;;AAET;AAIAkB,EAAAA,KAAK,IAAAjB,gBAAA,CAAA,IAAA,CAAA,EAAAC,WAAA,OAAG,EAAE,CAAA;AAAC,EAAA;IAAAG,UAAA,EAAA;AAAA;AAEb;;;;"}
@@ -1,20 +1,40 @@
1
+ /**
2
+ * A named-variable table that TriVariableParameter values resolve against, plus
3
+ * the lazily created process-wide global instance effects fall back to.
4
+ */
1
5
  class CjsVariableStore {
2
6
  static #global = null;
3
7
  #variables = new Map();
8
+
9
+ /**
10
+ * Creates an empty store, optionally seeded.
11
+ * @param values optional name-to-value Map or object routed through SetValues
12
+ */
4
13
  constructor(values = null) {
5
14
  if (values) {
6
15
  this.SetValues(values);
7
16
  }
8
17
  }
18
+
19
+ /** Short alias for SetVariable. */
9
20
  Set(name, value, Type = null) {
10
21
  return this.SetVariable(name, value, Type);
11
22
  }
23
+
24
+ /** Short alias for GetVariable - returns the variable object, not its value. */
12
25
  Get(name) {
13
26
  return this.GetVariable(name);
14
27
  }
28
+
29
+ /** Short alias for HasVariable. */
15
30
  Has(name) {
16
31
  return this.HasVariable(name);
17
32
  }
33
+
34
+ /**
35
+ * Seeds many variables at once from a Map or plain object; returns this store
36
+ * for chaining.
37
+ */
18
38
  SetValues(values) {
19
39
  const entries = values instanceof Map ? values.entries() : Object.entries(values);
20
40
  for (const [name, value] of entries) {
@@ -22,6 +42,12 @@ class CjsVariableStore {
22
42
  }
23
43
  return this;
24
44
  }
45
+
46
+ /**
47
+ * Stores a value under a name, wrapping raw values in a CjsStoredVariable and
48
+ * naming an unnamed variable object after its key. Values that already
49
+ * implement the variable protocol are stored by reference, not copied.
50
+ */
25
51
  SetVariable(name, value, Type = null) {
26
52
  const key = String(name);
27
53
  const variable = CjsVariableStore.isVariable(value) ? value : this.CreateVariable(key, value, Type);
@@ -31,37 +57,79 @@ class CjsVariableStore {
31
57
  this.#variables.set(key, variable);
32
58
  return variable;
33
59
  }
60
+
61
+ /**
62
+ * Constructs the wrapper object for a name/value pair, using the supplied
63
+ * constructor when one is given and CjsStoredVariable otherwise.
64
+ */
34
65
  CreateVariable(name, value = undefined, Type = null) {
35
66
  if (typeof Type === "function") {
36
67
  return new Type(name, value);
37
68
  }
38
69
  return new CjsStoredVariable(name, value, Type);
39
70
  }
71
+
72
+ /**
73
+ * The stored variable object, or null; parameters hold on to this reference
74
+ * until they re-Initialize.
75
+ */
40
76
  GetVariable(name) {
41
77
  return this.#variables.get(String(name)) ?? null;
42
78
  }
79
+
80
+ /**
81
+ * camelCase alias for GetVariable, accepted because parameters probe both
82
+ * spellings.
83
+ */
43
84
  getVariable(name) {
44
85
  return this.GetVariable(name);
45
86
  }
87
+
88
+ /** Whether a variable is stored under this name. */
46
89
  HasVariable(name) {
47
90
  return this.#variables.has(String(name));
48
91
  }
92
+
93
+ /** camelCase alias for HasVariable. */
49
94
  hasVariable(name) {
50
95
  return this.HasVariable(name);
51
96
  }
97
+
98
+ /**
99
+ * Removes the named variable; returns whether it was present. Parameters
100
+ * already holding the variable keep working until they re-Initialize.
101
+ */
52
102
  DeleteVariable(name) {
53
103
  return this.#variables.delete(String(name));
54
104
  }
105
+
106
+ /**
107
+ * Empties the table; parameters already holding a variable reference keep it
108
+ * until they re-Initialize.
109
+ */
55
110
  Clear() {
56
111
  this.#variables.clear();
57
112
  }
113
+
114
+ /**
115
+ * The variable's current value, or undefined when the name is unknown.
116
+ * @param out optional array the variable may fill in instead of returning its own storage
117
+ */
58
118
  GetVariableValue(name, out = undefined) {
59
119
  const variable = this.GetVariable(name);
60
120
  return variable?.GetValue?.(out) ?? variable?.getValue?.(out) ?? variable?.value ?? undefined;
61
121
  }
122
+
123
+ /** camelCase alias for GetVariableValue. */
62
124
  getVariableValue(name, out = undefined) {
63
125
  return this.GetVariableValue(name, out);
64
126
  }
127
+
128
+ /**
129
+ * Writes a value through the named variable, creating the variable when absent
130
+ * and assigning `.value` directly for holders with no setter; returns the
131
+ * variable.
132
+ */
65
133
  SetVariableValue(name, value, options = undefined) {
66
134
  const variable = this.GetVariable(name) ?? this.SetVariable(name, value);
67
135
  variable?.SetValue?.(value, options) ?? variable?.setValue?.(value, options);
@@ -70,44 +138,99 @@ class CjsVariableStore {
70
138
  }
71
139
  return variable;
72
140
  }
141
+
142
+ /** camelCase alias for SetVariableValue. */
73
143
  setVariableValue(name, value, options = undefined) {
74
144
  return this.SetVariableValue(name, value, options);
75
145
  }
146
+
147
+ /**
148
+ * Snapshot array of [name, variable] pairs; mutating the array does not affect
149
+ * the store.
150
+ */
76
151
  Entries() {
77
152
  return [...this.#variables.entries()];
78
153
  }
154
+
155
+ /**
156
+ * Snapshot array of the stored variable objects; the objects themselves are
157
+ * live references.
158
+ */
79
159
  Values() {
80
160
  return [...this.#variables.values()];
81
161
  }
162
+
163
+ /**
164
+ * Whether a value already implements the variable protocol - any of GetValue,
165
+ * SetValue, CopyValueToEffect, CopyToResourceSet or ApplyUav - and so should
166
+ * be stored unwrapped.
167
+ */
82
168
  static isVariable(value) {
83
169
  return !!value && typeof value === "object" && (typeof value.GetValue === "function" || typeof value.SetValue === "function" || typeof value.CopyValueToEffect === "function" || typeof value.CopyToResourceSet === "function" || typeof value.ApplyUav === "function");
84
170
  }
171
+
172
+ /**
173
+ * The process-wide fallback store, created on first use; effects with no store
174
+ * of their own read through it.
175
+ */
85
176
  static GetGlobalStore() {
86
177
  if (!CjsVariableStore.#global) {
87
178
  CjsVariableStore.#global = new CjsVariableStore();
88
179
  }
89
180
  return CjsVariableStore.#global;
90
181
  }
182
+
183
+ /**
184
+ * Replaces the global store, installing a fresh empty one when passed null;
185
+ * existing effects see the swap because they resolve the global at call time
186
+ * rather than capturing it.
187
+ */
91
188
  static SetGlobalStore(store) {
92
189
  CjsVariableStore.#global = store ?? new CjsVariableStore();
93
190
  return CjsVariableStore.#global;
94
191
  }
95
192
  }
193
+
194
+ /**
195
+ * The default variable wrapper: a name, a value and an inferred type tag, able
196
+ * to copy itself into an effect constant destination.
197
+ */
96
198
  class CjsStoredVariable {
97
199
  name = "";
98
200
  value = undefined;
99
201
  type = "value";
202
+
203
+ /**
204
+ * Creates a variable holding a raw value.
205
+ * @param type overrides the type tag that would otherwise be inferred from the value
206
+ */
100
207
  constructor(name = "", value = undefined, type = null) {
101
208
  this.name = String(name);
102
209
  this.value = value;
103
210
  this.type = type ?? CjsStoredVariable.inferType(value);
104
211
  }
212
+
213
+ /**
214
+ * The variable's name, which the store fills in from the key when it was
215
+ * constructed without one.
216
+ */
105
217
  GetName() {
106
218
  return this.name;
107
219
  }
220
+
221
+ /**
222
+ * The type tag TriVariableParameter uses to decide whether the name binds to a
223
+ * shader constant or a shader resource.
224
+ */
108
225
  GetType() {
109
226
  return this.type;
110
227
  }
228
+
229
+ /**
230
+ * Reads the value.
231
+ * @param out optional array filled with min(out.length, value.length) components
232
+ * @returns `out` when it was filled, otherwise the variable's own value by reference
233
+ */
111
234
  GetValue(out = undefined) {
112
235
  if (out && this.value && typeof this.value.length === "number" && typeof out.length === "number") {
113
236
  const count = Math.min(out.length, this.value.length);
@@ -118,11 +241,22 @@ class CjsStoredVariable {
118
241
  }
119
242
  return this.value;
120
243
  }
244
+
245
+ /**
246
+ * Replaces the value by reference and re-infers the type tag; always returns
247
+ * true.
248
+ */
121
249
  SetValue(value) {
122
250
  this.value = value;
123
251
  this.type = CjsStoredVariable.inferType(value);
124
252
  return true;
125
253
  }
254
+
255
+ /**
256
+ * Copies the value into an effect constant destination, clamped to the destination length, the source length and `size` bytes at four bytes per float; a scalar value writes one component.
257
+ * @param size byte budget in the destination, not a component count
258
+ * @returns {boolean} whether anything was written
259
+ */
126
260
  CopyValueToEffect(_inputType, destination, size = Number.POSITIVE_INFINITY) {
127
261
  if (!destination || typeof destination.length !== "number") {
128
262
  return false;
@@ -142,6 +276,12 @@ class CjsStoredVariable {
142
276
  }
143
277
  return count > 0;
144
278
  }
279
+
280
+ /**
281
+ * Derives a type tag from a raw value: numbers are float, strings texture,
282
+ * 16-length array-likes matrix4, other array-likes vectorN, everything else
283
+ * value.
284
+ */
145
285
  static inferType(value) {
146
286
  if (typeof value === "number") {
147
287
  return "float";