@carbonenginejs/runtime 0.1.0-alpha.0 → 0.1.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +58 -125
- package/dist/audio/index.js +8 -1
- package/dist/audio/index.js.map +1 -1
- package/dist/audio/trinity/audio/AudActionLog/AudActionLogCB.js +84 -0
- package/dist/audio/trinity/audio/AudActionLog/AudActionLogCB.js.map +1 -0
- package/dist/audio/trinity/audio/AudActionLog/AudActionRecord.js +14 -0
- package/dist/audio/trinity/audio/AudActionLog/AudActionRecord.js.map +1 -0
- package/dist/audio/trinity/audio/AudActionLog/AudActionRecordExecuteActionOnPlayingID.js +26 -0
- package/dist/audio/trinity/audio/AudActionLog/AudActionRecordExecuteActionOnPlayingID.js.map +1 -0
- package/dist/audio/trinity/audio/AudActionLog/AudActionRecordPostEvent.js +27 -0
- package/dist/audio/trinity/audio/AudActionLog/AudActionRecordPostEvent.js.map +1 -0
- package/dist/audio/trinity/audio/AudActionLog/AudActionRecordSetRTPC.js +27 -0
- package/dist/audio/trinity/audio/AudActionLog/AudActionRecordSetRTPC.js.map +1 -0
- package/dist/audio/trinity/audio/AudActionLog/AudActionRecordSetState.js +25 -0
- package/dist/audio/trinity/audio/AudActionLog/AudActionRecordSetState.js.map +1 -0
- package/dist/audio/trinity/audio/AudActionLog/AudActionRecordSetSwitch.js +26 -0
- package/dist/audio/trinity/audio/AudActionLog/AudActionRecordSetSwitch.js.map +1 -0
- package/dist/audio/trinity/audio/AudActionLog/IAudActionLog.js +58 -0
- package/dist/audio/trinity/audio/AudActionLog/IAudActionLog.js.map +1 -0
- package/dist/audio/trinity/audio/AudManager.js +1 -1
- package/dist/audio/trinity/audio/AudManager.js.map +1 -1
- package/dist/audio/trinity/audio/{AudObstructionOcclusion.js → AudObstructionOcclusion/AudObstructionOcclusion.js} +8 -52
- package/dist/audio/trinity/audio/AudObstructionOcclusion/AudObstructionOcclusion.js.map +1 -0
- package/dist/audio/trinity/audio/AudObstructionOcclusion/EmitterState.js +17 -0
- package/dist/audio/trinity/audio/AudObstructionOcclusion/EmitterState.js.map +1 -0
- package/dist/audio/trinity/audio/AudObstructionOcclusion/FadingValue.js +46 -0
- package/dist/audio/trinity/audio/AudObstructionOcclusion/FadingValue.js.map +1 -0
- package/dist/audio/trinity/index.js +8 -1
- package/dist/audio/trinity/index.js.map +1 -1
- package/dist/character/CjsCharacterAppearanceConstruction.js +5 -0
- package/dist/character/CjsCharacterAppearanceConstruction.js.map +1 -1
- package/dist/character/CjsCharacterAppearanceManager.js +14 -0
- package/dist/character/CjsCharacterAppearanceManager.js.map +1 -1
- package/dist/character/CjsCharacterFoundationConstruction.js +5 -0
- package/dist/character/CjsCharacterFoundationConstruction.js.map +1 -1
- package/dist/character/CjsCharacterTexturePolicy.js +5 -0
- package/dist/character/CjsCharacterTexturePolicy.js.map +1 -1
- package/dist/character/gles/CjsCharacterGlesAppearanceAL.js +17 -0
- package/dist/character/gles/CjsCharacterGlesAppearanceAL.js.map +1 -1
- package/dist/character/gles/CjsCharacterGlesAtlasRenderer.js +2 -0
- package/dist/character/gles/CjsCharacterGlesAtlasRenderer.js.map +1 -1
- package/dist/character/gles/CjsCharacterGlesFoundationTranslator.js +5 -0
- package/dist/character/gles/CjsCharacterGlesFoundationTranslator.js.map +1 -1
- package/dist/character/gles/CjsCharacterGlesLegacyConstructionTranslator.js +5 -0
- package/dist/character/gles/CjsCharacterGlesLegacyConstructionTranslator.js.map +1 -1
- package/dist/character/gles/CjsCharacterGlesMorphDeformation.js +2 -0
- package/dist/character/gles/CjsCharacterGlesMorphDeformation.js.map +1 -1
- package/dist/character/gles/CjsCharacterGlesPaletteCompatibility.js +5 -0
- package/dist/character/gles/CjsCharacterGlesPaletteCompatibility.js.map +1 -1
- package/dist/character/gles/CjsCharacterGlesTriangleCoverage.js +5 -0
- package/dist/character/gles/CjsCharacterGlesTriangleCoverage.js.map +1 -1
- package/dist/character/webgl2/CjsCharacterWebgl2EffectRouter.js +9 -0
- package/dist/character/webgl2/CjsCharacterWebgl2EffectRouter.js.map +1 -1
- package/dist/global/blue/CjsScriptCallback.js +142 -0
- package/dist/global/blue/CjsScriptCallback.js.map +1 -0
- package/dist/global/blue/index.js +2 -0
- package/dist/global/blue/index.js.map +1 -0
- package/dist/global/consts/renderContext/formats.js +51 -1
- package/dist/global/consts/renderContext/formats.js.map +1 -1
- package/dist/global/consts/renderContext/index.js +2 -2
- package/dist/global/consts/renderContext/renderStates.js +16 -1
- package/dist/global/consts/renderContext/renderStates.js.map +1 -1
- package/dist/global/contracts/index.js +0 -1
- package/dist/global/contracts/index.js.map +1 -1
- package/dist/global/index.js +4 -3
- package/dist/global/index.js.map +1 -1
- package/dist/global/math/index.js +2 -0
- package/dist/global/math/index.js.map +1 -1
- package/dist/global/math/mesh.js +70 -16
- package/dist/global/math/mesh.js.map +1 -1
- package/dist/global/math/noise.js +47 -68
- package/dist/global/math/noise.js.map +1 -1
- package/dist/global/math/pool.js +18 -3
- package/dist/global/math/pool.js.map +1 -1
- package/dist/global/math/random.js +52 -0
- package/dist/global/math/random.js.map +1 -0
- package/dist/global/math/tri3.js +18 -4
- package/dist/global/math/tri3.js.map +1 -1
- package/dist/global/utils/bytes.js +22 -4
- package/dist/global/utils/bytes.js.map +1 -1
- package/dist/global/utils/checksum.js +80 -0
- package/dist/global/utils/checksum.js.map +1 -0
- package/dist/global/utils/errors/CjsCancellationError.js +36 -0
- package/dist/global/utils/errors/CjsCancellationError.js.map +1 -0
- package/dist/global/utils/errors/CjsError.js +21 -52
- package/dist/global/utils/errors/CjsError.js.map +1 -1
- package/dist/global/utils/errors/abort.js +1 -1
- package/dist/global/utils/errors/abort.js.map +1 -1
- package/dist/global/utils/errors/index.js +2 -1
- package/dist/global/utils/errors/index.js.map +1 -1
- package/dist/global/utils/index.js +4 -2
- package/dist/global/utils/index.js.map +1 -1
- package/dist/index.js +95 -35
- package/dist/index.js.map +1 -1
- package/dist/input/Tr2MainWindow.js +7 -9
- package/dist/input/Tr2MainWindow.js.map +1 -1
- package/dist/resource/CjsResMan.js +33 -39
- package/dist/resource/CjsResMan.js.map +1 -1
- package/dist/resource/CjsResource.js +19 -5
- package/dist/resource/CjsResource.js.map +1 -1
- package/dist/resource/audio/AudioGeometryResData.js +22 -27
- package/dist/resource/audio/AudioGeometryResData.js.map +1 -1
- package/dist/resource/audio/CjsAudioRes.js +4 -5
- package/dist/resource/audio/CjsAudioRes.js.map +1 -1
- package/dist/resource/format/CjsBitReader.js +263 -0
- package/dist/resource/format/CjsBitReader.js.map +1 -0
- package/dist/resource/format/CjsByteReader.js +130 -125
- package/dist/resource/format/CjsByteReader.js.map +1 -1
- package/dist/resource/format/CjsFormat.js +11 -4
- package/dist/resource/format/CjsFormat.js.map +1 -1
- package/dist/resource/format/CjsFormatError.js +37 -1
- package/dist/resource/format/CjsFormatError.js.map +1 -1
- package/dist/resource/format/CjsResourceProbe.js +41 -37
- package/dist/resource/format/CjsResourceProbe.js.map +1 -1
- package/dist/resource/format/carbonRecordGuard.js +33 -0
- package/dist/resource/format/carbonRecordGuard.js.map +1 -0
- package/dist/resource/format/imageSignatures.js +202 -0
- package/dist/resource/format/imageSignatures.js.map +1 -0
- package/dist/resource/format/index.js +2 -1
- package/dist/resource/format/index.js.map +1 -1
- package/dist/resource/format/jsonPolicies.js +180 -0
- package/dist/resource/format/jsonPolicies.js.map +1 -0
- package/dist/resource/formats/black/core/helpers.js +18 -29
- package/dist/resource/formats/black/core/helpers.js.map +1 -1
- package/dist/resource/formats/bnk/CjsBnkFormat.js +4 -3
- package/dist/resource/formats/bnk/CjsBnkFormat.js.map +1 -1
- package/dist/resource/formats/bnk/core/WwiseCursor.js +218 -0
- package/dist/resource/formats/bnk/core/WwiseCursor.js.map +1 -0
- package/dist/resource/formats/bnk/core/busNodes.js +2 -1
- package/dist/resource/formats/bnk/core/busNodes.js.map +1 -1
- package/dist/resource/formats/bnk/core/effectNodes.js +2 -1
- package/dist/resource/formats/bnk/core/effectNodes.js.map +1 -1
- package/dist/resource/formats/bnk/core/eventAction.js +15 -93
- package/dist/resource/formats/bnk/core/eventAction.js.map +1 -1
- package/dist/resource/formats/bnk/core/globalSettings.js +19 -94
- package/dist/resource/formats/bnk/core/globalSettings.js.map +1 -1
- package/dist/resource/formats/bnk/core/helpers.js +2 -48
- package/dist/resource/formats/bnk/core/helpers.js.map +1 -1
- package/dist/resource/formats/bnk/core/musicNodes.js +42 -134
- package/dist/resource/formats/bnk/core/musicNodes.js.map +1 -1
- package/dist/resource/formats/bnk/core/nodeBase.js +20 -111
- package/dist/resource/formats/bnk/core/nodeBase.js.map +1 -1
- package/dist/resource/formats/bnk/core/sfxNodes.js +2 -1
- package/dist/resource/formats/bnk/core/sfxNodes.js.map +1 -1
- package/dist/resource/formats/cmf/CjsCmfFormat.js +242 -228
- package/dist/resource/formats/cmf/CjsCmfFormat.js.map +1 -1
- package/dist/resource/formats/cmf/core/binary.js +54 -60
- package/dist/resource/formats/cmf/core/binary.js.map +1 -1
- package/dist/resource/formats/dds/CjsDdsFormat.js +5 -3
- package/dist/resource/formats/dds/CjsDdsFormat.js.map +1 -1
- package/dist/resource/formats/dds/core/bc6h.js +16 -18
- package/dist/resource/formats/dds/core/bc6h.js.map +1 -1
- package/dist/resource/formats/dds/core/bc7.js +28 -24
- package/dist/resource/formats/dds/core/bc7.js.map +1 -1
- package/dist/resource/formats/dds/core/helpers.js +7 -133
- package/dist/resource/formats/dds/core/helpers.js.map +1 -1
- package/dist/resource/formats/dxbc/CjsDxbcFormat.js +3 -2
- package/dist/resource/formats/dxbc/CjsDxbcFormat.js.map +1 -1
- package/dist/resource/formats/dxbc/core/helpers.js +4 -32
- package/dist/resource/formats/dxbc/core/helpers.js.map +1 -1
- package/dist/resource/formats/fbx/CjsFbxFormat.js +11 -0
- package/dist/resource/formats/fbx/CjsFbxFormat.js.map +1 -1
- package/dist/resource/formats/fbx/core/helpers.js +18 -12
- package/dist/resource/formats/fbx/core/helpers.js.map +1 -1
- package/dist/resource/formats/flac/CjsFlacFormat.js +4 -9
- package/dist/resource/formats/flac/CjsFlacFormat.js.map +1 -1
- package/dist/resource/formats/flac/core/helpers.js +1 -62
- package/dist/resource/formats/flac/core/helpers.js.map +1 -1
- package/dist/resource/formats/gif/CjsGifFormat.js +4 -9
- package/dist/resource/formats/gif/CjsGifFormat.js.map +1 -1
- package/dist/resource/formats/gif/core/helpers.js +1 -63
- package/dist/resource/formats/gif/core/helpers.js.map +1 -1
- package/dist/resource/formats/gltf/CjsGltfFormat.js +4 -3
- package/dist/resource/formats/gltf/CjsGltfFormat.js.map +1 -1
- package/dist/resource/formats/gltf/core/helpers.js +3 -19
- package/dist/resource/formats/gltf/core/helpers.js.map +1 -1
- package/dist/resource/formats/gr2/CjsGr2Format.js +105 -92
- package/dist/resource/formats/gr2/CjsGr2Format.js.map +1 -1
- package/dist/resource/formats/gr2/core/container.js +1 -10
- package/dist/resource/formats/gr2/core/container.js.map +1 -1
- package/dist/resource/formats/gr2/core/helpers.js +24 -35
- package/dist/resource/formats/gr2/core/helpers.js.map +1 -1
- package/dist/resource/formats/gr2/core/shared.js +193 -189
- package/dist/resource/formats/gr2/core/shared.js.map +1 -1
- package/dist/resource/formats/hlsl/CjsHlslFormat.js +4 -3
- package/dist/resource/formats/hlsl/CjsHlslFormat.js.map +1 -1
- package/dist/resource/formats/hlsl/core/helpers.js +1 -30
- package/dist/resource/formats/hlsl/core/helpers.js.map +1 -1
- package/dist/resource/formats/jpeg/CjsJpegFormat.js +5 -3
- package/dist/resource/formats/jpeg/CjsJpegFormat.js.map +1 -1
- package/dist/resource/formats/jpeg/core/helpers.js +7 -134
- package/dist/resource/formats/jpeg/core/helpers.js.map +1 -1
- package/dist/resource/formats/mp3/CjsMp3Format.js +4 -9
- package/dist/resource/formats/mp3/CjsMp3Format.js.map +1 -1
- package/dist/resource/formats/mp3/core/helpers.js +1 -64
- package/dist/resource/formats/mp3/core/helpers.js.map +1 -1
- package/dist/resource/formats/mp4/CjsMp4Format.js +4 -9
- package/dist/resource/formats/mp4/CjsMp4Format.js.map +1 -1
- package/dist/resource/formats/mp4/core/helpers.js +1 -73
- package/dist/resource/formats/mp4/core/helpers.js.map +1 -1
- package/dist/resource/formats/obj/CjsObjFormat.js +4 -3
- package/dist/resource/formats/obj/CjsObjFormat.js.map +1 -1
- package/dist/resource/formats/obj/core/helpers.js +93 -115
- package/dist/resource/formats/obj/core/helpers.js.map +1 -1
- package/dist/resource/formats/ogg/CjsOggFormat.js +4 -3
- package/dist/resource/formats/ogg/CjsOggFormat.js.map +1 -1
- package/dist/resource/formats/ogg/core/helpers.js +1 -15
- package/dist/resource/formats/ogg/core/helpers.js.map +1 -1
- package/dist/resource/formats/ogg/core/vorbis.js +138 -144
- package/dist/resource/formats/ogg/core/vorbis.js.map +1 -1
- package/dist/resource/formats/pickle/CjsPickleFormat.js +83 -114
- package/dist/resource/formats/pickle/CjsPickleFormat.js.map +1 -1
- package/dist/resource/formats/png/CjsPngFormat.js +5 -3
- package/dist/resource/formats/png/CjsPngFormat.js.map +1 -1
- package/dist/resource/formats/png/core/helpers.js +13 -152
- package/dist/resource/formats/png/core/helpers.js.map +1 -1
- package/dist/resource/formats/png/core/writer.js +3 -27
- package/dist/resource/formats/png/core/writer.js.map +1 -1
- package/dist/resource/formats/red/core/helpers.js +19 -29
- package/dist/resource/formats/red/core/helpers.js.map +1 -1
- package/dist/resource/formats/stl/CjsStlFormat.js +158 -147
- package/dist/resource/formats/stl/CjsStlFormat.js.map +1 -1
- package/dist/resource/formats/stl/core/helpers.js +44 -66
- package/dist/resource/formats/stl/core/helpers.js.map +1 -1
- package/dist/resource/formats/tga/CjsTgaFormat.js +5 -3
- package/dist/resource/formats/tga/CjsTgaFormat.js.map +1 -1
- package/dist/resource/formats/tga/core/helpers.js +7 -153
- package/dist/resource/formats/tga/core/helpers.js.map +1 -1
- package/dist/resource/formats/vta/CjsVtaFormat.js +4 -3
- package/dist/resource/formats/vta/CjsVtaFormat.js.map +1 -1
- package/dist/resource/formats/vta/core/helpers.js +1 -17
- package/dist/resource/formats/vta/core/helpers.js.map +1 -1
- package/dist/resource/formats/wav/CjsWavFormat.js +4 -3
- package/dist/resource/formats/wav/CjsWavFormat.js.map +1 -1
- package/dist/resource/formats/wav/core/helpers.js +1 -15
- package/dist/resource/formats/wav/core/helpers.js.map +1 -1
- package/dist/resource/formats/webgl/CjsWebglFormat.js +4 -3
- package/dist/resource/formats/webgl/CjsWebglFormat.js.map +1 -1
- package/dist/resource/formats/webgl/core/glsl/DxbcGlslEmitter.js +52 -4
- package/dist/resource/formats/webgl/core/glsl/DxbcGlslEmitter.js.map +1 -1
- package/dist/resource/formats/webgl/core/helpers.js +39 -68
- package/dist/resource/formats/webgl/core/helpers.js.map +1 -1
- package/dist/resource/formats/webgpu/CjsWebgpuFormat.js +4 -3
- package/dist/resource/formats/webgpu/CjsWebgpuFormat.js.map +1 -1
- package/dist/resource/formats/webgpu/core/helpers.js +4 -30
- package/dist/resource/formats/webgpu/core/helpers.js.map +1 -1
- package/dist/resource/formats/webm/CjsWebmFormat.js +4 -9
- package/dist/resource/formats/webm/CjsWebmFormat.js.map +1 -1
- package/dist/resource/formats/webm/core/helpers.js +1 -73
- package/dist/resource/formats/webm/core/helpers.js.map +1 -1
- package/dist/resource/formats/webp/CjsWebpFormat.js +4 -9
- package/dist/resource/formats/webp/CjsWebpFormat.js.map +1 -1
- package/dist/resource/formats/webp/core/helpers.js +1 -62
- package/dist/resource/formats/webp/core/helpers.js.map +1 -1
- package/dist/resource/formats/wem/CjsWemFormat.js +4 -3
- package/dist/resource/formats/wem/CjsWemFormat.js.map +1 -1
- package/dist/resource/formats/wem/core/bitStream.js +83 -106
- package/dist/resource/formats/wem/core/bitStream.js.map +1 -1
- package/dist/resource/formats/wem/core/codebookLibrary.js +52 -52
- package/dist/resource/formats/wem/core/codebookLibrary.js.map +1 -1
- package/dist/resource/formats/wem/core/helpers.js +1 -15
- package/dist/resource/formats/wem/core/helpers.js.map +1 -1
- package/dist/resource/formats/wem/core/wemToOgg.js +67 -67
- package/dist/resource/formats/wem/core/wemToOgg.js.map +1 -1
- package/dist/resource/geometry/MeshDecalData.js +23 -25
- package/dist/resource/geometry/MeshDecalData.js.map +1 -1
- package/dist/resource/geometry/MeshDecalLodData.js +14 -23
- package/dist/resource/geometry/MeshDecalLodData.js.map +1 -1
- package/dist/resource/geometry/TriGeometryRes.js +299 -284
- package/dist/resource/geometry/TriGeometryRes.js.map +1 -1
- package/dist/resource/geometry/TriGeometryResAreaData.js +30 -31
- package/dist/resource/geometry/TriGeometryResAreaData.js.map +1 -1
- package/dist/resource/geometry/TriGeometryResJointData.js +16 -24
- package/dist/resource/geometry/TriGeometryResJointData.js.map +1 -1
- package/dist/resource/geometry/TriGeometryResLodData.js +50 -41
- package/dist/resource/geometry/TriGeometryResLodData.js.map +1 -1
- package/dist/resource/geometry/TriGeometryResMeshData.js +32 -32
- package/dist/resource/geometry/TriGeometryResMeshData.js.map +1 -1
- package/dist/resource/geometry/TriGeometryResSkeletonData.js +14 -23
- package/dist/resource/geometry/TriGeometryResSkeletonData.js.map +1 -1
- package/dist/resource/geometry/TriJointBinding.js +16 -24
- package/dist/resource/geometry/TriJointBinding.js.map +1 -1
- package/dist/resource/geometry/TriMorphTargetGeometryConstants.js +22 -27
- package/dist/resource/geometry/TriMorphTargetGeometryConstants.js.map +1 -1
- package/dist/resource/geometry/TriRtGeometryConstants.js +50 -41
- package/dist/resource/geometry/TriRtGeometryConstants.js.map +1 -1
- package/dist/resource/geometry/granny/GStateBindingCallbackData.js +12 -22
- package/dist/resource/geometry/granny/GStateBindingCallbackData.js.map +1 -1
- package/dist/resource/geometry/granny/Tr2GrannyIntersectionResult.js +30 -31
- package/dist/resource/geometry/granny/Tr2GrannyIntersectionResult.js.map +1 -1
- package/dist/resource/index.js +1 -1
- package/dist/resource/shader/reflection/Tr2EffectConstant.js +16 -17
- package/dist/resource/shader/reflection/Tr2EffectConstant.js.map +1 -1
- package/dist/resource/shader/reflection/Tr2EffectDescription.js +26 -28
- package/dist/resource/shader/reflection/Tr2EffectDescription.js.map +1 -1
- package/dist/resource/shader/reflection/Tr2EffectLibrary.js +24 -25
- package/dist/resource/shader/reflection/Tr2EffectLibrary.js.map +1 -1
- package/dist/resource/shader/reflection/Tr2EffectParameterAnnotation.js +21 -22
- package/dist/resource/shader/reflection/Tr2EffectParameterAnnotation.js.map +1 -1
- package/dist/resource/shader/reflection/Tr2EffectResource.js +25 -26
- package/dist/resource/shader/reflection/Tr2EffectResource.js.map +1 -1
- package/dist/resource/shader/reflection/Tr2EffectStageInput.js +69 -72
- package/dist/resource/shader/reflection/Tr2EffectStageInput.js.map +1 -1
- package/dist/resource/shader/reflection/Tr2EffectTechnique.js +17 -18
- package/dist/resource/shader/reflection/Tr2EffectTechnique.js.map +1 -1
- package/dist/resource/shader/reflection/Tr2Pass.js +42 -43
- package/dist/resource/shader/reflection/Tr2Pass.js.map +1 -1
- package/dist/resource/shader/reflection/Tr2RenderStateSetup.js +26 -5
- package/dist/resource/shader/reflection/Tr2RenderStateSetup.js.map +1 -1
- package/dist/resource/shader/reflection/carbonRecordFields.js +87 -90
- package/dist/resource/shader/reflection/carbonRecordFields.js.map +1 -1
- package/dist/resource/shader/sampler/Tr2SamplerSetup.js +32 -34
- package/dist/resource/shader/sampler/Tr2SamplerSetup.js.map +1 -1
- package/dist/resource/texture/CjsTextureArrayRes.js +1 -6
- package/dist/resource/texture/CjsTextureArrayRes.js.map +1 -1
- package/dist/resource/texture/Tr2TextureLodManager.js +35 -27
- package/dist/resource/texture/Tr2TextureLodManager.js.map +1 -1
- package/dist/resource/texture/Tr2TextureLodUpdateRequest.js +16 -24
- package/dist/resource/texture/Tr2TextureLodUpdateRequest.js.map +1 -1
- package/dist/resource/texture/Tr2TexturePackChannel.js +16 -24
- package/dist/resource/texture/Tr2TexturePackChannel.js.map +1 -1
- package/dist/resource/texture/Tr2TexturePipeline.js +24 -20
- package/dist/resource/texture/Tr2TexturePipeline.js.map +1 -1
- package/dist/resource/texture/Tr2TexturePipelineParams.js +14 -23
- package/dist/resource/texture/Tr2TexturePipelineParams.js.map +1 -1
- package/dist/resource/texture/Tr2TexturePipelineStepCompress.js +18 -25
- package/dist/resource/texture/Tr2TexturePipelineStepCompress.js.map +1 -1
- package/dist/resource/texture/Tr2TexturePipelineStepGenerateMips.js +11 -16
- package/dist/resource/texture/Tr2TexturePipelineStepGenerateMips.js.map +1 -1
- package/dist/resource/texture/Tr2TexturePipelineStepLimitSize.js +14 -23
- package/dist/resource/texture/Tr2TexturePipelineStepLimitSize.js.map +1 -1
- package/dist/resource/texture/Tr2TexturePipelineStepLoad.js +12 -22
- package/dist/resource/texture/Tr2TexturePipelineStepLoad.js.map +1 -1
- package/dist/resource/texture/Tr2TexturePipelineStepPack.js +38 -26
- package/dist/resource/texture/Tr2TexturePipelineStepPack.js.map +1 -1
- package/dist/resource/worker/CjsResManMainThreadLoader.js +2 -5
- package/dist/resource/worker/CjsResManMainThreadLoader.js.map +1 -1
- package/dist/resource/worker/CjsResManWorkerLoader.js +6 -7
- package/dist/resource/worker/CjsResManWorkerLoader.js.map +1 -1
- package/dist/resource/worker/protocol.js +18 -1
- package/dist/resource/worker/protocol.js.map +1 -1
- package/dist/sof/EveSOF.js +2 -222
- package/dist/sof/EveSOF.js.map +1 -1
- package/dist/sof/SofDocumentBuilder.js +205 -0
- package/dist/sof/SofDocumentBuilder.js.map +1 -0
- package/dist/sof/faction/ErrSOFFactionColorSetTypeNotFound.js +16 -0
- package/dist/sof/faction/ErrSOFFactionColorSetTypeNotFound.js.map +1 -0
- package/dist/sof/faction/ErrSOFFactionColorSetTypeUnknown.js +16 -0
- package/dist/sof/faction/ErrSOFFactionColorSetTypeUnknown.js.map +1 -0
- package/dist/sof/faction/EveSOFDataFactionColorSet.js +3 -27
- package/dist/sof/faction/EveSOFDataFactionColorSet.js.map +1 -1
- package/dist/sof/faction/index.js +3 -1
- package/dist/sof/faction/index.js.map +1 -1
- package/dist/sof/generic/ErrSOFAreaShaderNotFound.js +18 -0
- package/dist/sof/generic/ErrSOFAreaShaderNotFound.js.map +1 -0
- package/dist/sof/generic/ErrSOFDecalShaderNotFound.js +18 -0
- package/dist/sof/generic/ErrSOFDecalShaderNotFound.js.map +1 -0
- package/dist/sof/generic/ErrSOFMaterialPrefixNotFound.js +21 -0
- package/dist/sof/generic/ErrSOFMaterialPrefixNotFound.js.map +1 -0
- package/dist/sof/generic/ErrSOFPatternMaterialPrefixNotFound.js +21 -0
- package/dist/sof/generic/ErrSOFPatternMaterialPrefixNotFound.js.map +1 -0
- package/dist/sof/generic/EveSOFDataGeneric.js +5 -69
- package/dist/sof/generic/EveSOFDataGeneric.js.map +1 -1
- package/dist/sof/generic/index.js +5 -1
- package/dist/sof/generic/index.js.map +1 -1
- package/dist/sof/index.js +23 -7
- package/dist/sof/index.js.map +1 -1
- package/dist/sof/pattern/ErrSOFProjectionNotFound.js +20 -0
- package/dist/sof/pattern/ErrSOFProjectionNotFound.js.map +1 -0
- package/dist/sof/pattern/EveSOFDataPattern.js +2 -17
- package/dist/sof/pattern/EveSOFDataPattern.js.map +1 -1
- package/dist/sof/pattern/index.js +2 -1
- package/dist/sof/pattern/index.js.map +1 -1
- package/dist/sof/shared/ErrSOFAreaTypeNotFound.js +16 -0
- package/dist/sof/shared/ErrSOFAreaTypeNotFound.js.map +1 -0
- package/dist/sof/shared/ErrSOFLogoSetTypeNotFound.js +16 -0
- package/dist/sof/shared/ErrSOFLogoSetTypeNotFound.js.map +1 -0
- package/dist/sof/shared/ErrSOFLogoSetTypeUnknown.js +16 -0
- package/dist/sof/shared/ErrSOFLogoSetTypeUnknown.js.map +1 -0
- package/dist/sof/shared/EveSOFDataArea.js +2 -13
- package/dist/sof/shared/EveSOFDataArea.js.map +1 -1
- package/dist/sof/shared/EveSOFDataLogoSet.js +3 -27
- package/dist/sof/shared/EveSOFDataLogoSet.js.map +1 -1
- package/dist/sof/shared/EveSOFDataParameter.js +2 -146
- package/dist/sof/shared/EveSOFDataParameter.js.map +1 -1
- package/dist/sof/shared/EveSOFDataParameterBool.js +40 -0
- package/dist/sof/shared/EveSOFDataParameterBool.js.map +1 -0
- package/dist/sof/shared/EveSOFDataParameterColor.js +36 -0
- package/dist/sof/shared/EveSOFDataParameterColor.js.map +1 -0
- package/dist/sof/shared/EveSOFDataParameterFloat.js +37 -0
- package/dist/sof/shared/EveSOFDataParameterFloat.js.map +1 -0
- package/dist/sof/shared/EveSOFDataParameterInt.js +37 -0
- package/dist/sof/shared/EveSOFDataParameterInt.js.map +1 -0
- package/dist/sof/shared/EveSOFDataParameterVector2.js +37 -0
- package/dist/sof/shared/EveSOFDataParameterVector2.js.map +1 -0
- package/dist/sof/shared/EveSOFDataParameterVector3.js +37 -0
- package/dist/sof/shared/EveSOFDataParameterVector3.js.map +1 -0
- package/dist/sof/shared/{EveSOFDataSpotlightAttachment.js → EveSOFDataSpotLightAttachment.js} +1 -1
- package/dist/sof/shared/{EveSOFDataSpotlightAttachment.js.map → EveSOFDataSpotLightAttachment.js.map} +1 -1
- package/dist/sof/shared/index.js +13 -4
- package/dist/sof/shared/index.js.map +1 -1
- package/dist/sof/sofDocumentValues.js +33 -0
- package/dist/sof/sofDocumentValues.js.map +1 -0
- package/dist/trinity/controllers/ITr2Controller/ITr2ActionController.js +168 -0
- package/dist/trinity/controllers/ITr2Controller/ITr2ActionController.js.map +1 -0
- package/dist/trinity/controllers/{ITr2Controller.js → ITr2Controller/ITr2Controller.js} +2 -134
- package/dist/trinity/controllers/ITr2Controller/ITr2Controller.js.map +1 -0
- package/dist/trinity/controllers/Tr2Controller.js +2 -1
- package/dist/trinity/controllers/Tr2Controller.js.map +1 -1
- package/dist/trinity/controllers/Tr2ControllerReference.js +2 -1
- package/dist/trinity/controllers/Tr2ControllerReference.js.map +1 -1
- package/dist/trinity/controllers/action/ITr2ControllerAction.js +2 -1
- package/dist/trinity/controllers/action/ITr2ControllerAction.js.map +1 -1
- package/dist/trinity/controllers/action/Tr2ActionSpawnParticles.js +10 -9
- package/dist/trinity/controllers/action/Tr2ActionSpawnParticles.js.map +1 -1
- package/dist/trinity/controllers/expression/CjsControllerExpressionCompileError.js +26 -0
- package/dist/trinity/controllers/expression/CjsControllerExpressionCompileError.js.map +1 -0
- package/dist/trinity/controllers/expression/CjsControllerExpressionEvaluateError.js +24 -0
- package/dist/trinity/controllers/expression/CjsControllerExpressionEvaluateError.js.map +1 -0
- package/dist/trinity/controllers/expression/CjsControllerExpressionParser.js +387 -0
- package/dist/trinity/controllers/expression/CjsControllerExpressionParser.js.map +1 -0
- package/dist/trinity/controllers/expression/CjsControllerExpressionProgram.js +4 -1011
- package/dist/trinity/controllers/expression/CjsControllerExpressionProgram.js.map +1 -1
- package/dist/trinity/controllers/expression/expressionRuntime.js +605 -0
- package/dist/trinity/controllers/expression/expressionRuntime.js.map +1 -0
- package/dist/trinity/controllers/index.js +5 -2
- package/dist/trinity/controllers/index.js.map +1 -1
- package/dist/trinity/controllers/state/ITr2StateMachineStateFinalizer.js +2 -1
- package/dist/trinity/controllers/state/ITr2StateMachineStateFinalizer.js.map +1 -1
- package/dist/trinity/controllers/timeline/Tr2TimelineController.js +2 -1
- package/dist/trinity/controllers/timeline/Tr2TimelineController.js.map +1 -1
- package/dist/trinity/core/ITr2Updateable.js +2 -1
- package/dist/trinity/core/ITr2Updateable.js.map +1 -1
- package/dist/trinity/core/Tr2Blitter.js +6 -3
- package/dist/trinity/core/Tr2Blitter.js.map +1 -1
- package/dist/trinity/core/Tr2Denoiser.js +256 -0
- package/dist/trinity/core/Tr2Denoiser.js.map +1 -0
- package/dist/trinity/core/Tr2GpuResourcePool/GpuResourceHandle.js +115 -0
- package/dist/trinity/core/Tr2GpuResourcePool/GpuResourceHandle.js.map +1 -0
- package/dist/trinity/core/Tr2GpuResourcePool/TextureSize2D.js +79 -0
- package/dist/trinity/core/Tr2GpuResourcePool/TextureSize2D.js.map +1 -0
- package/dist/trinity/core/{Tr2GpuResourcePool.js → Tr2GpuResourcePool/Tr2GpuResourcePool.js} +63 -151
- package/dist/trinity/core/Tr2GpuResourcePool/Tr2GpuResourcePool.js.map +1 -0
- package/dist/trinity/core/{Tr2QuadRenderer.js → Tr2QuadRenderer/Tr2QuadRenderer.js} +8 -30
- package/dist/trinity/core/Tr2QuadRenderer/Tr2QuadRenderer.js.map +1 -0
- package/dist/trinity/core/Tr2QuadRenderer/Tr2QuadRendererEffectRecord.js +38 -0
- package/dist/trinity/core/Tr2QuadRenderer/Tr2QuadRendererEffectRecord.js.map +1 -0
- package/dist/trinity/core/Tr2RenderUtils.js +20 -3
- package/dist/trinity/core/Tr2RenderUtils.js.map +1 -1
- package/dist/trinity/core/Tr2Renderer.js +146 -1
- package/dist/trinity/core/Tr2Renderer.js.map +1 -1
- package/dist/trinity/core/Tr2ShadowMap.js +135 -14
- package/dist/trinity/core/Tr2ShadowMap.js.map +1 -1
- package/dist/trinity/core/{Tr2TextureArray.js → Tr2TextureArray/Tr2TextureArray.js} +3 -58
- package/dist/trinity/core/Tr2TextureArray/Tr2TextureArray.js.map +1 -0
- package/dist/trinity/core/Tr2TextureArray/Tr2TextureArrayElement.js +61 -0
- package/dist/trinity/core/Tr2TextureArray/Tr2TextureArrayElement.js.map +1 -0
- package/dist/trinity/core/batch/TriRenderBatch/DefaultKeyGenerator.js +26 -0
- package/dist/trinity/core/batch/TriRenderBatch/DefaultKeyGenerator.js.map +1 -0
- package/dist/trinity/core/batch/TriRenderBatch/EffectKeyGenerator.js +29 -0
- package/dist/trinity/core/batch/TriRenderBatch/EffectKeyGenerator.js.map +1 -0
- package/dist/trinity/core/batch/{ITriRenderBatchAccumulator.js → TriRenderBatch/ITriRenderBatchAccumulator.js} +30 -30
- package/dist/trinity/core/batch/TriRenderBatch/ITriRenderBatchAccumulator.js.map +1 -0
- package/dist/trinity/core/batch/{Tr2RenderBatch.js → TriRenderBatch/Tr2RenderBatch.js} +81 -154
- package/dist/trinity/core/batch/TriRenderBatch/Tr2RenderBatch.js.map +1 -0
- package/dist/trinity/core/batch/{TriRenderBatchAccumulator.js → TriRenderBatch/TriRenderBatchAccumulator.js} +7 -38
- package/dist/trinity/core/batch/TriRenderBatch/TriRenderBatchAccumulator.js.map +1 -0
- package/dist/trinity/core/batch/TriRenderBatch/TriRenderBatchAreaBlock.js +61 -0
- package/dist/trinity/core/batch/TriRenderBatch/TriRenderBatchAreaBlock.js.map +1 -0
- package/dist/trinity/core/batch/TriRenderBatch/TriRenderBatchAreaBlocksWithSharedMaterial.js +40 -0
- package/dist/trinity/core/batch/TriRenderBatch/TriRenderBatchAreaBlocksWithSharedMaterial.js.map +1 -0
- package/dist/trinity/core/batch/TriRenderBatchMap.js +6 -1
- package/dist/trinity/core/batch/TriRenderBatchMap.js.map +1 -1
- package/dist/trinity/core/context/Tr2RenderContext.js +75 -57
- package/dist/trinity/core/context/Tr2RenderContext.js.map +1 -1
- package/dist/trinity/core/context/Tr2VisibilityResults/Tr2VisibilityEvent.js +67 -0
- package/dist/trinity/core/context/Tr2VisibilityResults/Tr2VisibilityEvent.js.map +1 -0
- package/dist/trinity/core/context/Tr2VisibilityResults/Tr2VisibilityResults.js +50 -0
- package/dist/trinity/core/context/Tr2VisibilityResults/Tr2VisibilityResults.js.map +1 -0
- package/dist/trinity/core/device/Tr2DepthStencil.js +186 -13
- package/dist/trinity/core/device/Tr2DepthStencil.js.map +1 -1
- package/dist/trinity/core/device/{Tr2RingBuffer.js → Tr2RingBuffer/Tr2RingBuffer.js} +27 -79
- package/dist/trinity/core/device/Tr2RingBuffer/Tr2RingBuffer.js.map +1 -0
- package/dist/trinity/core/device/Tr2RingBuffer/Tr2RingBufferOffsets.js +114 -0
- package/dist/trinity/core/device/Tr2RingBuffer/Tr2RingBufferOffsets.js.map +1 -0
- package/dist/trinity/core/device/{Tr2SuballocatedBuffer.js → Tr2SuballocatedBuffer/Tr2SuballocatedBuffer.js} +5 -59
- package/dist/trinity/core/device/Tr2SuballocatedBuffer/Tr2SuballocatedBuffer.js.map +1 -0
- package/dist/trinity/core/device/Tr2SuballocatedBuffer/Tr2SuballocatedBufferAllocation.js +80 -0
- package/dist/trinity/core/device/Tr2SuballocatedBuffer/Tr2SuballocatedBufferAllocation.js.map +1 -0
- package/dist/trinity/core/index.js +42 -15
- package/dist/trinity/core/index.js.map +1 -1
- package/dist/trinity/core/lighting/Tr2LightManager.js +6 -1
- package/dist/trinity/core/lighting/Tr2LightManager.js.map +1 -1
- package/dist/trinity/core/mesh/{ITr2ImpostorSource.js → ITr2ImpostorSource/ITr2ImpostorSource.js} +6 -28
- package/dist/trinity/core/mesh/ITr2ImpostorSource/ITr2ImpostorSource.js.map +1 -0
- package/dist/trinity/core/mesh/ITr2ImpostorSource/ITr2ImpostorSourceImpostorHash.js +32 -0
- package/dist/trinity/core/mesh/ITr2ImpostorSource/ITr2ImpostorSourceImpostorHash.js.map +1 -0
- package/dist/trinity/core/mesh/{ITr2InstanceData.js → ITr2InstanceData/ITr2InstanceData.js} +5 -29
- package/dist/trinity/core/mesh/ITr2InstanceData/ITr2InstanceData.js.map +1 -0
- package/dist/trinity/core/mesh/ITr2InstanceData/ITr2InstanceDataInstanceData.js +33 -0
- package/dist/trinity/core/mesh/ITr2InstanceData/ITr2InstanceDataInstanceData.js.map +1 -0
- package/dist/trinity/core/mesh/Tr2DirectInstanceData.js +2 -1
- package/dist/trinity/core/mesh/Tr2DirectInstanceData.js.map +1 -1
- package/dist/trinity/core/mesh/Tr2MeshBase.js +7 -1
- package/dist/trinity/core/mesh/Tr2MeshBase.js.map +1 -1
- package/dist/trinity/core/mesh/Tr2RuntimeInstanceData.js +2 -1
- package/dist/trinity/core/mesh/Tr2RuntimeInstanceData.js.map +1 -1
- package/dist/trinity/core/mesh/TriGeometryResAllocations.js +6 -2
- package/dist/trinity/core/mesh/TriGeometryResAllocations.js.map +1 -1
- package/dist/trinity/core/rawData/CjsConstantLayout.js +196 -0
- package/dist/trinity/core/rawData/CjsConstantLayout.js.map +1 -0
- package/dist/trinity/core/rawData/CjsPerFrameLayouts.js +8 -3
- package/dist/trinity/core/rawData/CjsPerFrameLayouts.js.map +1 -1
- package/dist/trinity/core/rawData/CjsPerObjectLayouts.js +40 -732
- package/dist/trinity/core/rawData/CjsPerObjectLayouts.js.map +1 -1
- package/dist/trinity/core/rawData/layouts/CjsEveBasicLayout.js +34 -0
- package/dist/trinity/core/rawData/layouts/CjsEveBasicLayout.js.map +1 -0
- package/dist/trinity/core/rawData/layouts/CjsEveBoosterSetLayout.js +69 -0
- package/dist/trinity/core/rawData/layouts/CjsEveBoosterSetLayout.js.map +1 -0
- package/dist/trinity/core/rawData/layouts/CjsEveChildBoosterSetLayout.js +59 -0
- package/dist/trinity/core/rawData/layouts/CjsEveChildBoosterSetLayout.js.map +1 -0
- package/dist/trinity/core/rawData/layouts/CjsEveChildBulletStormLayout.js +37 -0
- package/dist/trinity/core/rawData/layouts/CjsEveChildBulletStormLayout.js.map +1 -0
- package/dist/trinity/core/rawData/layouts/CjsEveChildSpherePinLayout.js +44 -0
- package/dist/trinity/core/rawData/layouts/CjsEveChildSpherePinLayout.js.map +1 -0
- package/dist/trinity/core/rawData/layouts/CjsEveLensflareLayout.js +31 -0
- package/dist/trinity/core/rawData/layouts/CjsEveLensflareLayout.js.map +1 -0
- package/dist/trinity/core/rawData/layouts/CjsEveMissileWarheadLayout.js +29 -0
- package/dist/trinity/core/rawData/layouts/CjsEveMissileWarheadLayout.js.map +1 -0
- package/dist/trinity/core/rawData/layouts/CjsEvePerObjectLayout.js +39 -0
- package/dist/trinity/core/rawData/layouts/CjsEvePerObjectLayout.js.map +1 -0
- package/dist/trinity/core/rawData/layouts/CjsEveSceneStaticParticlesLayout.js +30 -0
- package/dist/trinity/core/rawData/layouts/CjsEveSceneStaticParticlesLayout.js.map +1 -0
- package/dist/trinity/core/rawData/layouts/CjsEveSpaceObjectDecalLayout.js +78 -0
- package/dist/trinity/core/rawData/layouts/CjsEveSpaceObjectDecalLayout.js.map +1 -0
- package/dist/trinity/core/rawData/layouts/CjsEveSpaceObjectLayout.js +169 -0
- package/dist/trinity/core/rawData/layouts/CjsEveSpaceObjectLayout.js.map +1 -0
- package/dist/trinity/core/rawData/layouts/CjsEveSpacePerObjectLayout.js +107 -0
- package/dist/trinity/core/rawData/layouts/CjsEveSpacePerObjectLayout.js.map +1 -0
- package/dist/trinity/core/rawData/layouts/CjsEveSpherePinLayout.js +44 -0
- package/dist/trinity/core/rawData/layouts/CjsEveSpherePinLayout.js.map +1 -0
- package/dist/trinity/core/rawData/layouts/CjsEveStretch2Layout.js +34 -0
- package/dist/trinity/core/rawData/layouts/CjsEveStretch2Layout.js.map +1 -0
- package/dist/trinity/core/rawData/layouts/CjsEveTurretSetLayout.js +82 -0
- package/dist/trinity/core/rawData/layouts/CjsEveTurretSetLayout.js.map +1 -0
- package/dist/trinity/core/rawData/layouts/CjsTr2PerObjectLayout.js +42 -0
- package/dist/trinity/core/rawData/layouts/CjsTr2PerObjectLayout.js.map +1 -0
- package/dist/trinity/core/rawData/perObjectData/EveBasicPerObjectData.js +55 -0
- package/dist/trinity/core/rawData/perObjectData/EveBasicPerObjectData.js.map +1 -0
- package/dist/trinity/core/rawData/perObjectData/EveBoosterSetPerObjectData.js +59 -0
- package/dist/trinity/core/rawData/perObjectData/EveBoosterSetPerObjectData.js.map +1 -0
- package/dist/trinity/core/rawData/perObjectData/EveChildBoosterSetPerObjectData.js +59 -0
- package/dist/trinity/core/rawData/perObjectData/EveChildBoosterSetPerObjectData.js.map +1 -0
- package/dist/trinity/core/rawData/perObjectData/EveChildBulletStormPerObjectData.js +55 -0
- package/dist/trinity/core/rawData/perObjectData/EveChildBulletStormPerObjectData.js.map +1 -0
- package/dist/trinity/core/rawData/perObjectData/EveChildSpherePinPerObjectData.js +55 -0
- package/dist/trinity/core/rawData/perObjectData/EveChildSpherePinPerObjectData.js.map +1 -0
- package/dist/trinity/core/rawData/perObjectData/EveDecalPerObjectData.js +59 -0
- package/dist/trinity/core/rawData/perObjectData/EveDecalPerObjectData.js.map +1 -0
- package/dist/trinity/core/rawData/perObjectData/EveLensflarePerObjectData.js +55 -0
- package/dist/trinity/core/rawData/perObjectData/EveLensflarePerObjectData.js.map +1 -0
- package/dist/trinity/core/rawData/perObjectData/EveMissileWarheadPerObjectData.js +55 -0
- package/dist/trinity/core/rawData/perObjectData/EveMissileWarheadPerObjectData.js.map +1 -0
- package/dist/trinity/core/rawData/perObjectData/EveSceneStaticParticlesPerObjectData.js +55 -0
- package/dist/trinity/core/rawData/perObjectData/EveSceneStaticParticlesPerObjectData.js.map +1 -0
- package/dist/trinity/core/rawData/perObjectData/EveSpherePinPerObjectData.js +55 -0
- package/dist/trinity/core/rawData/perObjectData/EveSpherePinPerObjectData.js.map +1 -0
- package/dist/trinity/core/rawData/perObjectData/EveTurretSetPerObjectData.js +59 -0
- package/dist/trinity/core/rawData/perObjectData/EveTurretSetPerObjectData.js.map +1 -0
- package/dist/trinity/core/rawData/perObjectData/StretchPerObjectData.js +55 -0
- package/dist/trinity/core/rawData/perObjectData/StretchPerObjectData.js.map +1 -0
- package/dist/trinity/core/rawData/{Tr2PerObjectData.js → perObjectData/Tr2PerObjectData.js} +110 -62
- package/dist/trinity/core/rawData/perObjectData/Tr2PerObjectData.js.map +1 -0
- package/dist/trinity/core/rawData/perObjectData/Tr2PerObjectDataPSBuffer.js +104 -0
- package/dist/trinity/core/rawData/perObjectData/Tr2PerObjectDataPSBuffer.js.map +1 -0
- package/dist/trinity/core/rawData/perObjectData/Tr2PerObjectDataStandard.js +87 -0
- package/dist/trinity/core/rawData/perObjectData/Tr2PerObjectDataStandard.js.map +1 -0
- package/dist/trinity/core/variable/TriVariable.js +83 -83
- package/dist/trinity/core/variable/TriVariable.js.map +1 -1
- package/dist/trinity/core/vertex/{Tr2VertexDefinition.js → Tr2VertexDefinition/Tr2VertexDefinition.js} +4 -20
- package/dist/trinity/core/vertex/Tr2VertexDefinition/Tr2VertexDefinition.js.map +1 -0
- package/dist/trinity/core/vertex/Tr2VertexDefinition/Tr2VertexDefinitionItem.js +29 -0
- package/dist/trinity/core/vertex/Tr2VertexDefinition/Tr2VertexDefinitionItem.js.map +1 -0
- package/dist/trinity/core/volumetrics/Tr2VolumetricsRenderer.js +116 -36
- package/dist/trinity/core/volumetrics/Tr2VolumetricsRenderer.js.map +1 -1
- package/dist/trinity/curves/curve/Tr2CurveRandomAxisRotation.js +50 -92
- package/dist/trinity/curves/curve/Tr2CurveRandomAxisRotation.js.map +1 -1
- package/dist/trinity/eve/EveModularObjectModifier.js +9 -5
- package/dist/trinity/eve/EveModularObjectModifier.js.map +1 -1
- package/dist/trinity/eve/IEveInheritPropertiesOwner.js +2 -1
- package/dist/trinity/eve/IEveInheritPropertiesOwner.js.map +1 -1
- package/dist/trinity/eve/IEveSpaceObject2.js +2 -1
- package/dist/trinity/eve/IEveSpaceObject2.js.map +1 -1
- package/dist/trinity/eve/IEveTransform.js +2 -1
- package/dist/trinity/eve/IEveTransform.js.map +1 -1
- package/dist/trinity/eve/attachment/banner/EveBannerSet.js +2 -2
- package/dist/trinity/eve/attachment/banner/EveBannerSet.js.map +1 -1
- package/dist/trinity/eve/attachment/booster/EveBoosterSet2.js +109 -133
- package/dist/trinity/eve/attachment/booster/EveBoosterSet2.js.map +1 -1
- package/dist/trinity/eve/attachment/booster/EveBoosterSet2Item.js +40 -0
- package/dist/trinity/eve/attachment/booster/EveBoosterSet2Item.js.map +1 -0
- package/dist/trinity/eve/attachment/booster/EveBoosterSet2Renderable.js +1 -1
- package/dist/trinity/eve/attachment/booster/EveBoosterSet2Renderable.js.map +1 -1
- package/dist/trinity/eve/attachment/decal/DecalMeshCache.js +2 -14
- package/dist/trinity/eve/attachment/decal/DecalMeshCache.js.map +1 -1
- package/dist/trinity/eve/attachment/decal/DecalMeshCacheMeshBuffers.js +18 -0
- package/dist/trinity/eve/attachment/decal/DecalMeshCacheMeshBuffers.js.map +1 -0
- package/dist/trinity/eve/attachment/decal/EveSpaceObjectDecal.js +1 -1
- package/dist/trinity/eve/attachment/decal/EveSpaceObjectDecal.js.map +1 -1
- package/dist/trinity/eve/attachment/haze/EveHazeSet.js +1 -1
- package/dist/trinity/eve/attachment/haze/EveHazeSet.js.map +1 -1
- package/dist/trinity/eve/attachment/plane/EvePlaneSet.js +1 -1
- package/dist/trinity/eve/attachment/plane/EvePlaneSet.js.map +1 -1
- package/dist/trinity/eve/attachment/spotlight/EveSpotlightSet.js +2 -2
- package/dist/trinity/eve/attachment/spotlight/EveSpotlightSet.js.map +1 -1
- package/dist/trinity/eve/attachment/sprite/EveSpriteLineSet.js +1 -1
- package/dist/trinity/eve/attachment/sprite/EveSpriteLineSet.js.map +1 -1
- package/dist/trinity/eve/attachment/sprite/EveSpriteSet.js +4 -2
- package/dist/trinity/eve/attachment/sprite/EveSpriteSet.js.map +1 -1
- package/dist/trinity/eve/attachment/turrets/EveTurretSet.js +143 -139
- package/dist/trinity/eve/attachment/turrets/EveTurretSet.js.map +1 -1
- package/dist/trinity/eve/camera/EveCamera.js +1 -1
- package/dist/trinity/eve/camera/EveCamera.js.map +1 -1
- package/dist/trinity/eve/child/EveChildBoosterSet.js +12 -1
- package/dist/trinity/eve/child/EveChildBoosterSet.js.map +1 -1
- package/dist/trinity/eve/child/EveChildCloud2.js +178 -151
- package/dist/trinity/eve/child/EveChildCloud2.js.map +1 -1
- package/dist/trinity/eve/child/EveChildContainer.js +141 -141
- package/dist/trinity/eve/child/EveChildContainer.js.map +1 -1
- package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMesh.js +87 -0
- package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMesh.js.map +1 -0
- package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMeshArea.js +46 -0
- package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMeshArea.js.map +1 -0
- package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMeshInstance.js +35 -0
- package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMeshInstance.js.map +1 -0
- package/dist/trinity/eve/child/{EveChildInstancedMeshes.js → EveChildInstancedMeshes/EveChildInstancedMeshes.js} +42 -163
- package/dist/trinity/eve/child/EveChildInstancedMeshes/EveChildInstancedMeshes.js.map +1 -0
- package/dist/trinity/eve/child/EveChildMesh.js +218 -218
- package/dist/trinity/eve/child/EveChildMesh.js.map +1 -1
- package/dist/trinity/eve/child/EveChildPartData/EveChildPartData.js +53 -0
- package/dist/trinity/eve/child/EveChildPartData/EveChildPartData.js.map +1 -0
- package/dist/trinity/eve/child/{EveChildPartData.js → EveChildPartData/EveChildPartDataPartData.js} +9 -45
- package/dist/trinity/eve/child/EveChildPartData/EveChildPartDataPartData.js.map +1 -0
- package/dist/trinity/eve/child/EveChildParticleSystem.js +30 -29
- package/dist/trinity/eve/child/EveChildParticleSystem.js.map +1 -1
- package/dist/trinity/eve/child/EveChildTransform.js +5 -0
- package/dist/trinity/eve/child/EveChildTransform.js.map +1 -1
- package/dist/trinity/eve/child/EveChildTurret.js +7 -0
- package/dist/trinity/eve/child/EveChildTurret.js.map +1 -1
- package/dist/trinity/eve/index.js +10 -4
- package/dist/trinity/eve/index.js.map +1 -1
- package/dist/trinity/eve/lights/Tr2Light.js +5 -0
- package/dist/trinity/eve/lights/Tr2Light.js.map +1 -1
- package/dist/trinity/eve/overlays/overlayBatches.js +6 -1
- package/dist/trinity/eve/overlays/overlayBatches.js.map +1 -1
- package/dist/trinity/eve/particles/static/EveSceneStaticParticles.js +4 -4
- package/dist/trinity/eve/particles/static/EveSceneStaticParticles.js.map +1 -1
- package/dist/trinity/eve/renderable/stretch/EveStretch2.js +76 -71
- package/dist/trinity/eve/renderable/stretch/EveStretch2.js.map +1 -1
- package/dist/trinity/eve/renderable/stretch/EveStretch3.js +1 -1
- package/dist/trinity/eve/renderable/stretch/EveStretch3.js.map +1 -1
- package/dist/trinity/eve/spaceObject/EveShip2.js +3 -3
- package/dist/trinity/eve/spaceObject/EveShip2.js.map +1 -1
- package/dist/trinity/eve/spaceObject/EveSpaceObject2.js +408 -407
- package/dist/trinity/eve/spaceObject/EveSpaceObject2.js.map +1 -1
- package/dist/trinity/eve/ui/EveTacticalOverlay.js +1 -1
- package/dist/trinity/eve/ui/EveTacticalOverlay.js.map +1 -1
- package/dist/trinity/eve/ui/lines/EveCurveLineSet.js +9 -9
- package/dist/trinity/eve/ui/lines/EveCurveLineSet.js.map +1 -1
- package/dist/trinity/eve/ui/lines/EveLineSet.js +27 -25
- package/dist/trinity/eve/ui/lines/EveLineSet.js.map +1 -1
- package/dist/trinity/eve/ui/tacticalOverlay/EveTacticalTrails.js +3 -2
- package/dist/trinity/eve/ui/tacticalOverlay/EveTacticalTrails.js.map +1 -1
- package/dist/trinity/generated/index.js +0 -1
- package/dist/trinity/generated/index.js.map +1 -1
- package/dist/trinity/generated/trinityCore/index.js +0 -1
- package/dist/trinity/generated/trinityCore/index.js.map +1 -1
- package/dist/trinity/index.js +59 -23
- package/dist/trinity/index.js.map +1 -1
- package/dist/trinity/particle/{ITr2GenericEmitter.js → ITr2GenericEmitter/ITr2GenericEmitter.js} +4 -32
- package/dist/trinity/particle/ITr2GenericEmitter/ITr2GenericEmitter.js.map +1 -0
- package/dist/trinity/particle/ITr2GenericEmitter/ITr2GenericEmitterUpdateArguments.js +36 -0
- package/dist/trinity/particle/ITr2GenericEmitter/ITr2GenericEmitterUpdateArguments.js.map +1 -0
- package/dist/trinity/particle/Tr2ParticleSystem.js +4 -2
- package/dist/trinity/particle/Tr2ParticleSystem.js.map +1 -1
- package/dist/trinity/particle/element/Tr2ParticleElementData.js +15 -4
- package/dist/trinity/particle/element/Tr2ParticleElementData.js.map +1 -1
- package/dist/trinity/particle/emitter/Tr2DynamicEmitter.js +21 -20
- package/dist/trinity/particle/emitter/Tr2DynamicEmitter.js.map +1 -1
- package/dist/trinity/particle/emitter/Tr2GpuSharedEmitter.js +23 -22
- package/dist/trinity/particle/emitter/Tr2GpuSharedEmitter.js.map +1 -1
- package/dist/trinity/particle/emitter/Tr2StaticEmitter.js +14 -13
- package/dist/trinity/particle/emitter/Tr2StaticEmitter.js.map +1 -1
- package/dist/trinity/particle/index.js +2 -1
- package/dist/trinity/particle/index.js.map +1 -1
- package/dist/trinity/renderJob/step/TriStepPushRenderTarget.js +7 -1
- package/dist/trinity/renderJob/step/TriStepPushRenderTarget.js.map +1 -1
- package/dist/trinity/shader/Tr2Effect.js +131 -58
- package/dist/trinity/shader/Tr2Effect.js.map +1 -1
- package/dist/trinity/shader/Tr2EffectStateManager.js +17 -5
- package/dist/trinity/shader/Tr2EffectStateManager.js.map +1 -1
- package/dist/trinity/shader/Tr2Material.js +21 -4
- package/dist/trinity/shader/Tr2Material.js.map +1 -1
- package/dist/trinity/shader/material/Tr2EffectPassParameters.js +4 -1
- package/dist/trinity/shader/material/Tr2EffectPassParameters.js.map +1 -1
- package/dist/trinity/shader/parameter/Tr2GeometryBufferParameter.js +2 -2
- package/dist/trinity/shader/parameter/Tr2GeometryBufferParameter.js.map +1 -1
- package/dist/trinityal/Tr2BufferAL/Tr2BufferDescriptionAL.js +79 -0
- package/dist/trinityal/Tr2BufferAL/Tr2BufferDescriptionAL.js.map +1 -0
- package/dist/trinityal/{Tr2DeviceResourceAL.js → Tr2DeviceResourceAL/Tr2BaseDeviceResourceAL.js} +77 -79
- package/dist/trinityal/Tr2DeviceResourceAL/Tr2BaseDeviceResourceAL.js.map +1 -0
- package/dist/trinityal/Tr2DeviceResourceAL/Tr2DeviceResourceAL.js +24 -0
- package/dist/trinityal/Tr2DeviceResourceAL/Tr2DeviceResourceAL.js.map +1 -0
- package/dist/trinityal/Tr2DrawUPHelper.js +2 -1
- package/dist/trinityal/Tr2DrawUPHelper.js.map +1 -1
- package/dist/trinityal/Tr2HalHelperStructures/Tr2MsaaDesc.js +45 -0
- package/dist/trinityal/Tr2HalHelperStructures/Tr2MsaaDesc.js.map +1 -0
- package/dist/trinityal/Tr2HalHelperStructures/Tr2SamplerDescription.js +154 -0
- package/dist/trinityal/Tr2HalHelperStructures/Tr2SamplerDescription.js.map +1 -0
- package/dist/trinityal/Tr2HalHelperStructures/Tr2SubresourceData.js +48 -0
- package/dist/trinityal/Tr2HalHelperStructures/Tr2SubresourceData.js.map +1 -0
- package/dist/trinityal/Tr2HalHelperStructures/Tr2TextureCoordBox.js +75 -0
- package/dist/trinityal/Tr2HalHelperStructures/Tr2TextureCoordBox.js.map +1 -0
- package/dist/trinityal/{Tr2HalHelperStructures.js → Tr2HalHelperStructures/Tr2TextureSubresource.js} +11 -115
- package/dist/trinityal/Tr2HalHelperStructures/Tr2TextureSubresource.js.map +1 -0
- package/dist/trinityal/Tr2HalHelperStructures/Tr2Viewport.js +51 -0
- package/dist/trinityal/Tr2HalHelperStructures/Tr2Viewport.js.map +1 -0
- package/dist/trinityal/{Tr2RenderPassAL.js → Tr2RenderPassAL/Tr2ColorAttachment.js} +5 -28
- package/dist/trinityal/Tr2RenderPassAL/Tr2ColorAttachment.js.map +1 -0
- package/dist/trinityal/Tr2RenderPassAL/Tr2DepthAttachment.js +38 -0
- package/dist/trinityal/Tr2RenderPassAL/Tr2DepthAttachment.js.map +1 -0
- package/dist/trinityal/Tr2ResourceSetAL/Tr2RegisterMapAL.js +80 -0
- package/dist/trinityal/Tr2ResourceSetAL/Tr2RegisterMapAL.js.map +1 -0
- package/dist/trinityal/Tr2ResourceSetAL/Tr2ResourceSetAL.js +76 -0
- package/dist/trinityal/Tr2ResourceSetAL/Tr2ResourceSetAL.js.map +1 -0
- package/dist/trinityal/Tr2ResourceSetAL/Tr2ResourceSetALStub.js +96 -0
- package/dist/trinityal/Tr2ResourceSetAL/Tr2ResourceSetALStub.js.map +1 -0
- package/dist/trinityal/Tr2ResourceSetAL/Tr2ResourceSetDescriptionAL.js +196 -0
- package/dist/trinityal/Tr2ResourceSetAL/Tr2ResourceSetDescriptionAL.js.map +1 -0
- package/dist/trinityal/index.js +22 -9
- package/dist/trinityal/index.js.map +1 -1
- package/dist/trinityal/stub/Tr2BufferALStub.js +86 -141
- package/dist/trinityal/stub/Tr2BufferALStub.js.map +1 -1
- package/dist/trinityal/stub/Tr2CapsALStub.js +17 -0
- package/dist/trinityal/stub/Tr2CapsALStub.js.map +1 -1
- package/dist/trinityal/stub/Tr2ConstantBufferALStub.js +57 -41
- package/dist/trinityal/stub/Tr2ConstantBufferALStub.js.map +1 -1
- package/dist/trinityal/stub/Tr2FenceALStub.js +18 -2
- package/dist/trinityal/stub/Tr2FenceALStub.js.map +1 -1
- package/dist/trinityal/stub/Tr2GpuTimerALStub.js +97 -0
- package/dist/trinityal/stub/Tr2GpuTimerALStub.js.map +1 -0
- package/dist/trinityal/stub/Tr2OcclusionQueryALStub.js +124 -0
- package/dist/trinityal/stub/Tr2OcclusionQueryALStub.js.map +1 -0
- package/dist/trinityal/stub/Tr2PipelineStatsQueryALStub/Tr2PipelineStatsQueryALStub.js +146 -0
- package/dist/trinityal/stub/Tr2PipelineStatsQueryALStub/Tr2PipelineStatsQueryALStub.js.map +1 -0
- package/dist/trinityal/stub/Tr2RenderContextALStub/Tr2BindlessResourcesAL.js +28 -0
- package/dist/trinityal/stub/Tr2RenderContextALStub/Tr2BindlessResourcesAL.js.map +1 -0
- package/dist/trinityal/stub/{Tr2RenderContextALStub.js → Tr2RenderContextALStub/Tr2RenderContextALStub.js} +70 -75
- package/dist/trinityal/stub/Tr2RenderContextALStub/Tr2RenderContextALStub.js.map +1 -0
- package/dist/trinityal/stub/Tr2SamplerStateALStub.js +47 -31
- package/dist/trinityal/stub/Tr2SamplerStateALStub.js.map +1 -1
- package/dist/trinityal/stub/Tr2ShaderALStub.js +61 -45
- package/dist/trinityal/stub/Tr2ShaderALStub.js.map +1 -1
- package/dist/trinityal/stub/Tr2ShaderProgramALStub.js +51 -33
- package/dist/trinityal/stub/Tr2ShaderProgramALStub.js.map +1 -1
- package/dist/trinityal/stub/Tr2SwapChainALStub.js +61 -45
- package/dist/trinityal/stub/Tr2SwapChainALStub.js.map +1 -1
- package/dist/trinityal/stub/Tr2TextureALStub.js +188 -171
- package/dist/trinityal/stub/Tr2TextureALStub.js.map +1 -1
- package/dist/trinityal/stub/Tr2VertexLayoutALStub.js +43 -27
- package/dist/trinityal/stub/Tr2VertexLayoutALStub.js.map +1 -1
- package/dist/trinityal/stub/{Tr2VideoAdapterInfoALStub.js → Tr2VideoAdapterInfoStub.js} +16 -1
- package/dist/trinityal/stub/Tr2VideoAdapterInfoStub.js.map +1 -0
- package/dist/trinityal/stub/index.js +8 -4
- package/dist/trinityal/stub/index.js.map +1 -1
- package/dist/trinityal/vertexLayoutMatch.js +2 -2
- package/dist/trinityal/vertexLayoutMatch.js.map +1 -1
- package/dist/trinityal/webgpu/CjsWebgpuBufferAL.js +105 -90
- package/dist/trinityal/webgpu/CjsWebgpuBufferAL.js.map +1 -1
- package/dist/trinityal/webgpu/CjsWebgpuCapsAL.js +17 -0
- package/dist/trinityal/webgpu/CjsWebgpuCapsAL.js.map +1 -1
- package/dist/trinityal/webgpu/CjsWebgpuConstantBufferAL.js +15 -0
- package/dist/trinityal/webgpu/CjsWebgpuConstantBufferAL.js.map +1 -1
- package/dist/trinityal/webgpu/CjsWebgpuDevice.js +2 -2
- package/dist/trinityal/webgpu/CjsWebgpuDevice.js.map +1 -1
- package/dist/trinityal/webgpu/CjsWebgpuRenderContextAL.js +900 -938
- package/dist/trinityal/webgpu/CjsWebgpuRenderContextAL.js.map +1 -1
- package/dist/trinityal/webgpu/CjsWebgpuResourceSetAL.js +56 -60
- package/dist/trinityal/webgpu/CjsWebgpuResourceSetAL.js.map +1 -1
- package/dist/trinityal/webgpu/CjsWebgpuSamplerStateAL.js +16 -1
- package/dist/trinityal/webgpu/CjsWebgpuSamplerStateAL.js.map +1 -1
- package/dist/trinityal/webgpu/CjsWebgpuShaderAL.js +100 -379
- package/dist/trinityal/webgpu/CjsWebgpuShaderAL.js.map +1 -1
- package/dist/trinityal/webgpu/CjsWebgpuShaderProgramAL.js +330 -0
- package/dist/trinityal/webgpu/CjsWebgpuShaderProgramAL.js.map +1 -0
- package/dist/trinityal/webgpu/CjsWebgpuTextureAL.js +15 -0
- package/dist/trinityal/webgpu/CjsWebgpuTextureAL.js.map +1 -1
- package/dist/trinityal/webgpu/core/{constantArena.js → CjsWebgpuConstantArena.js} +1 -1
- package/dist/trinityal/webgpu/core/CjsWebgpuConstantArena.js.map +1 -0
- package/dist/trinityal/webgpu/core/{batchGroups.js → CjsWebgpuEncodeState.js} +1 -1
- package/dist/trinityal/webgpu/core/CjsWebgpuEncodeState.js.map +1 -0
- package/dist/trinityal/webgpu/core/{perFrameSource.js → CjsWebgpuPerFrameSource.js} +1 -1
- package/dist/trinityal/webgpu/core/CjsWebgpuPerFrameSource.js.map +1 -0
- package/dist/trinityal/webgpu/core/{pipelineCache.js → CjsWebgpuPipelineCache.js} +1 -1
- package/dist/trinityal/webgpu/core/CjsWebgpuPipelineCache.js.map +1 -0
- package/dist/trinityal/webgpu/core/{psoDescription.js → CjsWebgpuPsoDescription.js} +2 -2
- package/dist/trinityal/webgpu/core/CjsWebgpuPsoDescription.js.map +1 -0
- package/dist/trinityal/webgpu/core/{renderTarget.js → CjsWebgpuRenderTarget.js} +1 -1
- package/dist/trinityal/webgpu/core/CjsWebgpuRenderTarget.js.map +1 -0
- package/dist/trinityal/webgpu/core/{samplerSource.js → CjsWebgpuSamplerSource.js} +1 -1
- package/dist/trinityal/webgpu/core/CjsWebgpuSamplerSource.js.map +1 -0
- package/dist/trinityal/webgpu/core/{textureSource.js → CjsWebgpuTextureSource.js} +1 -1
- package/dist/trinityal/webgpu/core/CjsWebgpuTextureSource.js.map +1 -0
- package/dist/trinityal/webgpu/core/{trinityBatchDispatcher.js → CjsWebgpuTrinityBatchDispatcher.js} +4 -4
- package/dist/trinityal/webgpu/core/CjsWebgpuTrinityBatchDispatcher.js.map +1 -0
- package/dist/trinityal/webgpu/core/{trinityBatchResolver.js → CjsWebgpuTrinityBatchResolver.js} +81 -81
- package/dist/trinityal/webgpu/core/CjsWebgpuTrinityBatchResolver.js.map +1 -0
- package/dist/trinityal/webgpu/core/{trinityPassEncoder.js → CjsWebgpuTrinityPassEncoder.js} +2 -2
- package/dist/trinityal/webgpu/core/CjsWebgpuTrinityPassEncoder.js.map +1 -0
- package/dist/trinityal/webgpu/core/{workQueue.js → CjsWebgpuWorkQueue.js} +1 -1
- package/dist/trinityal/webgpu/core/CjsWebgpuWorkQueue.js.map +1 -0
- package/dist/trinityal/webgpu/internal.js +12 -11
- package/dist/trinityal/webgpu/internal.js.map +1 -1
- package/docs/audio/reference/classes/trinity.md +44 -34
- package/docs/character/architecture.md +276 -0
- package/docs/character/reference/character-appearance-plans.md +30 -66
- package/docs/character/reference/prepared-libraries.md +14 -30
- package/docs/global/reference/api.md +2 -1
- package/docs/global/reference/classes/README.md +53 -71
- package/docs/global/reference/classes/dropped.md +16 -0
- package/docs/resource/README.md +19 -15
- package/docs/resource/architecture.md +9 -2
- package/docs/resource/concepts/format-capabilities.md +124 -80
- package/docs/resource/concepts/shared-format-helpers.md +94 -0
- package/docs/resource/formats/README.md +230 -224
- package/docs/resource/formats/bitknit2.md +221 -0
- package/docs/resource/formats/carbon-effect-container.md +184 -269
- package/docs/resource/formats/gr2.md +6 -1
- package/docs/resource/formats/schemabound.md +28 -48
- package/docs/resource/formats/static.md +70 -97
- package/docs/resource/formats/webgl/carbon-constant-layouts.md +8 -8
- package/docs/resource/formats/webgl/decl-io.md +165 -256
- package/docs/resource/formats/webgl/memory-structured.md +64 -142
- package/docs/resource/formats/webgl/texture-sample.md +109 -138
- package/docs/resource/formats/webgpu/formats/carbon-webgpu.md +38 -69
- package/docs/resource/formats/webgpu/guides/effect-packaging.md +54 -116
- package/docs/resource/formats/webgpu/reference/api.md +64 -67
- package/docs/resource/formats/webgpu/reference/wgsl-compatibility.md +104 -260
- package/docs/resource/reference/classes/core.md +256 -236
- package/docs/resource/reference/classes/formats.md +1668 -1672
- package/docs/resource/reference/workers.md +4 -2
- package/docs/sof/reference/classes/core.md +1 -1
- package/docs/sof/reference/classes/faction.md +2 -2
- package/docs/sof/reference/classes/generic.md +4 -4
- package/docs/sof/reference/classes/pattern.md +1 -1
- package/docs/sof/reference/classes/shared.md +10 -10
- package/docs/trinity/architecture.md +55 -44
- package/docs/trinity/concepts/generated-class-lifecycle.md +10 -15
- package/docs/trinity/reference/classes/curves-and-utilities.md +496 -506
- package/docs/trinity/reference/classes/dropped.md +0 -189
- package/docs/trinity/reference/classes/eve-runtime.md +8 -8
- package/docs/trinity/reference/classes/generated.md +0 -10
- package/docs/trinity/reference/classes/particle.md +2 -2
- package/docs/trinity/reference/classes/trinity-core.md +1554 -1256
- package/docs/trinity/reference/implementation-status.md +50 -75
- package/docs/trinity/reference/main-semantic-extraction.md +13 -17
- package/docs/trinityal/reference/classes/README.md +77 -27
- package/docs/trinityal/reference/classes/dropped.md +82 -0
- package/docs/trinityal/webgpu/README.md +3 -1
- package/docs/trinityal/webgpu/architecture.md +121 -228
- package/docs/trinityal/webgpu/reference/api.md +5 -5
- package/docs/trinityal/webgpu/reference/classes/README.md +13 -13
- package/format-notices/gr2/NOTICE +18 -12
- package/format-notices/gr2/THIRD-PARTY-NOTICES.md +5 -5
- package/package.json +4 -1
- package/dist/audio/trinity/audio/AudActionLog.js +0 -173
- package/dist/audio/trinity/audio/AudActionLog.js.map +0 -1
- package/dist/audio/trinity/audio/AudObstructionOcclusion.js.map +0 -1
- package/dist/global/contracts/CjsScriptCallback.js +0 -94
- package/dist/global/contracts/CjsScriptCallback.js.map +0 -1
- package/dist/trinity/controllers/ITr2Controller.js.map +0 -1
- package/dist/trinity/core/Tr2GpuResourcePool.js.map +0 -1
- package/dist/trinity/core/Tr2QuadRenderer.js.map +0 -1
- package/dist/trinity/core/Tr2TextureArray.js.map +0 -1
- package/dist/trinity/core/batch/ITriRenderBatchAccumulator.js.map +0 -1
- package/dist/trinity/core/batch/Tr2RenderBatch.js.map +0 -1
- package/dist/trinity/core/batch/TriRenderBatchAccumulator.js.map +0 -1
- package/dist/trinity/core/context/CjsShadowMapExecutor.js +0 -43
- package/dist/trinity/core/context/CjsShadowMapExecutor.js.map +0 -1
- package/dist/trinity/core/context/CjsVolumetricsExecutor.js +0 -64
- package/dist/trinity/core/context/CjsVolumetricsExecutor.js.map +0 -1
- package/dist/trinity/core/context/Tr2VisibilityResults.js +0 -109
- package/dist/trinity/core/context/Tr2VisibilityResults.js.map +0 -1
- package/dist/trinity/core/device/Tr2RingBuffer.js.map +0 -1
- package/dist/trinity/core/device/Tr2SuballocatedBuffer.js.map +0 -1
- package/dist/trinity/core/mesh/ITr2ImpostorSource.js.map +0 -1
- package/dist/trinity/core/mesh/ITr2InstanceData.js.map +0 -1
- package/dist/trinity/core/rawData/Tr2PerObjectData.js.map +0 -1
- package/dist/trinity/core/rawData/constantLayout.js +0 -175
- package/dist/trinity/core/rawData/constantLayout.js.map +0 -1
- package/dist/trinity/core/vertex/Tr2VertexDefinition.js.map +0 -1
- package/dist/trinity/eve/child/EveChildInstancedMeshes.js.map +0 -1
- package/dist/trinity/eve/child/EveChildPartData.js.map +0 -1
- package/dist/trinity/generated/trinityCore/Tr2Denoiser.js +0 -47
- package/dist/trinity/generated/trinityCore/Tr2Denoiser.js.map +0 -1
- package/dist/trinity/particle/ITr2GenericEmitter.js.map +0 -1
- package/dist/trinityal/Tr2DeviceResourceAL.js.map +0 -1
- package/dist/trinityal/Tr2HalHelperStructures.js.map +0 -1
- package/dist/trinityal/Tr2RenderPassAL.js.map +0 -1
- package/dist/trinityal/Tr2ResourceSetAL.js +0 -419
- package/dist/trinityal/Tr2ResourceSetAL.js.map +0 -1
- package/dist/trinityal/Tr2SamplerDescription.js +0 -72
- package/dist/trinityal/Tr2SamplerDescription.js.map +0 -1
- package/dist/trinityal/stub/Tr2QueryALStub.js +0 -326
- package/dist/trinityal/stub/Tr2QueryALStub.js.map +0 -1
- package/dist/trinityal/stub/Tr2RenderContextALStub.js.map +0 -1
- package/dist/trinityal/stub/Tr2VideoAdapterInfoALStub.js.map +0 -1
- package/dist/trinityal/webgpu/core/batchGroups.js.map +0 -1
- package/dist/trinityal/webgpu/core/constantArena.js.map +0 -1
- package/dist/trinityal/webgpu/core/perFrameSource.js.map +0 -1
- package/dist/trinityal/webgpu/core/pipelineCache.js.map +0 -1
- package/dist/trinityal/webgpu/core/psoDescription.js.map +0 -1
- package/dist/trinityal/webgpu/core/renderTarget.js.map +0 -1
- package/dist/trinityal/webgpu/core/samplerSource.js.map +0 -1
- package/dist/trinityal/webgpu/core/textureSource.js.map +0 -1
- package/dist/trinityal/webgpu/core/trinityBatchDispatcher.js.map +0 -1
- package/dist/trinityal/webgpu/core/trinityBatchResolver.js.map +0 -1
- package/dist/trinityal/webgpu/core/trinityPassEncoder.js.map +0 -1
- package/dist/trinityal/webgpu/core/workQueue.js.map +0 -1
|
@@ -1,42 +1,11 @@
|
|
|
1
|
+
import { DefaultKeyGenerator } from './DefaultKeyGenerator.js';
|
|
2
|
+
import { RenderBatchSortType } from '../../../generated/trinityCore/enums.js';
|
|
1
3
|
import { RenderingMode } from '#consts/graphics';
|
|
2
4
|
import { Topology } from '#consts/render-context';
|
|
3
|
-
import { RenderBatchSortType } from '../../generated/trinityCore/enums.js';
|
|
4
5
|
import { ITriRenderBatchAccumulator } from './ITriRenderBatchAccumulator.js';
|
|
5
|
-
import { Tr2GdprBatchFullPartition
|
|
6
|
+
import { Tr2GdprBatchFullPartition } from './Tr2RenderBatch.js';
|
|
6
7
|
|
|
7
|
-
// Source: trinity/TriRenderBatch.h
|
|
8
|
-
// DefaultKeyGenerator, EffectKeyGenerator)
|
|
9
|
-
//
|
|
10
|
-
// GPU-free render-batch accumulator: collects committed batches into two vectors
|
|
11
|
-
// (GDPR-eligible and plain), then sorts / group-counts them on Finalize. The
|
|
12
|
-
// engine adapter reads GetGdprBatches()/GetBatches()/IsChainedByEffect() from a
|
|
13
|
-
// finalized accumulator and issues the actual draws.
|
|
14
|
-
|
|
15
|
-
// Unsorted, order-preserving, single vector, no GDPR. Used for transparent /
|
|
16
|
-
// order-dependent passes (which are pre-sorted by object distance CPU-side).
|
|
17
|
-
const DefaultKeyGenerator = {
|
|
18
|
-
ALLOW_GDPR: false,
|
|
19
|
-
Less(_batch1, _batch2) {
|
|
20
|
-
return false;
|
|
21
|
-
},
|
|
22
|
-
GetSortType() {
|
|
23
|
-
return RenderBatchSortType.RENDERBATCHSORTTYPE_NONE;
|
|
24
|
-
}
|
|
25
|
-
};
|
|
26
|
-
|
|
27
|
-
// Effect-sorted (shader, then vertex declaration); GDPR-enabled. Used for
|
|
28
|
-
// opaque / decal / depth / additive / shadow passes.
|
|
29
|
-
const EffectKeyGenerator = {
|
|
30
|
-
ALLOW_GDPR: true,
|
|
31
|
-
Less(batch1, batch2) {
|
|
32
|
-
const shaderOrder = OrderOf(batch1.shader) - OrderOf(batch2.shader);
|
|
33
|
-
if (shaderOrder !== 0) return shaderOrder < 0;
|
|
34
|
-
return batch1.vertexDeclaration < batch2.vertexDeclaration;
|
|
35
|
-
},
|
|
36
|
-
GetSortType() {
|
|
37
|
-
return RenderBatchSortType.RENDERBATCHSORTTYPE_SORT;
|
|
38
|
-
}
|
|
39
|
-
};
|
|
8
|
+
// Source: trinity/trinity/TriRenderBatch.h
|
|
40
9
|
|
|
41
10
|
/**
|
|
42
11
|
* Concrete GPU-free batch accumulator: collects committed batches into a
|
|
@@ -46,9 +15,9 @@ const EffectKeyGenerator = {
|
|
|
46
15
|
class TriRenderBatchAccumulator extends ITriRenderBatchAccumulator {
|
|
47
16
|
/**
|
|
48
17
|
* Creates an empty accumulator whose key generator decides sorting and GDPR
|
|
49
|
-
* eligibility, defaulting to
|
|
18
|
+
* eligibility, defaulting to Carbon's unsorted policy.
|
|
50
19
|
*/
|
|
51
|
-
constructor(keyGenerator =
|
|
20
|
+
constructor(keyGenerator = DefaultKeyGenerator) {
|
|
52
21
|
super();
|
|
53
22
|
this.keyGenerator = keyGenerator;
|
|
54
23
|
this.gdprBatches = [];
|
|
@@ -160,5 +129,5 @@ class TriRenderBatchAccumulator extends ITriRenderBatchAccumulator {
|
|
|
160
129
|
}
|
|
161
130
|
}
|
|
162
131
|
|
|
163
|
-
export {
|
|
132
|
+
export { TriRenderBatchAccumulator };
|
|
164
133
|
//# sourceMappingURL=TriRenderBatchAccumulator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TriRenderBatchAccumulator.js","sources":["../../../../../../src/trinity/core/batch/TriRenderBatch/TriRenderBatchAccumulator.js"],"sourcesContent":["// Source: trinity/trinity/TriRenderBatch.h\nimport { DefaultKeyGenerator } from \"./DefaultKeyGenerator.js\";\nimport { RenderBatchSortType } from \"../../../generated/trinityCore/enums.js\";\n//\n// GPU-free render-batch accumulator: collects committed batches into two vectors\n// (GDPR-eligible and plain), then sorts / group-counts them on Finalize. The\n// engine adapter reads GetGdprBatches()/GetBatches()/IsChainedByEffect() from a\n// finalized accumulator and issues the actual draws.\nimport { RenderingMode } from \"#consts/graphics\";\nimport { Topology } from \"#consts/render-context\";\n\nimport { ITriRenderBatchAccumulator } from \"./ITriRenderBatchAccumulator.js\";\nimport { CanBeBinned, OrderOf, Tr2GdprBatchFullPartition } from \"./Tr2RenderBatch.js\";\n\n\n/**\n * Concrete GPU-free batch accumulator: collects committed batches into a\n * GDPR-eligible and a plain vector, then sorts and group-counts them on\n * Finalize.\n */\nexport class TriRenderBatchAccumulator extends ITriRenderBatchAccumulator\n{\n /**\n * Creates an empty accumulator whose key generator decides sorting and GDPR\n * eligibility, defaulting to Carbon's unsorted policy.\n */\n constructor(keyGenerator = DefaultKeyGenerator)\n {\n super();\n this.keyGenerator = keyGenerator;\n\n this.gdprBatches = [];\n\n this.batches = [];\n }\n\n /**\n * Drops both batch vectors and resets user data and rendering mode to their\n * defaults.\n */\n Clear()\n {\n this.userData = 0;\n this.renderingMode = RenderingMode.RM_ANY;\n this.gdprBatches.length = 0;\n this.batches.length = 0;\n }\n\n // Collects a batch. Invalid batches (no shader) are dropped. GDPR-eligible\n // batches (allowed by the key generator, GDR-compatible material, triangle\n // topology, indexed) go to the GDPR vector; the rest to the plain vector. The\n // batch's rendering mode is overwritten with the accumulator's mode (faithful\n // to Carbon). Commit takes ownership of the batch; do not reuse it afterwards.\n // Returns whether the batch was accepted (JS addition; Carbon returns void).\n\n /**\n * Collects a batch, dropping invalid ones and routing GDPR-eligible batches\n * (allowed by the key generator, GDR-compatible material, triangle list,\n * indexed) to the GDPR vector; the batch's rendering mode is overwritten with\n * the accumulator's and ownership passes here, so the caller must not reuse\n * the batch. Returns whether it was accepted.\n */\n Commit(batch)\n {\n if (!batch.IsValid()) return false;\n\n if (this.keyGenerator.ALLOW_GDPR\n && batch.material?.CompatibleWithGdr()\n && batch.topology === Topology.TOP_TRIANGLES\n && batch.indexBuffer)\n {\n this.gdprBatches.push(batch);\n }\n else\n {\n this.batches.push(batch);\n }\n batch.renderingMode = this.renderingMode;\n return true;\n }\n\n // Folds another accumulator's batches into this one, then clears the source.\n // Mirrors Carbon TransferFrom (per-thread accumulator merge).\n\n /**\n * Folds another accumulator's batches into this one and clears the source; the\n * source's GDPR batches land in the plain vector when this accumulator does\n * not allow GDPR.\n */\n TransferFrom(source)\n {\n const sourceGdpr = source.GetGdprBatches();\n const sourceBatches = source.GetBatches();\n\n if (this.keyGenerator.ALLOW_GDPR)\n {\n for (const batch of sourceGdpr) this.gdprBatches.push(batch);\n }\n else\n {\n for (const batch of sourceGdpr) this.batches.push(batch);\n }\n for (const batch of sourceBatches) this.batches.push(batch);\n\n source.Clear();\n }\n\n /** The live GDPR-eligible batch vector, not a copy. */\n GetGdprBatches()\n {\n return this.gdprBatches;\n }\n\n /** The live plain batch vector, not a copy. */\n GetBatches()\n {\n return this.batches;\n }\n\n // Sorts and group-counts the collected batches. No-op for the order-preserving\n // key generator; effect/GDPR generators sort both vectors and stamp each\n // bin-run's length onto its leading batch's groupCount.\n\n /**\n * Sorts and group-counts the collected batches: a no-op for the\n * order-preserving key generator, a full bin partition of both vectors for\n * GDPR-enabled ones, and a plain comparator sort otherwise.\n */\n Finalize()\n {\n const sortType = this.keyGenerator.GetSortType();\n if (sortType === RenderBatchSortType.RENDERBATCHSORTTYPE_NONE) return;\n\n if (this.keyGenerator.ALLOW_GDPR)\n {\n Tr2GdprBatchFullPartition(this.gdprBatches);\n Tr2GdprBatchFullPartition(this.batches);\n return;\n }\n\n const keyGenerator = this.keyGenerator;\n this.batches.sort((batch1, batch2) =>\n {\n if (keyGenerator.Less(batch1, batch2)) return -1;\n if (keyGenerator.Less(batch2, batch1)) return 1;\n return 0;\n });\n }\n\n /** Total batches across both vectors. */\n GetBatchCount()\n {\n return this.gdprBatches.length + this.batches.length;\n }\n\n /**\n * Whether the batches are effect-sorted, so consecutive batches can share one\n * state-set, rather than order-preserving.\n */\n IsChainedByEffect()\n {\n return this.keyGenerator.GetSortType() !== RenderBatchSortType.RENDERBATCHSORTTYPE_NONE;\n }\n}\n"],"names":["TriRenderBatchAccumulator","ITriRenderBatchAccumulator","constructor","keyGenerator","DefaultKeyGenerator","gdprBatches","batches","Clear","userData","renderingMode","RenderingMode","RM_ANY","length","Commit","batch","IsValid","ALLOW_GDPR","material","CompatibleWithGdr","topology","Topology","TOP_TRIANGLES","indexBuffer","push","TransferFrom","source","sourceGdpr","GetGdprBatches","sourceBatches","GetBatches","Finalize","sortType","GetSortType","RenderBatchSortType","RENDERBATCHSORTTYPE_NONE","Tr2GdprBatchFullPartition","sort","batch1","batch2","Less","GetBatchCount","IsChainedByEffect"],"mappings":"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"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
// Source: trinity/trinity/TriRenderBatch.h
|
|
2
|
+
// trinity/TriRenderBatch.cpp
|
|
3
|
+
//
|
|
4
|
+
// GPU-free CPU render-batch descriptor plus the binning/sort helpers. A batch
|
|
5
|
+
// holds opaque references to material/shader/geometry and plain draw arguments;
|
|
6
|
+
// it never touches a device. The engine adapter reads a finalized accumulator's
|
|
7
|
+
// batches and issues the actual draws (Carbon's Tr2RenderContextBase::RenderBatches*
|
|
8
|
+
// dispatch family stays engine-side and is intentionally NOT ported here).
|
|
9
|
+
|
|
10
|
+
// A contiguous (startIndex, count) block of mesh groups. Mirrors Carbon
|
|
11
|
+
// TriRenderBatchAreaBlock; used by the shadow/overlay area-block paths.
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* A contiguous (startIndex, count) run of mesh groups, as consumed by the shadow
|
|
15
|
+
* and overlay area-block paths.
|
|
16
|
+
*/
|
|
17
|
+
class TriRenderBatchAreaBlock {
|
|
18
|
+
/**
|
|
19
|
+
* Creates a block covering count groups from startIndex; both are coerced to
|
|
20
|
+
* unsigned integers.
|
|
21
|
+
*/
|
|
22
|
+
// Carbon's empty constructor leaves these integers uninitialized.
|
|
23
|
+
// JS deliberately initializes them to zero; the two-argument form copies values.
|
|
24
|
+
constructor(startIndex = 0, count = 0) {
|
|
25
|
+
this.startIndex = startIndex >>> 0;
|
|
26
|
+
this.count = count >>> 0;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
// Compacts a set of possibly overlapping/adjacent blocks into the minimal set
|
|
30
|
+
// of contiguous runs, in place. Mirrors TriRenderBatchAreaBlock::Optimize.
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Compacts a vector of possibly overlapping or adjacent blocks into the
|
|
34
|
+
* minimal set of contiguous runs, rewriting the caller's array in place and
|
|
35
|
+
* returning it.
|
|
36
|
+
*/
|
|
37
|
+
static Optimize(areaBlockVector) {
|
|
38
|
+
const indices = new Set();
|
|
39
|
+
for (const block of areaBlockVector) {
|
|
40
|
+
for (let i = 0; i < block.count; i++) indices.add(block.startIndex + i);
|
|
41
|
+
}
|
|
42
|
+
const sorted = Array.from(indices).sort((a, b) => a - b);
|
|
43
|
+
areaBlockVector.length = 0;
|
|
44
|
+
let start = -1;
|
|
45
|
+
let run = -1;
|
|
46
|
+
for (const value of sorted) {
|
|
47
|
+
if (run >= 0 && value === run + 1) {
|
|
48
|
+
run = value;
|
|
49
|
+
continue;
|
|
50
|
+
}
|
|
51
|
+
if (run >= 0) areaBlockVector.push(new TriRenderBatchAreaBlock(start, run - start + 1));
|
|
52
|
+
start = value;
|
|
53
|
+
run = value;
|
|
54
|
+
}
|
|
55
|
+
if (run >= 0) areaBlockVector.push(new TriRenderBatchAreaBlock(start, run - start + 1));
|
|
56
|
+
return areaBlockVector;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
export { TriRenderBatchAreaBlock };
|
|
61
|
+
//# sourceMappingURL=TriRenderBatchAreaBlock.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TriRenderBatchAreaBlock.js","sources":["../../../../../../src/trinity/core/batch/TriRenderBatch/TriRenderBatchAreaBlock.js"],"sourcesContent":["// Source: trinity/trinity/TriRenderBatch.h\n// trinity/TriRenderBatch.cpp\n//\n// GPU-free CPU render-batch descriptor plus the binning/sort helpers. A batch\n// holds opaque references to material/shader/geometry and plain draw arguments;\n// it never touches a device. The engine adapter reads a finalized accumulator's\n// batches and issues the actual draws (Carbon's Tr2RenderContextBase::RenderBatches*\n// dispatch family stays engine-side and is intentionally NOT ported here).\n\n\n\n// A contiguous (startIndex, count) block of mesh groups. Mirrors Carbon\n// TriRenderBatchAreaBlock; used by the shadow/overlay area-block paths.\n\n/**\n * A contiguous (startIndex, count) run of mesh groups, as consumed by the shadow\n * and overlay area-block paths.\n */\nexport class TriRenderBatchAreaBlock\n{\n /**\n * Creates a block covering count groups from startIndex; both are coerced to\n * unsigned integers.\n */\n // Carbon's empty constructor leaves these integers uninitialized.\n // JS deliberately initializes them to zero; the two-argument form copies values.\n constructor(startIndex = 0, count = 0)\n {\n this.startIndex = startIndex >>> 0;\n this.count = count >>> 0;\n }\n\n // Compacts a set of possibly overlapping/adjacent blocks into the minimal set\n // of contiguous runs, in place. Mirrors TriRenderBatchAreaBlock::Optimize.\n\n /**\n * Compacts a vector of possibly overlapping or adjacent blocks into the\n * minimal set of contiguous runs, rewriting the caller's array in place and\n * returning it.\n */\n static Optimize(areaBlockVector)\n {\n const indices = new Set();\n for (const block of areaBlockVector)\n {\n for (let i = 0; i < block.count; i++) indices.add(block.startIndex + i);\n }\n\n const sorted = Array.from(indices).sort((a, b) => a - b);\n areaBlockVector.length = 0;\n\n let start = -1;\n let run = -1;\n for (const value of sorted)\n {\n if (run >= 0 && value === run + 1)\n {\n run = value;\n continue;\n }\n if (run >= 0) areaBlockVector.push(new TriRenderBatchAreaBlock(start, run - start + 1));\n start = value;\n run = value;\n }\n if (run >= 0) areaBlockVector.push(new TriRenderBatchAreaBlock(start, run - start + 1));\n return areaBlockVector;\n }\n}\n"],"names":["TriRenderBatchAreaBlock","constructor","startIndex","count","Optimize","areaBlockVector","indices","Set","block","i","add","sorted","Array","from","sort","a","b","length","start","run","value","push"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAIA;AACA;;AAEA;AACA;AACA;AACA;AACO,MAAMA,uBAAuB,CACpC;AACE;AACF;AACA;AACA;AACE;AACA;EACAC,WAAWA,CAACC,UAAU,GAAG,CAAC,EAAEC,KAAK,GAAG,CAAC,EACrC;AACE,IAAA,IAAI,CAACD,UAAU,GAAGA,UAAU,KAAK,CAAC;AAClC,IAAA,IAAI,CAACC,KAAK,GAAGA,KAAK,KAAK,CAAC;AAC1B,EAAA;;AAEA;AACA;;AAEA;AACF;AACA;AACA;AACA;EACE,OAAOC,QAAQA,CAACC,eAAe,EAC/B;AACE,IAAA,MAAMC,OAAO,GAAG,IAAIC,GAAG,EAAE;AACzB,IAAA,KAAK,MAAMC,KAAK,IAAIH,eAAe,EACnC;MACE,KAAK,IAAII,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGD,KAAK,CAACL,KAAK,EAAEM,CAAC,EAAE,EAAEH,OAAO,CAACI,GAAG,CAACF,KAAK,CAACN,UAAU,GAAGO,CAAC,CAAC;AACzE,IAAA;AAEA,IAAA,MAAME,MAAM,GAAGC,KAAK,CAACC,IAAI,CAACP,OAAO,CAAC,CAACQ,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKD,CAAC,GAAGC,CAAC,CAAC;IACxDX,eAAe,CAACY,MAAM,GAAG,CAAC;IAE1B,IAAIC,KAAK,GAAG,EAAE;IACd,IAAIC,GAAG,GAAG,EAAE;AACZ,IAAA,KAAK,MAAMC,KAAK,IAAIT,MAAM,EAC1B;MACE,IAAIQ,GAAG,IAAI,CAAC,IAAIC,KAAK,KAAKD,GAAG,GAAG,CAAC,EACjC;AACEA,QAAAA,GAAG,GAAGC,KAAK;AACX,QAAA;AACF,MAAA;AACA,MAAA,IAAID,GAAG,IAAI,CAAC,EAAEd,eAAe,CAACgB,IAAI,CAAC,IAAIrB,uBAAuB,CAACkB,KAAK,EAAEC,GAAG,GAAGD,KAAK,GAAG,CAAC,CAAC,CAAC;AACvFA,MAAAA,KAAK,GAAGE,KAAK;AACbD,MAAAA,GAAG,GAAGC,KAAK;AACb,IAAA;AACA,IAAA,IAAID,GAAG,IAAI,CAAC,EAAEd,eAAe,CAACgB,IAAI,CAAC,IAAIrB,uBAAuB,CAACkB,KAAK,EAAEC,GAAG,GAAGD,KAAK,GAAG,CAAC,CAAC,CAAC;AACvF,IAAA,OAAOb,eAAe;AACxB,EAAA;AACF;;;;"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { TriRenderBatchAreaBlock } from './TriRenderBatchAreaBlock.js';
|
|
2
|
+
|
|
3
|
+
// Source: trinity/trinity/TriRenderBatch.h
|
|
4
|
+
// trinity/TriRenderBatch.cpp
|
|
5
|
+
//
|
|
6
|
+
// GPU-free CPU render-batch descriptor plus the binning/sort helpers. A batch
|
|
7
|
+
// holds opaque references to material/shader/geometry and plain draw arguments;
|
|
8
|
+
// it never touches a device. The engine adapter reads a finalized accumulator's
|
|
9
|
+
// batches and issues the actual draws (Carbon's Tr2RenderContextBase::RenderBatches*
|
|
10
|
+
// dispatch family stays engine-side and is intentionally NOT ported here).
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
// A shared-material list of area blocks (shadow/overlay path). Mirrors
|
|
14
|
+
// TriRenderBatchAreaBlocksWithSharedMaterial.
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* Groups the area blocks that draw with one shared shader material on the shadow
|
|
18
|
+
* and overlay path.
|
|
19
|
+
*/
|
|
20
|
+
class TriRenderBatchAreaBlocksWithSharedMaterial extends TriRenderBatchAreaBlock {
|
|
21
|
+
/** Starts with no shared material and an empty block vector. */
|
|
22
|
+
constructor() {
|
|
23
|
+
super();
|
|
24
|
+
this.shaderMaterial = null;
|
|
25
|
+
this.areaBlockVector = [];
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
/** Compacts the owned block vector into minimal contiguous runs. */
|
|
29
|
+
Optimize() {
|
|
30
|
+
TriRenderBatchAreaBlock.Optimize(this.areaBlockVector);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
/** Empties the block vector while keeping the shared material bound. */
|
|
34
|
+
Clear() {
|
|
35
|
+
this.areaBlockVector.length = 0;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export { TriRenderBatchAreaBlocksWithSharedMaterial };
|
|
40
|
+
//# sourceMappingURL=TriRenderBatchAreaBlocksWithSharedMaterial.js.map
|
package/dist/trinity/core/batch/TriRenderBatch/TriRenderBatchAreaBlocksWithSharedMaterial.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TriRenderBatchAreaBlocksWithSharedMaterial.js","sources":["../../../../../../src/trinity/core/batch/TriRenderBatch/TriRenderBatchAreaBlocksWithSharedMaterial.js"],"sourcesContent":["// Source: trinity/trinity/TriRenderBatch.h\n// trinity/TriRenderBatch.cpp\n//\n// GPU-free CPU render-batch descriptor plus the binning/sort helpers. A batch\n// holds opaque references to material/shader/geometry and plain draw arguments;\n// it never touches a device. The engine adapter reads a finalized accumulator's\n// batches and issues the actual draws (Carbon's Tr2RenderContextBase::RenderBatches*\n// dispatch family stays engine-side and is intentionally NOT ported here).\n\nimport { TriRenderBatchAreaBlock } from \"./TriRenderBatchAreaBlock.js\";\n\n// A shared-material list of area blocks (shadow/overlay path). Mirrors\n// TriRenderBatchAreaBlocksWithSharedMaterial.\n\n/**\n * Groups the area blocks that draw with one shared shader material on the shadow\n * and overlay path.\n */\nexport class TriRenderBatchAreaBlocksWithSharedMaterial extends TriRenderBatchAreaBlock\n{\n /** Starts with no shared material and an empty block vector. */\n constructor()\n {\n super();\n this.shaderMaterial = null;\n this.areaBlockVector = [];\n }\n\n /** Compacts the owned block vector into minimal contiguous runs. */\n Optimize()\n {\n TriRenderBatchAreaBlock.Optimize(this.areaBlockVector);\n }\n\n /** Empties the block vector while keeping the shared material bound. */\n Clear()\n {\n this.areaBlockVector.length = 0;\n }\n}\n"],"names":["TriRenderBatchAreaBlocksWithSharedMaterial","TriRenderBatchAreaBlock","constructor","shaderMaterial","areaBlockVector","Optimize","Clear","length"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAIA;AACA;;AAEA;AACA;AACA;AACA;AACO,MAAMA,0CAA0C,SAASC,uBAAuB,CACvF;AACE;AACAC,EAAAA,WAAWA,GACX;AACE,IAAA,KAAK,EAAE;IACP,IAAI,CAACC,cAAc,GAAG,IAAI;IAC1B,IAAI,CAACC,eAAe,GAAG,EAAE;AAC3B,EAAA;;AAEA;AACAC,EAAAA,QAAQA,GACR;AACEJ,IAAAA,uBAAuB,CAACI,QAAQ,CAAC,IAAI,CAACD,eAAe,CAAC;AACxD,EAAA;;AAEA;AACAE,EAAAA,KAAKA,GACL;AACE,IAAA,IAAI,CAACF,eAAe,CAACG,MAAM,GAAG,CAAC;AACjC,EAAA;AACF;;;;"}
|
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
import { TriBatchType } from '#consts/graphics';
|
|
2
2
|
import { Tr2RenderReason } from '../../generated/trinityCore/enums.js';
|
|
3
|
-
import
|
|
3
|
+
import '#consts/render-context';
|
|
4
|
+
import '#resource/geometry';
|
|
5
|
+
import { DefaultKeyGenerator } from './TriRenderBatch/DefaultKeyGenerator.js';
|
|
6
|
+
import { EffectKeyGenerator } from './TriRenderBatch/EffectKeyGenerator.js';
|
|
7
|
+
import './TriRenderBatch/ITriRenderBatchAccumulator.js';
|
|
8
|
+
import { TriRenderBatchAccumulator } from './TriRenderBatch/TriRenderBatchAccumulator.js';
|
|
4
9
|
|
|
5
10
|
// Source: trinity/Eve/EveSpaceScene.h (BatchMap typedef)
|
|
6
11
|
// trinity/Eve/EveSpaceScene.cpp (GetBatchesFromRenderables / FinalizeBatches / ClearBatches)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TriRenderBatchMap.js","sources":["../../../../../src/trinity/core/batch/TriRenderBatchMap.js"],"sourcesContent":["// Source: trinity/Eve/EveSpaceScene.h (BatchMap typedef)\n// trinity/Eve/EveSpaceScene.cpp (GetBatchesFromRenderables / FinalizeBatches / ClearBatches)\r\n//\r\n// GPU-free scene batch collection. Wraps Carbon's BatchMap (one accumulator per\r\n// TriBatchType) plus the GetBatchesFromRenderables/FinalizeBatches/ClearBatches\r\n// flow, exposed as methods on a cohesive object rather than a free function. The\r\n// engine adapter reads the finalized per-type accumulators and issues draws.\r\nimport { TriBatchType } from \"#consts/graphics\";\r\nimport { Tr2RenderReason } from \"../../generated/trinityCore/enums.js\";\r\nimport { TriRenderBatchAccumulator, DefaultKeyGenerator, EffectKeyGenerator } from \"./
|
|
1
|
+
{"version":3,"file":"TriRenderBatchMap.js","sources":["../../../../../src/trinity/core/batch/TriRenderBatchMap.js"],"sourcesContent":["// Source: trinity/Eve/EveSpaceScene.h (BatchMap typedef)\n// trinity/Eve/EveSpaceScene.cpp (GetBatchesFromRenderables / FinalizeBatches / ClearBatches)\r\n//\r\n// GPU-free scene batch collection. Wraps Carbon's BatchMap (one accumulator per\r\n// TriBatchType) plus the GetBatchesFromRenderables/FinalizeBatches/ClearBatches\r\n// flow, exposed as methods on a cohesive object rather than a free function. The\r\n// engine adapter reads the finalized per-type accumulators and issues draws.\r\nimport { TriBatchType } from \"#consts/graphics\";\r\nimport { Tr2RenderReason } from \"../../generated/trinityCore/enums.js\";\r\nimport { TriRenderBatchAccumulator, DefaultKeyGenerator, EffectKeyGenerator } from \"./TriRenderBatch/index.js\";\r\n\r\n\r\n/**\r\n * One render-batch accumulator per TriBatchType, with the scene-level collect,\r\n * finalize and clear flow over them.\r\n */\r\nexport class TriRenderBatchMap\r\n{\r\n // batchTypes: iterable of TriBatchType values to collect. createAccumulator:\r\n // optional (batchType) => accumulator factory. The default matches Carbon's\r\n // key-generator selection: order-preserving for TRANSPARENT (the producer\r\n // inserts back-to-front), effect-sorted for everything else.\r\n\r\n /**\r\n * Creates one accumulator per requested batch type; by default TRANSPARENT\r\n * gets the order-preserving key generator (the producer inserts back-to-front)\r\n * and every other type the effect-sorted one.\r\n */\r\n constructor(batchTypes, createAccumulator = null)\r\n {\r\n this.accumulators = new Map();\r\n\r\n const factory = createAccumulator ?? ((batchType) => new TriRenderBatchAccumulator(\r\n batchType === TriBatchType.TRIBATCHTYPE_TRANSPARENT ? DefaultKeyGenerator : EffectKeyGenerator));\r\n for (const batchType of batchTypes)\r\n {\r\n this.accumulators.set(batchType, factory(batchType));\r\n }\r\n }\r\n\r\n /** The accumulator for one batch type, or null when that type is not collected. */\r\n GetAccumulator(batchType)\r\n {\r\n return this.accumulators.get(batchType) ?? null;\r\n }\r\n\r\n // Bind the per-object-data store (from the render context) onto every\r\n // accumulator - GetPerObjectData Allocs pooled records through it.\r\n\r\n /**\r\n * Binds the per-object-data store onto every accumulator, since\r\n * GetPerObjectData leases pooled records through it; returns this for\r\n * chaining.\r\n */\r\n SetTriPoolAllocator(store)\r\n {\r\n for (const accumulator of this.accumulators.values())\r\n {\r\n accumulator.SetTriPoolAllocator(store);\r\n }\r\n\r\n return this;\r\n }\r\n\r\n /** The collected batch types, in insertion order, as a new array. */\r\n GetBatchTypes()\r\n {\r\n return Array.from(this.accumulators.keys());\r\n }\r\n\r\n // Serial form of Carbon GetBatchesFromRenderables: one GetPerObjectData per\r\n // renderable (keyed off the pool accumulator, by convention the OPAQUE one),\r\n // then GetBatches into each registered batch type. Renderables are expected\r\n // pre-culled; visibility/frustum filtering is a scene concern upstream.\r\n\r\n /**\r\n * Serial form of Carbon's GetBatchesFromRenderables: one GetPerObjectData per\r\n * renderable, keyed off the pool accumulator (by convention the OPAQUE one),\r\n * then GetBatches into every registered batch type. Renderables are expected\r\n * pre-culled.\r\n */\r\n CollectFromRenderables(renderables, reason = Tr2RenderReason.TR2RENDERREASON_NORMAL)\r\n {\r\n if (!renderables) return;\r\n\r\n const poolAccumulator = this.accumulators.get(TriBatchType.TRIBATCHTYPE_OPAQUE)\r\n ?? this.accumulators.values().next().value\r\n ?? null;\r\n\r\n for (const renderable of renderables)\r\n {\r\n if (!renderable) continue;\r\n\r\n const perObjectData = renderable.GetPerObjectData(poolAccumulator);\n for (const [ batchType, accumulator ] of this.accumulators)\r\n {\r\n renderable.GetBatches(accumulator, batchType, perObjectData, reason);\n }\r\n }\r\n }\r\n\r\n /** Sorts and group-counts every accumulator. */\r\n Finalize()\r\n {\r\n for (const accumulator of this.accumulators.values()) accumulator.Finalize();\r\n }\r\n\r\n /**\r\n * Clears every accumulator; the accumulators themselves are retained and\r\n * reused next frame.\r\n */\r\n Clear()\r\n {\r\n for (const accumulator of this.accumulators.values()) accumulator.Clear();\r\n }\r\n\r\n /** Total batches collected across every batch type. */\r\n GetBatchCount()\r\n {\r\n let count = 0;\r\n for (const accumulator of this.accumulators.values()) count += accumulator.GetBatchCount();\r\n return count;\r\n }\r\n}\r\n"],"names":["TriRenderBatchMap","constructor","batchTypes","createAccumulator","accumulators","Map","factory","batchType","TriRenderBatchAccumulator","TriBatchType","TRIBATCHTYPE_TRANSPARENT","DefaultKeyGenerator","EffectKeyGenerator","set","GetAccumulator","get","SetTriPoolAllocator","store","accumulator","values","GetBatchTypes","Array","from","keys","CollectFromRenderables","renderables","reason","Tr2RenderReason","TR2RENDERREASON_NORMAL","poolAccumulator","TRIBATCHTYPE_OPAQUE","next","value","renderable","perObjectData","GetPerObjectData","GetBatches","Finalize","Clear","GetBatchCount","count"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { identity as _identity, applyDecs2311 as _applyDecs2311 } from '../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
|
-
import { type } from '#schema';
|
|
2
|
+
import { impl, type } from '#schema';
|
|
3
3
|
import { CjsModel } from '#model';
|
|
4
4
|
import { mat4 } from '#math/mat4';
|
|
5
5
|
import { vec3 } from '#math/vec3';
|
|
@@ -8,19 +8,20 @@ import { ConstantBufferSlot } from '#consts/render-context';
|
|
|
8
8
|
import { RenderingMode } from '#consts/graphics';
|
|
9
9
|
import { Tr2VariableStore as _Tr2VariableStore } from '../variable/Tr2VariableStore.js';
|
|
10
10
|
import { TriPoolAllocator } from '../rawData/TriPoolAllocator.js';
|
|
11
|
-
import { Tr2PerObjectData } from '../rawData/Tr2PerObjectData.js';
|
|
11
|
+
import { Tr2PerObjectData } from '../rawData/perObjectData/Tr2PerObjectData.js';
|
|
12
12
|
import { CjsDirectTrinityStepExecutor } from './CjsDirectTrinityStepExecutor.js';
|
|
13
|
-
import { CjsShadowMapExecutor } from './CjsShadowMapExecutor.js';
|
|
14
13
|
import { CjsTrinityStepExecutor } from './CjsTrinityStepExecutor.js';
|
|
15
|
-
import {
|
|
16
|
-
import
|
|
14
|
+
import { Tr2RenderBatch } from '../batch/TriRenderBatch/Tr2RenderBatch.js';
|
|
15
|
+
import '../batch/TriRenderBatch/DefaultKeyGenerator.js';
|
|
16
|
+
import '../batch/TriRenderBatch/EffectKeyGenerator.js';
|
|
17
|
+
import '../batch/TriRenderBatch/ITriRenderBatchAccumulator.js';
|
|
17
18
|
import { Tr2Shader } from '#resource/shader';
|
|
18
19
|
import { Tr2EffectStateManager as _Tr2EffectStateManage } from '../../shader/Tr2EffectStateManager.js';
|
|
19
|
-
import { Tr2RenderContextALStub } from '../../../trinityal/stub/Tr2RenderContextALStub.js';
|
|
20
|
+
import { Tr2RenderContextALStub } from '../../../trinityal/stub/Tr2RenderContextALStub/Tr2RenderContextALStub.js';
|
|
20
21
|
import { Tr2Blitter } from '../Tr2Blitter.js';
|
|
21
22
|
import { RealizeBatchGeometry } from '../mesh/TriGeometryResAllocations.js';
|
|
22
23
|
|
|
23
|
-
let _initClass;
|
|
24
|
+
let _initProto, _initClass;
|
|
24
25
|
const DIRECT_STEP_EXECUTOR = Object.freeze(new CjsDirectTrinityStepExecutor());
|
|
25
26
|
|
|
26
27
|
/** Carbon DEFAULT_TECHNIQUE (Tr2RenderContext.h:37). */
|
|
@@ -31,15 +32,16 @@ let _Tr2RenderContext;
|
|
|
31
32
|
new class extends _identity {
|
|
32
33
|
static [class Tr2RenderContext extends CjsModel {
|
|
33
34
|
static {
|
|
34
|
-
|
|
35
|
+
({
|
|
36
|
+
e: [_initProto],
|
|
37
|
+
c: [_Tr2RenderContext, _initClass]
|
|
38
|
+
} = _applyDecs2311(this, [type.define({
|
|
35
39
|
className: "Tr2RenderContext",
|
|
36
40
|
family: "trinityCore"
|
|
37
|
-
})], [], 0, void 0, CjsModel)
|
|
41
|
+
})], [[[impl, impl.custom, void 0, impl.reason("Forwards JS platform selection and its internal allocation mode to the installed abstraction-layer context.")], 18, "CreateResourceSet"]], 0, void 0, CjsModel));
|
|
38
42
|
}
|
|
39
|
-
#diagnostics = [];
|
|
43
|
+
#diagnostics = (_initProto(this), []);
|
|
40
44
|
#stepExecutor = DIRECT_STEP_EXECUTOR;
|
|
41
|
-
#shadowMapExecutor = null;
|
|
42
|
-
#volumetricsExecutor = null;
|
|
43
45
|
|
|
44
46
|
/**
|
|
45
47
|
* The abstraction-layer backend. THERE IS ALWAYS ONE.
|
|
@@ -131,47 +133,6 @@ new class extends _identity {
|
|
|
131
133
|
return this;
|
|
132
134
|
}
|
|
133
135
|
|
|
134
|
-
/**
|
|
135
|
-
* Installs the nominal engine implementation for cascaded-shadow realization.
|
|
136
|
-
* Passing null removes it; all shadow operations then fail loudly on use.
|
|
137
|
-
*/
|
|
138
|
-
SetShadowMapExecutor(executor) {
|
|
139
|
-
if (executor !== null && !(executor instanceof CjsShadowMapExecutor)) {
|
|
140
|
-
throw new TypeError("Tr2RenderContext.SetShadowMapExecutor expects a CjsShadowMapExecutor or null.");
|
|
141
|
-
}
|
|
142
|
-
this.#shadowMapExecutor = executor;
|
|
143
|
-
return this;
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
/** Returns the installed shadow executor, rejecting incomplete composition. */
|
|
147
|
-
GetShadowMapExecutor() {
|
|
148
|
-
if (!this.#shadowMapExecutor) {
|
|
149
|
-
throw new Error("Tr2RenderContext has no CjsShadowMapExecutor installed.");
|
|
150
|
-
}
|
|
151
|
-
return this.#shadowMapExecutor;
|
|
152
|
-
}
|
|
153
|
-
|
|
154
|
-
/**
|
|
155
|
-
* Installs the nominal engine implementation for volumetric realization.
|
|
156
|
-
* Passing null removes it; all physical volumetric operations then fail on
|
|
157
|
-
* use instead of being skipped.
|
|
158
|
-
*/
|
|
159
|
-
SetVolumetricsExecutor(executor) {
|
|
160
|
-
if (executor !== null && !(executor instanceof CjsVolumetricsExecutor)) {
|
|
161
|
-
throw new TypeError("Tr2RenderContext.SetVolumetricsExecutor expects a CjsVolumetricsExecutor or null.");
|
|
162
|
-
}
|
|
163
|
-
this.#volumetricsExecutor = executor;
|
|
164
|
-
return this;
|
|
165
|
-
}
|
|
166
|
-
|
|
167
|
-
/** Returns the installed volumetrics executor, rejecting incomplete composition. */
|
|
168
|
-
GetVolumetricsExecutor() {
|
|
169
|
-
if (!this.#volumetricsExecutor) {
|
|
170
|
-
throw new Error("Tr2RenderContext has no CjsVolumetricsExecutor installed.");
|
|
171
|
-
}
|
|
172
|
-
return this.#volumetricsExecutor;
|
|
173
|
-
}
|
|
174
|
-
|
|
175
136
|
/**
|
|
176
137
|
* Delegates step setup to the installed nominal executor.
|
|
177
138
|
*/
|
|
@@ -435,12 +396,12 @@ new class extends _identity {
|
|
|
435
396
|
* Binds a render target to a slot and records a set-render-target intent for
|
|
436
397
|
* the engine to realize.
|
|
437
398
|
*/
|
|
438
|
-
SetRenderTarget(slot, renderTarget) {
|
|
399
|
+
SetRenderTarget(slot, renderTarget, slice = 0) {
|
|
439
400
|
// THE BACKEND OWNS THE BINDING, as Carbon's do (m_boundRenderTarget), and
|
|
440
401
|
// GetRenderTarget below reads it back from there. The context kept a
|
|
441
402
|
// duplicate map while it was also a recorder; two copies of one binding is
|
|
442
403
|
// one too many, and the local one was the stale half.
|
|
443
|
-
return this.#requireAL("SetRenderTarget").SetRenderTarget(Number(slot) >>> 0, renderTarget);
|
|
404
|
+
return this.#requireAL("SetRenderTarget").SetRenderTarget(Number(slot) >>> 0, renderTarget, Number(slice) >>> 0);
|
|
444
405
|
}
|
|
445
406
|
|
|
446
407
|
// THE BACKEND'S FRAME CLOCK, WHICH IS NOT THE ONE ABOVE. `AdvanceFrame` and
|
|
@@ -535,6 +496,63 @@ new class extends _identity {
|
|
|
535
496
|
return this.#requireAL("Clear").Clear(options);
|
|
536
497
|
}
|
|
537
498
|
|
|
499
|
+
/**
|
|
500
|
+
* Binds the depth buffer read-only, so it can be sampled while still tested.
|
|
501
|
+
*
|
|
502
|
+
* Carbon reaches this straight off the context because its Tr2RenderContext IS
|
|
503
|
+
* the backend context; ours forwards, like every other device verb here.
|
|
504
|
+
*
|
|
505
|
+
* @param {boolean} enable Whether depth is read-only.
|
|
506
|
+
* @returns {boolean} Whether the backend accepted it.
|
|
507
|
+
*/
|
|
508
|
+
SetReadOnlyDepth(enable) {
|
|
509
|
+
return this.#requireAL("SetReadOnlyDepth").SetReadOnlyDepth(enable);
|
|
510
|
+
}
|
|
511
|
+
|
|
512
|
+
/**
|
|
513
|
+
* Declares what the next render pass does with its attachments.
|
|
514
|
+
*
|
|
515
|
+
* Carbon calls this on the render context (`Tr2Denoiser.cpp:106` and each
|
|
516
|
+
* pass after it). It is a BACKEND concept - Metal names the record
|
|
517
|
+
* `MetalRenderPassHint` and WebGPU spells the same thing as loadOp/storeOp on
|
|
518
|
+
* a pass descriptor - so this forwards, exactly as SetReadOnlyDepth does.
|
|
519
|
+
*
|
|
520
|
+
* Declaring DONT_CARE for a target about to be fully overwritten is the
|
|
521
|
+
* difference between the driver preserving its previous contents and
|
|
522
|
+
* discarding them; on a tiler that is the whole cost of the pass.
|
|
523
|
+
*
|
|
524
|
+
* @param {...object} attachments Colour attachments, then depth.
|
|
525
|
+
* @returns {*} Whatever the backend reports.
|
|
526
|
+
*/
|
|
527
|
+
RenderPassHint(...attachments) {
|
|
528
|
+
return this.#requireAL("RenderPassHint").RenderPassHint(...attachments);
|
|
529
|
+
}
|
|
530
|
+
|
|
531
|
+
/**
|
|
532
|
+
* The projection with its depth range reversed.
|
|
533
|
+
*
|
|
534
|
+
* Carbon `Tr2Renderer::GetReversedDepthProjectionTransform`
|
|
535
|
+
* (`Tr2Renderer.cpp:477-483`): the projection with `_33` negated and offset
|
|
536
|
+
* by one, and `_43` negated. It lives here because this runtime keeps the
|
|
537
|
+
* projection here - the same relocation as the other Tr2Renderer statics.
|
|
538
|
+
*
|
|
539
|
+
* WHO NEEDS IT: a pass reconstructing view-space position from a depth
|
|
540
|
+
* buffer written under reverse-Z, which is what Carbon renders with. The
|
|
541
|
+
* denoiser takes it to weight neighbouring samples by depth.
|
|
542
|
+
*
|
|
543
|
+
* @param {Array<number>} [out] A mat4 to receive it.
|
|
544
|
+
* @returns {Array<number>|null} The reversed projection, or null if unset.
|
|
545
|
+
*/
|
|
546
|
+
GetReversedDepthProjectionTransform(out = mat4.create()) {
|
|
547
|
+
if (!this.#projection) return null;
|
|
548
|
+
mat4.copy(out, this.#projection);
|
|
549
|
+
// Carbon indexes _33 and _43 in row-major; column-major here puts them at
|
|
550
|
+
// 10 and 14.
|
|
551
|
+
out[10] = -out[10] - 1;
|
|
552
|
+
out[14] = -out[14];
|
|
553
|
+
return out;
|
|
554
|
+
}
|
|
555
|
+
|
|
538
556
|
/**
|
|
539
557
|
* What the installed backend can do.
|
|
540
558
|
*
|
|
@@ -731,8 +749,8 @@ new class extends _identity {
|
|
|
731
749
|
* @param {object} program A `Tr2ShaderProgramAL`.
|
|
732
750
|
* @returns {object|null} A `Tr2ResourceSetAL`, or null when Create refused.
|
|
733
751
|
*/
|
|
734
|
-
CreateResourceSet(description, program) {
|
|
735
|
-
return this.#requireAL("CreateResourceSet").CreateResourceSet(description, program);
|
|
752
|
+
CreateResourceSet(description, program, implementationOnly = false) {
|
|
753
|
+
return this.#requireAL("CreateResourceSet").CreateResourceSet(description, program, implementationOnly);
|
|
736
754
|
}
|
|
737
755
|
|
|
738
756
|
/**
|