@carbonenginejs/runtime-resource 0.12.0 → 0.12.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/dist/CjsResMan.js +4 -4
- package/dist/CjsResMan.js.map +1 -1
- package/dist/_virtual/_rollupPluginBabelHelpers.js +1 -4
- package/dist/_virtual/_rollupPluginBabelHelpers.js.map +1 -1
- package/dist/format/CjsByteReader.js +310 -0
- package/dist/format/CjsByteReader.js.map +1 -0
- package/dist/format/CjsByteWriter.js +242 -0
- package/dist/format/CjsByteWriter.js.map +1 -0
- package/dist/format/CjsFormatError.js +41 -0
- package/dist/format/CjsFormatError.js.map +1 -0
- package/dist/format/CjsStringTable.js +268 -0
- package/dist/format/CjsStringTable.js.map +1 -0
- package/dist/format/carbonEffect/CjsCarbonEffectReader.js +361 -0
- package/dist/format/carbonEffect/CjsCarbonEffectReader.js.map +1 -0
- package/dist/format/carbonEffect/CjsCarbonEffectWriter.js +373 -0
- package/dist/format/carbonEffect/CjsCarbonEffectWriter.js.map +1 -0
- package/dist/format/carbonEffect/carbonDescriptionFromPortable.js +372 -0
- package/dist/format/carbonEffect/carbonDescriptionFromPortable.js.map +1 -0
- package/dist/format/carbonEffect/carbonEffectBackendBlock.js +427 -0
- package/dist/format/carbonEffect/carbonEffectBackendBlock.js.map +1 -0
- package/dist/format/carbonEffect/carbonEffectRecords.js +955 -0
- package/dist/format/carbonEffect/carbonEffectRecords.js.map +1 -0
- package/dist/format/compareUtf8.js +36 -0
- package/dist/format/compareUtf8.js.map +1 -0
- package/dist/format/index.js +11 -0
- package/dist/format/index.js.map +1 -0
- package/dist/formats/bnk/CjsBnkFormat.js +10 -4
- package/dist/formats/bnk/CjsBnkFormat.js.map +1 -1
- package/dist/formats/bnk/core/eventAction.js +305 -0
- package/dist/formats/bnk/core/eventAction.js.map +1 -0
- package/dist/formats/bnk/core/helpers.js +11 -2
- package/dist/formats/bnk/core/helpers.js.map +1 -1
- package/dist/formats/bnk/core/nodeBase.js +532 -0
- package/dist/formats/bnk/core/nodeBase.js.map +1 -0
- package/dist/formats/bnk/core/sfxNodes.js +252 -152
- package/dist/formats/bnk/core/sfxNodes.js.map +1 -1
- package/dist/formats/hlsl/core/HlslReader.js +7 -257
- package/dist/formats/hlsl/core/HlslReader.js.map +1 -1
- package/dist/formats/hlsl/core/carbonDescriptionToRuntime.js +781 -0
- package/dist/formats/hlsl/core/carbonDescriptionToRuntime.js.map +1 -0
- package/dist/formats/hlsl/core/tr2/resources/HlslEffectRes.js +21 -1
- package/dist/formats/hlsl/core/tr2/resources/HlslEffectRes.js.map +1 -1
- package/dist/formats/index.js +1 -1
- package/dist/formats/webgl/core/cewg/CewgPackage.js +2 -1
- package/dist/formats/webgl/core/cewg/CewgPackage.js.map +1 -1
- package/dist/formats/webgl/core/cewg/binary.js +11 -93
- package/dist/formats/webgl/core/cewg/binary.js.map +1 -1
- package/dist/formats/webgl/core/effectPackage.js +1 -1
- package/dist/formats/webgpu/CjsWebgpuFormat.js +4 -23
- package/dist/formats/webgpu/CjsWebgpuFormat.js.map +1 -1
- package/dist/formats/webgpu/core/buildCarbonEffectContainer.js +197 -0
- package/dist/formats/webgpu/core/buildCarbonEffectContainer.js.map +1 -0
- package/dist/formats/webgpu/core/cewgpu/CewgpuContainer.js +368 -0
- package/dist/formats/webgpu/core/cewgpu/CewgpuContainer.js.map +1 -0
- package/dist/formats/webgpu/core/cewgpu/containerViews.js +355 -0
- package/dist/formats/webgpu/core/cewgpu/containerViews.js.map +1 -0
- package/dist/formats/webgpu/core/cewgpu/validateContainer.js +90 -0
- package/dist/formats/webgpu/core/cewgpu/validateContainer.js.map +1 -0
- package/dist/formats/webgpu/core/effectBackendBodySet.js +21 -20
- package/dist/formats/webgpu/core/effectBackendBodySet.js.map +1 -1
- package/dist/formats/webgpu/core/helpers.js +87 -92
- package/dist/formats/webgpu/core/helpers.js.map +1 -1
- package/dist/formats/webgpu/core/ir/analyzeRegisterValues.js +14 -13
- package/dist/formats/webgpu/core/ir/analyzeRegisterValues.js.map +1 -1
- package/dist/formats/webgpu/core/ir/inferValueTypes.js +10 -8
- package/dist/formats/webgpu/core/ir/inferValueTypes.js.map +1 -1
- package/dist/formats/webgpu/core/packageEffect.js +94 -9
- package/dist/formats/webgpu/core/packageEffect.js.map +1 -1
- package/dist/formats/webgpu/core/packageMetadata.js +10 -1
- package/dist/formats/webgpu/core/packageMetadata.js.map +1 -1
- package/dist/formats/webgpu/core/wgsl/buildResourceTransformPlan.js +17 -15
- package/dist/formats/webgpu/core/wgsl/buildResourceTransformPlan.js.map +1 -1
- package/dist/formats/webgpu/core/wgsl/buildWgslBindingPlan.js +13 -12
- package/dist/formats/webgpu/core/wgsl/buildWgslBindingPlan.js.map +1 -1
- package/dist/formats/webgpu/core/wgsl/buildWgslSet.js +9 -8
- package/dist/formats/webgpu/core/wgsl/buildWgslSet.js.map +1 -1
- package/dist/formats/webgpu/core/wgsl/lowerComputeProgram.js +23 -22
- package/dist/formats/webgpu/core/wgsl/lowerComputeProgram.js.map +1 -1
- package/dist/formats/webgpu/core/wgsl/selectionPlans.js +46 -44
- package/dist/formats/webgpu/core/wgsl/selectionPlans.js.map +1 -1
- package/dist/resource/CjsResource.js +700 -684
- package/dist/resource/CjsResource.js.map +1 -1
- package/dist/resource/Tr2LightProfileRes.js +18 -27
- package/dist/resource/Tr2LightProfileRes.js.map +1 -1
- package/dist/resource/audio/CjsAudioBufferRes.js +2 -2
- package/dist/resource/audio/CjsAudioBufferRes.js.map +1 -1
- package/dist/resource/audio/CjsAudioRes.js +2 -2
- package/dist/resource/audio/CjsAudioRes.js.map +1 -1
- package/dist/resource/geometry/TriGeometryRes.js +605 -586
- package/dist/resource/geometry/TriGeometryRes.js.map +1 -1
- package/dist/resource/geometry/granny/Tr2GrannyStateRes.js +21 -30
- package/dist/resource/geometry/granny/Tr2GrannyStateRes.js.map +1 -1
- package/dist/resource/geometry/granny/TriGrannyRes.js +21 -30
- package/dist/resource/geometry/granny/TriGrannyRes.js.map +1 -1
- package/dist/resource/shader/Tr2EffectRes.js +9 -7
- package/dist/resource/shader/Tr2EffectRes.js.map +1 -1
- package/dist/resource/shader/Tr2MaterialArea.js +5 -3
- package/dist/resource/shader/Tr2MaterialArea.js.map +1 -1
- package/dist/resource/shader/Tr2MaterialMesh.js +4 -2
- package/dist/resource/shader/Tr2MaterialMesh.js.map +1 -1
- package/dist/resource/shader/Tr2MaterialRes.js +5 -3
- package/dist/resource/shader/Tr2MaterialRes.js.map +1 -1
- package/dist/resource/shader/Tr2Shader.js +26 -21
- package/dist/resource/shader/Tr2Shader.js.map +1 -1
- package/dist/resource/shader/Tr2ShaderPermutation.js +8 -6
- package/dist/resource/shader/Tr2ShaderPermutation.js.map +1 -1
- package/dist/resource/shader/reflection/Tr2EffectDefine.js +5 -3
- package/dist/resource/shader/reflection/Tr2EffectDefine.js.map +1 -1
- package/dist/resource/shader/reflection/Tr2EffectDescription.js +5 -3
- package/dist/resource/shader/reflection/Tr2EffectDescription.js.map +1 -1
- package/dist/resource/shader/reflection/Tr2EffectLibrary.js +17 -15
- package/dist/resource/shader/reflection/Tr2EffectLibrary.js.map +1 -1
- package/dist/resource/shader/reflection/Tr2EffectParameterAnnotation.js +11 -9
- package/dist/resource/shader/reflection/Tr2EffectParameterAnnotation.js.map +1 -1
- package/dist/resource/shader/reflection/Tr2EffectResource.js +8 -6
- package/dist/resource/shader/reflection/Tr2EffectResource.js.map +1 -1
- package/dist/resource/shader/reflection/Tr2EffectStageInput.js +15 -13
- package/dist/resource/shader/reflection/Tr2EffectStageInput.js.map +1 -1
- package/dist/resource/shader/reflection/Tr2EffectTechnique.js +7 -5
- package/dist/resource/shader/reflection/Tr2EffectTechnique.js.map +1 -1
- package/dist/resource/shader/reflection/Tr2Pass.js +11 -9
- package/dist/resource/shader/reflection/Tr2Pass.js.map +1 -1
- package/dist/resource/shader/sampler/Tr2SamplerSetup.js +8 -6
- package/dist/resource/shader/sampler/Tr2SamplerSetup.js.map +1 -1
- package/dist/resource/texture/CjsTextureArrayRes.js +400 -411
- package/dist/resource/texture/CjsTextureArrayRes.js.map +1 -1
- package/dist/resource/texture/Tr2ImageRes.js +99 -95
- package/dist/resource/texture/Tr2ImageRes.js.map +1 -1
- package/dist/resource/texture/TriTextureRes.js +312 -273
- package/dist/resource/texture/TriTextureRes.js.map +1 -1
- package/docs/README.md +13 -1
- package/docs/architecture.md +3 -3
- package/docs/concepts/resource-lifecycle.md +9 -2
- package/docs/concepts/shader-resource-model.md +114 -0
- package/docs/concepts/writing-an-engine-adapter.md +115 -0
- package/docs/formats/README.md +24 -1
- package/docs/formats/carbon-effect-container.md +452 -0
- package/docs/formats/dxbc/reference/classes/README.md +5 -72
- package/docs/formats/hlsl/reference/api.md +5 -4
- package/docs/formats/hlsl/reference/classes/README.md +6 -11
- package/docs/formats/provenance.md +23 -13
- package/docs/formats/webgl/reference/classes/README.md +5 -92
- package/docs/formats/webgpu/README.md +19 -16
- package/docs/formats/webgpu/architecture.md +15 -12
- package/docs/formats/webgpu/formats/cewgpu.md +175 -438
- package/docs/formats/webgpu/guides/effect-packaging.md +132 -140
- package/docs/formats/webgpu/reference/api.md +131 -131
- package/docs/formats/webgpu/reference/classes/README.md +5 -62
- package/docs/formats/webgpu/reference/wgsl-compatibility.md +146 -45
- package/docs/formats/wwise.md +34 -8
- package/docs/reference/classes/core.md +80 -0
- package/docs/reference/classes/formats.md +18 -28
- package/docs/reference/events.md +25 -0
- package/docs/reference/motherlode-cache.md +22 -8
- package/docs/reference/workers.md +5 -5
- package/docs/roadmap.md +61 -41
- package/package.json +2 -1
- package/dist/formats/webgpu/core/cewgpu/CewgpuPackage.js +0 -415
- package/dist/formats/webgpu/core/cewgpu/CewgpuPackage.js.map +0 -1
- package/dist/formats/webgpu/core/cewgpu/CewgpuPackageBuilder.js +0 -100
- package/dist/formats/webgpu/core/cewgpu/CewgpuPackageBuilder.js.map +0 -1
- package/dist/formats/webgpu/core/cewgpu/binary.js +0 -93
- package/dist/formats/webgpu/core/cewgpu/binary.js.map +0 -1
- package/dist/formats/webgpu/core/cewgpu/tags.js +0 -17
- package/dist/formats/webgpu/core/cewgpu/tags.js.map +0 -1
- package/dist/formats/webgpu/core/effectPackageValidation.js +0 -1078
- package/dist/formats/webgpu/core/effectPackageValidation.js.map +0 -1
- package/docs/formats/hlsl/reference/classes/carbon-compatibility.md +0 -66
- package/docs/formats/hlsl/reference/classes/public-api.md +0 -26
- package/docs/formats/hlsl/reference/classes/tr2-effect-model.md +0 -150
|
@@ -1,96 +1,9 @@
|
|
|
1
|
-
#
|
|
1
|
+
# WebGL class catalog
|
|
2
2
|
|
|
3
|
-
Status:
|
|
3
|
+
Status: Deprecated
|
|
4
4
|
Scope: `@carbonenginejs/runtime-resource/formats/webgl` maintained classes
|
|
5
5
|
Audience: Users, maintainers, and automated readers
|
|
6
|
-
Summary:
|
|
6
|
+
Summary: Points to the canonical package-wide class catalog after format-package consolidation.
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
CarbonEngineJS-facing format surface for `.cewg` WebGL shader packages, and a DXBC -> GLSL ES 3.00 emitter for the WebGL2 vertex/pixel/map-style-compute stages ccpwgl targets.
|
|
12
|
-
|
|
13
|
-
- Export: `@carbonenginejs/runtime-resource/formats/webgl`
|
|
14
|
-
- Source: `src/CjsWebglFormat.js`
|
|
15
|
-
- Visibility: Public
|
|
16
|
-
- Kind: CarbonEngineJS
|
|
17
|
-
|
|
18
|
-
<!-- class:CewgPackage -->
|
|
19
|
-
## `CewgPackage`
|
|
20
|
-
|
|
21
|
-
Reader for CarbonEngineJS CEWG shader packages emitted by `hlsl2webgl`.
|
|
22
|
-
|
|
23
|
-
- Export: None
|
|
24
|
-
- Source: `src/core/cewg/CewgPackage.js`
|
|
25
|
-
- Visibility: Internal
|
|
26
|
-
- Kind: Internal implementation
|
|
27
|
-
|
|
28
|
-
<!-- class:CewgPackageBuilder -->
|
|
29
|
-
## `CewgPackageBuilder`
|
|
30
|
-
|
|
31
|
-
Builds CarbonEngineJS CEWG shader package bytes.
|
|
32
|
-
|
|
33
|
-
- Export: None
|
|
34
|
-
- Source: `src/core/cewg/CewgPackageBuilder.js`
|
|
35
|
-
- Visibility: Internal
|
|
36
|
-
- Kind: Internal implementation
|
|
37
|
-
|
|
38
|
-
<!-- class:CjsBinaryReader -->
|
|
39
|
-
## `CjsBinaryReader`
|
|
40
|
-
|
|
41
|
-
Minimal little-endian binary reader for the flat CEWG chunk container.
|
|
42
|
-
|
|
43
|
-
- Export: None
|
|
44
|
-
- Source: `src/core/cewg/binary.js`
|
|
45
|
-
- Visibility: Internal
|
|
46
|
-
- Kind: Internal implementation
|
|
47
|
-
|
|
48
|
-
<!-- class:ReflectionBlobStore -->
|
|
49
|
-
## `ReflectionBlobStore`
|
|
50
|
-
|
|
51
|
-
Builds a deterministic deduplicated byte arena for portable reflection.
|
|
52
|
-
|
|
53
|
-
- Export: None
|
|
54
|
-
- Source: `src/core/effectReflectionPackage.js`
|
|
55
|
-
- Visibility: Internal
|
|
56
|
-
- Kind: Internal implementation
|
|
57
|
-
|
|
58
|
-
<!-- class:CjsWebglReadError -->
|
|
59
|
-
## `CjsWebglReadError`
|
|
60
|
-
|
|
61
|
-
Error raised when a CEWG package or a DXBC-to-GLSL emission cannot be completed safely.
|
|
62
|
-
|
|
63
|
-
- Export: None
|
|
64
|
-
- Source: `src/core/errors.js`
|
|
65
|
-
- Visibility: Internal
|
|
66
|
-
- Kind: Internal implementation
|
|
67
|
-
|
|
68
|
-
<!-- class:DxbcGlslEmitter -->
|
|
69
|
-
## `DxbcGlslEmitter`
|
|
70
|
-
|
|
71
|
-
DXBC -> GLSL ES 3.00 emitter for vertex and pixel stages.
|
|
72
|
-
|
|
73
|
-
- Export: None
|
|
74
|
-
- Source: `src/core/glsl/DxbcGlslEmitter.js`
|
|
75
|
-
- Visibility: Internal
|
|
76
|
-
- Kind: Internal implementation
|
|
77
|
-
|
|
78
|
-
<!-- class:DxbcGlslHelperRegistry -->
|
|
79
|
-
## `DxbcGlslHelperRegistry`
|
|
80
|
-
|
|
81
|
-
Registry of GLSL helper functions the emitter can require per shader.
|
|
82
|
-
|
|
83
|
-
- Export: None
|
|
84
|
-
- Source: `src/core/glsl/DxbcGlslHelpers.js`
|
|
85
|
-
- Visibility: Internal
|
|
86
|
-
- Kind: Internal implementation
|
|
87
|
-
|
|
88
|
-
<!-- class:DxbcGlslOperandFormatter -->
|
|
89
|
-
## `DxbcGlslOperandFormatter`
|
|
90
|
-
|
|
91
|
-
Formats decoded DXBC operands as GLSL ES 3.00 expressions and assignments.
|
|
92
|
-
|
|
93
|
-
- Export: None
|
|
94
|
-
- Source: `src/core/glsl/DxbcGlslOperandFormatter.js`
|
|
95
|
-
- Visibility: Internal
|
|
96
|
-
- Kind: Internal implementation
|
|
8
|
+
The maintained WebGL entries now live in the
|
|
9
|
+
[package-wide formats class catalog](../../../../reference/classes/formats.md#webgl).
|
|
@@ -3,32 +3,35 @@
|
|
|
3
3
|
Status: Evolving
|
|
4
4
|
Scope: `@carbonenginejs/runtime-resource/formats/webgpu`
|
|
5
5
|
Audience: Shader-tool authors, engine integrators, and maintainers
|
|
6
|
-
Summary: Explains the CEWGPU
|
|
6
|
+
Summary: Explains the Carbon-record CEWGPU format, compiled-effect conversion API, and bounded DXBC-to-WGSL compiler.
|
|
7
7
|
|
|
8
8
|
## Purpose
|
|
9
9
|
|
|
10
|
-
`@carbonenginejs/runtime-resource/formats/webgpu` reads and builds
|
|
11
|
-
converts supported compiled
|
|
10
|
+
`@carbonenginejs/runtime-resource/formats/webgpu` reads and builds WebGPU
|
|
11
|
+
effect containers and converts supported compiled-effect stages into WGSL. It
|
|
12
12
|
owns effect analysis, DXBC-to-intermediate-representation lowering, WGSL
|
|
13
|
-
emission, pass-global binding planning, and
|
|
13
|
+
emission, pass-global binding planning, and the WebGPU backend block carried by
|
|
14
|
+
Carbon version-15 records.
|
|
14
15
|
|
|
15
16
|
Unsupported requested shader semantics fail explicitly instead of producing a
|
|
16
|
-
partially translated selected pass. `BuildEffect` preserves
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
17
|
+
partially translated selected pass. `BuildEffect` preserves every permutation
|
|
18
|
+
row and representable non-program description/reflection fields in the Carbon
|
|
19
|
+
container. Non-dynamic sampler names are unrecoverable and stage order is
|
|
20
|
+
canonicalized. Source-stage DXBC is replaced by WGSL or an empty program slot.
|
|
21
|
+
Selected mode writes WGSL only for the resolved body's requested passes; all
|
|
22
|
+
mode attempts every distinct body after the resolved body passes the initial
|
|
23
|
+
translation gate. Backend and runtime completeness remain broader gates.
|
|
20
24
|
|
|
21
25
|
## Use this package when
|
|
22
26
|
|
|
23
|
-
Use
|
|
27
|
+
Use the WebGPU format subpath when you need to:
|
|
24
28
|
|
|
25
29
|
- inspect or build a `.cewgpu` package;
|
|
26
30
|
- analyze caller-supplied compiled effect bytes;
|
|
27
31
|
- lower supported DXBC vertex and fragment programs to WGSL;
|
|
28
32
|
- build one collision-free WebGPU binding layout across a complete pass; or
|
|
29
|
-
-
|
|
30
|
-
|
|
31
|
-
portable reflection.
|
|
33
|
+
- translate selected or all distinct version-15 effect bodies while preserving
|
|
34
|
+
permutation topology and representable non-program reflection fields.
|
|
32
35
|
|
|
33
36
|
Use `@carbonenginejs/runtime-resource/formats/hlsl` directly for effect metadata without WGSL
|
|
34
37
|
conversion, and `@carbonenginejs/runtime-resource/formats/dxbc` directly for standalone DXBC
|
|
@@ -40,15 +43,15 @@ belong in `@carbonenginejs/engine-webgpu`.
|
|
|
40
43
|
```text
|
|
41
44
|
compiled effect bytes
|
|
42
45
|
|
|
|
43
|
-
+----
|
|
46
|
+
+---- formats/hlsl ---- effect and binding metadata
|
|
44
47
|
|
|
|
45
|
-
+----
|
|
48
|
+
+---- formats/dxbc ---- decoded shader programs
|
|
46
49
|
| |
|
|
47
50
|
+------------------------------+
|
|
48
51
|
|
|
|
49
52
|
v
|
|
50
|
-
|
|
51
|
-
|
|
53
|
+
formats/webgpu
|
|
54
|
+
analysis + WGSL + Carbon records
|
|
52
55
|
|
|
|
53
56
|
v
|
|
54
57
|
engine-webgpu
|
|
@@ -7,10 +7,10 @@ Summary: Defines the package's compiler, container, dependency, and engine bound
|
|
|
7
7
|
|
|
8
8
|
## Purpose
|
|
9
9
|
|
|
10
|
-
|
|
11
|
-
Carbon
|
|
12
|
-
shader programs into
|
|
13
|
-
objects.
|
|
10
|
+
The WebGPU format subpath is the transformation and package layer between
|
|
11
|
+
compiled Carbon effects and WebGPU engine realization. It converts supported
|
|
12
|
+
shader programs into WGSL and writes Carbon version-15 effect records without
|
|
13
|
+
creating live GPU objects.
|
|
14
14
|
|
|
15
15
|
## Dependency direction
|
|
16
16
|
|
|
@@ -35,12 +35,15 @@ then package data to the engine.
|
|
|
35
35
|
|
|
36
36
|
## Owned responsibilities
|
|
37
37
|
|
|
38
|
-
- Reading, inspecting, and building
|
|
38
|
+
- Reading, inspecting, and building Carbon-record CEWGPU containers.
|
|
39
39
|
- Resolving one compiled-effect permutation and complete pass.
|
|
40
|
-
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
40
|
+
- Preserving every source permutation row and representable non-program
|
|
41
|
+
description field; non-dynamic sampler names are unrecoverable and stage
|
|
42
|
+
order is canonicalized.
|
|
43
|
+
Stored-body identity is exact emitted-description-byte identity; it does not
|
|
44
|
+
promise to retain the source alias partition after programs are replaced.
|
|
45
|
+
- Writing WGSL to program slots and bind-group/transform data to the optional
|
|
46
|
+
per-pass backend block.
|
|
44
47
|
- Normalizing effect, stage, binding, and decoded DXBC analysis.
|
|
45
48
|
- Building validated shader intermediate representation and structured control
|
|
46
49
|
flow.
|
|
@@ -51,11 +54,11 @@ then package data to the engine.
|
|
|
51
54
|
|
|
52
55
|
## Ownership elsewhere
|
|
53
56
|
|
|
54
|
-
-
|
|
57
|
+
- `@carbonenginejs/runtime-resource/formats/hlsl` owns compiled-effect parsing, permutation resolution,
|
|
55
58
|
unique-body enumeration, binding-manifest interpretation, and the shared
|
|
56
59
|
body-local portable reflection schema/validator.
|
|
57
|
-
-
|
|
58
|
-
-
|
|
60
|
+
- `@carbonenginejs/runtime-resource/formats/dxbc` owns DXBC container and instruction decoding.
|
|
61
|
+
- `@carbonenginejs/engine-webgpu` owns `GPUDevice`, shader-module compilation, bind groups,
|
|
59
62
|
pipelines, resource realization, device loss, and draw execution.
|
|
60
63
|
- Node tooling owns indexed input acquisition, filesystem adapters, caching,
|
|
61
64
|
build reports, and optional native comparison.
|