@carbonenginejs/runtime-resource 0.16.0 → 0.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/format/CjsFormat.js +84 -83
- package/dist/format/CjsFormat.js.map +1 -1
- package/dist/format/CjsResourceProbe.js +87 -86
- package/dist/format/CjsResourceProbe.js.map +1 -1
- package/dist/format/carbonEffect/backendEngineId.js +98 -0
- package/dist/format/carbonEffect/backendEngineId.js.map +1 -0
- package/dist/format/carbonEffect/carbonEffectBackendBlock.js +24 -23
- package/dist/format/carbonEffect/carbonEffectBackendBlock.js.map +1 -1
- package/dist/format/carbonEffect/carbonEffectResourceTransform.js +1 -1
- package/dist/format/carbonEffect/carbonEffectResourceTransform.js.map +1 -1
- package/dist/format/effect/effectPermutationGraph.js +46 -29
- package/dist/format/effect/effectPermutationGraph.js.map +1 -1
- package/dist/format/index.js +1 -1
- package/dist/formats/hlsl/core/detailMapFamily.js +1 -1
- package/dist/formats/hlsl/core/detailMapFamily.js.map +1 -1
- package/dist/formats/hlsl/core/localLightFamily.js +1 -1
- package/dist/formats/hlsl/core/localLightFamily.js.map +1 -1
- package/dist/formats/png/core/helpers.js +27 -8
- package/dist/formats/png/core/helpers.js.map +1 -1
- package/dist/formats/webgl/core/effectPackage.js +143 -56
- package/dist/formats/webgl/core/effectPackage.js.map +1 -1
- package/dist/formats/webgl/core/glsl/DxbcGlslEmitter.js +799 -456
- package/dist/formats/webgl/core/glsl/DxbcGlslEmitter.js.map +1 -1
- package/dist/formats/webgl/core/glslBackendBlock.js +74 -30
- package/dist/formats/webgl/core/glslBackendBlock.js.map +1 -1
- package/dist/formats/webgl/core/glslBackendBodySet.js +0 -1
- package/dist/formats/webgl/core/glslBackendBodySet.js.map +1 -1
- package/dist/formats/webgl/core/helpers.js +53 -53
- package/dist/formats/webgl/core/helpers.js.map +1 -1
- package/dist/formats/webgl/core/readGlslEffectContainer.js +82 -67
- package/dist/formats/webgl/core/readGlslEffectContainer.js.map +1 -1
- package/dist/formats/webgpu/CjsWebgpuFormat.js +161 -163
- package/dist/formats/webgpu/CjsWebgpuFormat.js.map +1 -1
- package/dist/formats/webgpu/core/carbonWebgpu/CarbonWebgpuContainer.js +10 -1
- package/dist/formats/webgpu/core/carbonWebgpu/CarbonWebgpuContainer.js.map +1 -1
- package/dist/formats/webgpu/core/effectBackendBodySet.js +21 -22
- package/dist/formats/webgpu/core/effectBackendBodySet.js.map +1 -1
- package/dist/formats/webgpu/core/helpers.js +111 -99
- package/dist/formats/webgpu/core/helpers.js.map +1 -1
- package/dist/formats/webgpu/core/packageEffect.js +30 -32
- package/dist/formats/webgpu/core/packageEffect.js.map +1 -1
- package/dist/formats/wem/CjsWemFormat.js +121 -121
- package/dist/formats/wem/CjsWemFormat.js.map +1 -1
- package/dist/formats/wem/core/resolve.js +8 -8
- package/dist/formats/wem/core/resolve.js.map +1 -1
- package/dist/resource/shader/reflection/Tr2EffectStageInput.js +102 -60
- package/dist/resource/shader/reflection/Tr2EffectStageInput.js.map +1 -1
- package/docs/concepts/format-type-resolution.md +79 -0
- package/docs/formats/README.md +11 -0
- package/docs/formats/webgpu/formats/carbon-webgpu.md +11 -4
- package/docs/formats/webgpu/reference/api.md +7 -6
- package/docs/formats/wwise.md +25 -0
- package/docs/roadmap.md +19 -0
- package/package.json +2 -2
package/docs/roadmap.md
CHANGED
|
@@ -130,6 +130,25 @@ playback or decoded-cache lifetime would unnecessarily retain both
|
|
|
130
130
|
representations. Runtime-lifetime and group retention remain caller policy
|
|
131
131
|
built from explicit tokens, not an implicit default on every loaded resource.
|
|
132
132
|
|
|
133
|
+
## Content-verified routing in the read path
|
|
134
|
+
|
|
135
|
+
[Type resolution](concepts/format-type-resolution.md) exists as a per-format
|
|
136
|
+
seam, but nothing in the resource read path consults it. `CjsResMan` still
|
|
137
|
+
picks a format by extension through the synchronous support check, so a
|
|
138
|
+
mislabeled container acquired the ordinary way is not corrected — only a caller
|
|
139
|
+
that invokes `resolveType()` directly gets the verified answer.
|
|
140
|
+
|
|
141
|
+
Wiring it in means awaiting a resolution between obtaining bytes and reading
|
|
142
|
+
them, letting the resolved route supply the default emit while a caller-forced
|
|
143
|
+
emit still wins, and deciding whether an extension tie-break may become
|
|
144
|
+
asynchronous. The cost question is the real one: the read path must not pay for
|
|
145
|
+
a content check on every resource merely because some format could opt in.
|
|
146
|
+
|
|
147
|
+
Alongside it, `CjsWemFormat` could expose a single resolve-then-route output so
|
|
148
|
+
a caller stops choosing between `raw`, `ogg`, and `pcm` for media whose codec
|
|
149
|
+
the reader has already established. Today all three are distinct declared
|
|
150
|
+
outputs.
|
|
151
|
+
|
|
133
152
|
## Open design questions
|
|
134
153
|
|
|
135
154
|
- Should `Unload()` drop only adapter payloads by default, or CPU payloads
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@carbonenginejs/runtime-resource",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.18.0",
|
|
4
4
|
"description": "CarbonEngineJS resource lifecycle, cache, source, and object loading contracts.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
"node": ">=18"
|
|
53
53
|
},
|
|
54
54
|
"dependencies": {
|
|
55
|
-
"@carbonenginejs/runtime-utils": "^0.1.
|
|
55
|
+
"@carbonenginejs/runtime-utils": "^0.1.6",
|
|
56
56
|
"meshoptimizer": "^1.2.0",
|
|
57
57
|
"yaml": "^2.4.0"
|
|
58
58
|
},
|