@carbonenginejs/runtime-resource 0.7.0 → 0.8.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/FORMAT-PROVENANCE.md +155 -144
- package/LICENSE +21 -21
- package/NOTICE +29 -29
- package/README.md +11 -0
- package/dist/CjsMotherLode.js +1271 -1271
- package/dist/CjsResMan.js +3005 -3005
- package/dist/CjsResManQueue.js +214 -214
- package/dist/CjsResource.js +566 -566
- package/dist/CjsResourceSource.js +59 -59
- package/dist/_virtual/_rollupPluginBabelHelpers.js +153 -153
- package/dist/format/CjsBlueReader.js +269 -269
- package/dist/format/CjsFormat.js +192 -192
- package/dist/format/CjsReader.js +18 -18
- package/dist/format/CjsResourceProbe.js +277 -277
- package/dist/format/payloadContract.js +173 -173
- package/dist/formats/black/CjsBlackFormat.js +278 -278
- package/dist/formats/black/core/CjsBlackBinaryReader.js +153 -153
- package/dist/formats/black/core/CjsBlackPropertyReaders.js +382 -382
- package/dist/formats/black/core/CjsBlackReader.js +639 -639
- package/dist/formats/black/core/CjsBlackSchemaRegistry.js +433 -433
- package/dist/formats/black/core/black-schema-v1-2026-07-11.json.js +4 -4
- package/dist/formats/black/core/blackConstants.js +7 -7
- package/dist/formats/black/core/blackDefinitions.js +10 -10
- package/dist/formats/black/core/blackEnums.js +6 -6
- package/dist/formats/black/core/blackSchema.js +3 -3
- package/dist/formats/black/core/blackVersion.js +22 -22
- package/dist/formats/black/core/helpers.js +182 -182
- package/dist/formats/black/core/schema.js +4 -4
- package/dist/formats/black/index.js +2 -2
- package/dist/formats/bnk/CjsBnkFormat.js +125 -125
- package/dist/formats/bnk/core/graph.js +140 -140
- package/dist/formats/bnk/core/helpers.js +409 -409
- package/dist/formats/bnk/core/musicNodes.js +489 -489
- package/dist/formats/bnk/core/soundbanksInfo.js +246 -246
- package/dist/formats/bnk/index.js +2 -2
- package/dist/formats/cmf/CjsCmfFormat.js +497 -497
- package/dist/formats/cmf/core/binary.js +118 -118
- package/dist/formats/cmf/core/buffers.js +233 -233
- package/dist/formats/cmf/core/constants.js +47 -47
- package/dist/formats/cmf/core/gr2Anim.js +453 -453
- package/dist/formats/cmf/core/helpers.js +287 -287
- package/dist/formats/cmf/core/pack.js +276 -276
- package/dist/formats/cmf/core/schema.js +364 -364
- package/dist/formats/cmf/core/shared.js +268 -268
- package/dist/formats/cmf/core/writer.js +517 -517
- package/dist/formats/cmf/index.js +2 -2
- package/dist/formats/dds/CjsDdsFormat.js +193 -193
- package/dist/formats/dds/core/bc6h.js +288 -0
- package/dist/formats/dds/core/bc6h.js.map +1 -0
- package/dist/formats/dds/core/bc7.js +251 -0
- package/dist/formats/dds/core/bc7.js.map +1 -0
- package/dist/formats/dds/core/helpers.js +815 -812
- package/dist/formats/dds/core/helpers.js.map +1 -1
- package/dist/formats/dds/index.js +2 -2
- package/dist/formats/fbx/CjsFbxFormat.js +266 -266
- package/dist/formats/fbx/core/helpers.js +3901 -3901
- package/dist/formats/fbx/index.js +2 -2
- package/dist/formats/flac/CjsFlacFormat.js +87 -87
- package/dist/formats/flac/core/helpers.js +295 -295
- package/dist/formats/flac/index.js +2 -2
- package/dist/formats/gif/CjsGifFormat.js +87 -87
- package/dist/formats/gif/core/helpers.js +360 -360
- package/dist/formats/gif/index.js +2 -2
- package/dist/formats/gltf/CjsGltfFormat.js +290 -290
- package/dist/formats/gltf/core/helpers.js +292 -292
- package/dist/formats/gltf/core/json.js +79 -79
- package/dist/formats/gltf/core/parser.js +666 -666
- package/dist/formats/gltf/core/targets.js +163 -163
- package/dist/formats/gltf/index.js +2 -2
- package/dist/formats/index.js +23 -23
- package/dist/formats/jpeg/CjsJpegFormat.js +206 -206
- package/dist/formats/jpeg/core/helpers.js +350 -350
- package/dist/formats/jpeg/core/jpeg.js +377 -377
- package/dist/formats/jpeg/index.js +2 -2
- package/dist/formats/mp3/CjsMp3Format.js +192 -192
- package/dist/formats/mp3/core/helpers.js +338 -338
- package/dist/formats/mp3/index.js +2 -2
- package/dist/formats/mp4/CjsMp4Format.js +191 -191
- package/dist/formats/mp4/core/helpers.js +449 -449
- package/dist/formats/mp4/index.js +2 -2
- package/dist/formats/obj/CjsObjFormat.js +253 -253
- package/dist/formats/obj/core/helpers.js +573 -573
- package/dist/formats/obj/core/json.js +64 -64
- package/dist/formats/obj/core/parser.js +321 -321
- package/dist/formats/obj/index.js +2 -2
- package/dist/formats/ogg/CjsOggFormat.js +88 -88
- package/dist/formats/ogg/core/helpers.js +387 -387
- package/dist/formats/ogg/core/imdct.js +178 -178
- package/dist/formats/ogg/core/vorbis.js +999 -999
- package/dist/formats/ogg/index.js +2 -2
- package/dist/formats/png/CjsPngFormat.js +195 -195
- package/dist/formats/png/core/helpers.js +583 -583
- package/dist/formats/png/index.js +2 -2
- package/dist/formats/red/CjsRedFormat.js +261 -261
- package/dist/formats/red/core/CjsRedReader.js +194 -194
- package/dist/formats/red/core/blackDefinitions.js +3 -3
- package/dist/formats/red/core/helpers.js +139 -139
- package/dist/formats/red/core/redGraph.js +68 -68
- package/dist/formats/red/core/schema.js +4 -4
- package/dist/formats/red/index.js +2 -2
- package/dist/formats/stl/CjsStlFormat.js +365 -365
- package/dist/formats/stl/core/helpers.js +261 -261
- package/dist/formats/stl/core/json.js +51 -51
- package/dist/formats/stl/core/stl.js +629 -629
- package/dist/formats/stl/core/targets.js +163 -163
- package/dist/formats/stl/index.js +2 -2
- package/dist/formats/tga/CjsTgaFormat.js +192 -192
- package/dist/formats/tga/core/helpers.js +446 -446
- package/dist/formats/tga/index.js +2 -2
- package/dist/formats/wav/CjsWavFormat.js +192 -192
- package/dist/formats/wav/core/helpers.js +328 -328
- package/dist/formats/wav/index.js +2 -2
- package/dist/formats/webm/CjsWebmFormat.js +191 -191
- package/dist/formats/webm/core/helpers.js +537 -537
- package/dist/formats/webm/index.js +2 -2
- package/dist/formats/webp/CjsWebpFormat.js +86 -86
- package/dist/formats/webp/core/helpers.js +214 -214
- package/dist/formats/webp/index.js +2 -2
- package/dist/formats/wem/CjsWemFormat.js +241 -241
- package/dist/formats/wem/core/bitStream.js +259 -259
- package/dist/formats/wem/core/codebookLibrary.js +164 -164
- package/dist/formats/wem/core/helpers.js +417 -417
- package/dist/formats/wem/core/packedCodebooksAotuv603.js +30 -30
- package/dist/formats/wem/core/ptadpcm.js +77 -77
- package/dist/formats/wem/core/resolve.js +121 -121
- package/dist/formats/wem/core/wemToOgg.js +485 -485
- package/dist/formats/wem/index.js +2 -2
- package/dist/formats/yaml/CjsYamlFormat.js +83 -83
- package/dist/formats/yaml/core/CjsYamlReader.js +305 -305
- package/dist/formats/yaml/core/helpers.js +160 -160
- package/dist/formats/yaml/index.js +2 -2
- package/dist/index.js +48 -48
- package/dist/resourcePath.js +18 -18
- package/dist/resourceStates.js +9 -9
- package/dist/resources/AudioGeometryResData.js +47 -47
- package/dist/resources/GStateBindingCallbackData.js +31 -31
- package/dist/resources/MeshDecalData.js +37 -37
- package/dist/resources/MeshDecalLodData.js +34 -34
- package/dist/resources/Tr2EffectRes.js +71 -71
- package/dist/resources/Tr2GrannyIntersectionResult.js +60 -60
- package/dist/resources/Tr2GrannyStateRes.js +44 -44
- package/dist/resources/Tr2ImageRes.js +114 -114
- package/dist/resources/Tr2LightProfileRes.js +40 -40
- package/dist/resources/Tr2MaterialArea.js +34 -34
- package/dist/resources/Tr2MaterialMesh.js +31 -31
- package/dist/resources/Tr2MaterialRes.js +34 -34
- package/dist/resources/Tr2ShaderPermutation.js +43 -43
- package/dist/resources/Tr2TextureLodManager.js +80 -80
- package/dist/resources/Tr2TextureLodUpdateRequest.js +37 -37
- package/dist/resources/Tr2TexturePackChannel.js +37 -37
- package/dist/resources/Tr2TexturePipeline.js +52 -52
- package/dist/resources/Tr2TexturePipelineParams.js +34 -34
- package/dist/resources/Tr2TexturePipelineStepCompress.js +40 -40
- package/dist/resources/Tr2TexturePipelineStepLimitSize.js +34 -34
- package/dist/resources/Tr2TexturePipelineStepLoad.js +31 -31
- package/dist/resources/Tr2TexturePipelineStepPack.js +43 -43
- package/dist/resources/TriGeometryRes.js +239 -216
- package/dist/resources/TriGeometryRes.js.map +1 -1
- package/dist/resources/TriGeometryResAreaData.js +59 -59
- package/dist/resources/TriGeometryResJointData.js +38 -38
- package/dist/resources/TriGeometryResLodData.js +88 -88
- package/dist/resources/TriGeometryResMeshData.js +63 -63
- package/dist/resources/TriGeometryResSkeletonData.js +34 -34
- package/dist/resources/TriGrannyRes.js +43 -43
- package/dist/resources/TriJointBinding.js +38 -38
- package/dist/resources/TriMorphTargetGeometryConstants.js +46 -46
- package/dist/resources/TriRtGeometryConstants.js +88 -88
- package/dist/resources/TriTextureRes.js +304 -304
- package/dist/resources/enums.js +18 -18
- package/dist/resources/resourceBoundary.js +47 -47
- package/dist/resources/texturePipelineBehavior.js +308 -308
- package/dist/texture/CjsTextureArrayRes.js +406 -406
- package/dist/texture/CjsTextureParameterProxy.js +133 -133
- package/format-notices/black/LICENSE +21 -21
- package/format-notices/black/NOTICE +47 -47
- package/format-notices/bnk/LICENSE +21 -21
- package/format-notices/bnk/NOTICE +20 -20
- package/format-notices/cmf/LICENSE +21 -21
- package/format-notices/cmf/NOTICE +36 -36
- package/format-notices/dds/LICENSE +21 -21
- package/format-notices/dds/NOTICE +14 -14
- package/format-notices/fbx/LICENSE +21 -21
- package/format-notices/fbx/NOTICE +14 -14
- package/format-notices/flac/LICENSE +21 -21
- package/format-notices/flac/NOTICE +14 -14
- package/format-notices/gif/LICENSE +21 -21
- package/format-notices/gif/NOTICE +14 -14
- package/format-notices/gltf/LICENSE +21 -21
- package/format-notices/gltf/NOTICE +27 -27
- package/format-notices/jpeg/LICENSE +21 -21
- package/format-notices/jpeg/NOTICE +14 -14
- package/format-notices/mp3/LICENSE +21 -21
- package/format-notices/mp3/NOTICE +14 -14
- package/format-notices/mp4/LICENSE +21 -21
- package/format-notices/mp4/NOTICE +14 -14
- package/format-notices/obj/LICENSE +21 -21
- package/format-notices/obj/NOTICE +26 -26
- package/format-notices/ogg/LICENSE +21 -21
- package/format-notices/ogg/NOTICE +28 -28
- package/format-notices/png/LICENSE +21 -21
- package/format-notices/png/NOTICE +14 -14
- package/format-notices/red/LICENSE +21 -21
- package/format-notices/red/NOTICE +31 -31
- package/format-notices/stl/LICENSE +21 -21
- package/format-notices/stl/NOTICE +21 -21
- package/format-notices/tga/LICENSE +21 -21
- package/format-notices/tga/NOTICE +14 -14
- package/format-notices/wav/LICENSE +21 -21
- package/format-notices/wav/NOTICE +14 -14
- package/format-notices/webm/LICENSE +21 -21
- package/format-notices/webm/NOTICE +14 -14
- package/format-notices/webp/LICENSE +21 -21
- package/format-notices/webp/NOTICE +14 -14
- package/format-notices/wem/LICENSE +57 -57
- package/format-notices/wem/NOTICE +33 -33
- package/format-notices/yaml/LICENSE +21 -21
- package/format-notices/yaml/NOTICE +44 -44
- package/package.json +2 -2
- package/resource-lifecycle.md +679 -679
|
@@ -1,133 +1,133 @@
|
|
|
1
|
-
import { CjsEventEmitter } from '@carbonenginejs/core-types/model';
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Runtime-only internal texture parameter facade for one array layer.
|
|
5
|
-
*
|
|
6
|
-
* The proxy mirrors the public texture-parameter path API while delegating
|
|
7
|
-
* storage, invalidation, readiness, and adapter ownership to its parent array.
|
|
8
|
-
* Engines bridge public parameters into it; it does not replace persisted
|
|
9
|
-
* parameter entries or their individual source resources. It deliberately
|
|
10
|
-
* carries no shader metadata or backend objects.
|
|
11
|
-
*/
|
|
12
|
-
class CjsTextureParameterProxy extends CjsEventEmitter {
|
|
13
|
-
#parent;
|
|
14
|
-
#layer;
|
|
15
|
-
#name;
|
|
16
|
-
constructor(parent, layer, options = {}) {
|
|
17
|
-
super();
|
|
18
|
-
if (!parent || typeof parent.SetLayerResourcePath !== "function") {
|
|
19
|
-
throw new TypeError("CjsTextureParameterProxy requires a CjsTextureArrayRes-compatible parent.");
|
|
20
|
-
}
|
|
21
|
-
if (!Number.isInteger(layer) || layer < 0) {
|
|
22
|
-
throw new RangeError("CjsTextureParameterProxy layer must be a non-negative integer.");
|
|
23
|
-
}
|
|
24
|
-
this.#parent = parent;
|
|
25
|
-
this.#layer = layer;
|
|
26
|
-
this.#name = options.name === undefined ? "" : String(options.name);
|
|
27
|
-
}
|
|
28
|
-
get resourcePath() {
|
|
29
|
-
return this.GetResourcePath();
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
/** The aggregate texture resource used by the shader. */
|
|
33
|
-
get textureRes() {
|
|
34
|
-
return this.#parent;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
/** Compatibility alias for textureRes. */
|
|
38
|
-
get res() {
|
|
39
|
-
return this.#parent;
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
/** Compatibility alias used by Carbon-shaped texture parameters. */
|
|
43
|
-
get resource() {
|
|
44
|
-
return this.#parent;
|
|
45
|
-
}
|
|
46
|
-
set resourcePath(value) {
|
|
47
|
-
this.SetResourcePath(value);
|
|
48
|
-
}
|
|
49
|
-
get name() {
|
|
50
|
-
return this.#name;
|
|
51
|
-
}
|
|
52
|
-
set name(value) {
|
|
53
|
-
this.SetParameterName(value);
|
|
54
|
-
}
|
|
55
|
-
GetParent() {
|
|
56
|
-
return this.#parent;
|
|
57
|
-
}
|
|
58
|
-
GetLayerIndex() {
|
|
59
|
-
return this.#layer;
|
|
60
|
-
}
|
|
61
|
-
GetParameterName() {
|
|
62
|
-
return this.#name;
|
|
63
|
-
}
|
|
64
|
-
SetParameterName(value) {
|
|
65
|
-
const next = value === null || value === undefined ? "" : String(value);
|
|
66
|
-
if (next === this.#name) return false;
|
|
67
|
-
const previous = this.#name;
|
|
68
|
-
this.#name = next;
|
|
69
|
-
this.EmitEvent("changed", this, "name", next, previous);
|
|
70
|
-
return true;
|
|
71
|
-
}
|
|
72
|
-
GetResourcePath() {
|
|
73
|
-
return this.#parent.GetLayerResourcePath(this.#layer);
|
|
74
|
-
}
|
|
75
|
-
SetResourcePath(value) {
|
|
76
|
-
const previous = this.GetResourcePath();
|
|
77
|
-
if (!this.#parent.SetLayerResourcePath(this.#layer, value)) return false;
|
|
78
|
-
this.EmitEvent("changed", this, "resourcepath", this.GetResourcePath(), previous);
|
|
79
|
-
return true;
|
|
80
|
-
}
|
|
81
|
-
GetValue() {
|
|
82
|
-
return this.GetResourcePath();
|
|
83
|
-
}
|
|
84
|
-
SetValue(value) {
|
|
85
|
-
if (value === undefined) return false;
|
|
86
|
-
return this.SetResourcePath(value);
|
|
87
|
-
}
|
|
88
|
-
EqualsValue(value) {
|
|
89
|
-
return String(value ?? "").trim().replace(/\\/gu, "/").replace(/\/+/gu, "/").toLowerCase() === this.GetResourcePath();
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
/** Return the aggregate texture resource used by the shader binding. */
|
|
93
|
-
GetResource() {
|
|
94
|
-
return this.#parent;
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
/** Return the optional resolved source resource for this layer. */
|
|
98
|
-
GetSourceResource() {
|
|
99
|
-
return this.#parent.GetLayerResource(this.#layer);
|
|
100
|
-
}
|
|
101
|
-
SetSourceResource(resource) {
|
|
102
|
-
const previous = this.GetSourceResource();
|
|
103
|
-
if (!this.#parent.SetLayerResource(this.#layer, resource)) return false;
|
|
104
|
-
this.EmitEvent("changed", this, "sourceresource", this.GetSourceResource(), previous);
|
|
105
|
-
return true;
|
|
106
|
-
}
|
|
107
|
-
SetResource(resource) {
|
|
108
|
-
return this.SetSourceResource(resource);
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
/** Invalidate this layer after an in-place source content revision. */
|
|
112
|
-
Touch() {
|
|
113
|
-
this.#parent.TouchLayer(this.#layer);
|
|
114
|
-
this.EmitEvent("changed", this, "sourcerevision", this.GetSourceResource());
|
|
115
|
-
return this;
|
|
116
|
-
}
|
|
117
|
-
GetResources(out = []) {
|
|
118
|
-
if (!out.includes(this.#parent)) out.push(this.#parent);
|
|
119
|
-
return out;
|
|
120
|
-
}
|
|
121
|
-
IsPrepared() {
|
|
122
|
-
return this.#parent.IsPrepared();
|
|
123
|
-
}
|
|
124
|
-
IsGood() {
|
|
125
|
-
return this.#parent.IsGood();
|
|
126
|
-
}
|
|
127
|
-
Ready(options = {}) {
|
|
128
|
-
return this.#parent.Ready(options);
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
export { CjsTextureParameterProxy };
|
|
133
|
-
//# sourceMappingURL=CjsTextureParameterProxy.js.map
|
|
1
|
+
import { CjsEventEmitter } from '@carbonenginejs/core-types/model';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Runtime-only internal texture parameter facade for one array layer.
|
|
5
|
+
*
|
|
6
|
+
* The proxy mirrors the public texture-parameter path API while delegating
|
|
7
|
+
* storage, invalidation, readiness, and adapter ownership to its parent array.
|
|
8
|
+
* Engines bridge public parameters into it; it does not replace persisted
|
|
9
|
+
* parameter entries or their individual source resources. It deliberately
|
|
10
|
+
* carries no shader metadata or backend objects.
|
|
11
|
+
*/
|
|
12
|
+
class CjsTextureParameterProxy extends CjsEventEmitter {
|
|
13
|
+
#parent;
|
|
14
|
+
#layer;
|
|
15
|
+
#name;
|
|
16
|
+
constructor(parent, layer, options = {}) {
|
|
17
|
+
super();
|
|
18
|
+
if (!parent || typeof parent.SetLayerResourcePath !== "function") {
|
|
19
|
+
throw new TypeError("CjsTextureParameterProxy requires a CjsTextureArrayRes-compatible parent.");
|
|
20
|
+
}
|
|
21
|
+
if (!Number.isInteger(layer) || layer < 0) {
|
|
22
|
+
throw new RangeError("CjsTextureParameterProxy layer must be a non-negative integer.");
|
|
23
|
+
}
|
|
24
|
+
this.#parent = parent;
|
|
25
|
+
this.#layer = layer;
|
|
26
|
+
this.#name = options.name === undefined ? "" : String(options.name);
|
|
27
|
+
}
|
|
28
|
+
get resourcePath() {
|
|
29
|
+
return this.GetResourcePath();
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
/** The aggregate texture resource used by the shader. */
|
|
33
|
+
get textureRes() {
|
|
34
|
+
return this.#parent;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
/** Compatibility alias for textureRes. */
|
|
38
|
+
get res() {
|
|
39
|
+
return this.#parent;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
/** Compatibility alias used by Carbon-shaped texture parameters. */
|
|
43
|
+
get resource() {
|
|
44
|
+
return this.#parent;
|
|
45
|
+
}
|
|
46
|
+
set resourcePath(value) {
|
|
47
|
+
this.SetResourcePath(value);
|
|
48
|
+
}
|
|
49
|
+
get name() {
|
|
50
|
+
return this.#name;
|
|
51
|
+
}
|
|
52
|
+
set name(value) {
|
|
53
|
+
this.SetParameterName(value);
|
|
54
|
+
}
|
|
55
|
+
GetParent() {
|
|
56
|
+
return this.#parent;
|
|
57
|
+
}
|
|
58
|
+
GetLayerIndex() {
|
|
59
|
+
return this.#layer;
|
|
60
|
+
}
|
|
61
|
+
GetParameterName() {
|
|
62
|
+
return this.#name;
|
|
63
|
+
}
|
|
64
|
+
SetParameterName(value) {
|
|
65
|
+
const next = value === null || value === undefined ? "" : String(value);
|
|
66
|
+
if (next === this.#name) return false;
|
|
67
|
+
const previous = this.#name;
|
|
68
|
+
this.#name = next;
|
|
69
|
+
this.EmitEvent("changed", this, "name", next, previous);
|
|
70
|
+
return true;
|
|
71
|
+
}
|
|
72
|
+
GetResourcePath() {
|
|
73
|
+
return this.#parent.GetLayerResourcePath(this.#layer);
|
|
74
|
+
}
|
|
75
|
+
SetResourcePath(value) {
|
|
76
|
+
const previous = this.GetResourcePath();
|
|
77
|
+
if (!this.#parent.SetLayerResourcePath(this.#layer, value)) return false;
|
|
78
|
+
this.EmitEvent("changed", this, "resourcepath", this.GetResourcePath(), previous);
|
|
79
|
+
return true;
|
|
80
|
+
}
|
|
81
|
+
GetValue() {
|
|
82
|
+
return this.GetResourcePath();
|
|
83
|
+
}
|
|
84
|
+
SetValue(value) {
|
|
85
|
+
if (value === undefined) return false;
|
|
86
|
+
return this.SetResourcePath(value);
|
|
87
|
+
}
|
|
88
|
+
EqualsValue(value) {
|
|
89
|
+
return String(value ?? "").trim().replace(/\\/gu, "/").replace(/\/+/gu, "/").toLowerCase() === this.GetResourcePath();
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
/** Return the aggregate texture resource used by the shader binding. */
|
|
93
|
+
GetResource() {
|
|
94
|
+
return this.#parent;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
/** Return the optional resolved source resource for this layer. */
|
|
98
|
+
GetSourceResource() {
|
|
99
|
+
return this.#parent.GetLayerResource(this.#layer);
|
|
100
|
+
}
|
|
101
|
+
SetSourceResource(resource) {
|
|
102
|
+
const previous = this.GetSourceResource();
|
|
103
|
+
if (!this.#parent.SetLayerResource(this.#layer, resource)) return false;
|
|
104
|
+
this.EmitEvent("changed", this, "sourceresource", this.GetSourceResource(), previous);
|
|
105
|
+
return true;
|
|
106
|
+
}
|
|
107
|
+
SetResource(resource) {
|
|
108
|
+
return this.SetSourceResource(resource);
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
/** Invalidate this layer after an in-place source content revision. */
|
|
112
|
+
Touch() {
|
|
113
|
+
this.#parent.TouchLayer(this.#layer);
|
|
114
|
+
this.EmitEvent("changed", this, "sourcerevision", this.GetSourceResource());
|
|
115
|
+
return this;
|
|
116
|
+
}
|
|
117
|
+
GetResources(out = []) {
|
|
118
|
+
if (!out.includes(this.#parent)) out.push(this.#parent);
|
|
119
|
+
return out;
|
|
120
|
+
}
|
|
121
|
+
IsPrepared() {
|
|
122
|
+
return this.#parent.IsPrepared();
|
|
123
|
+
}
|
|
124
|
+
IsGood() {
|
|
125
|
+
return this.#parent.IsGood();
|
|
126
|
+
}
|
|
127
|
+
Ready(options = {}) {
|
|
128
|
+
return this.#parent.Ready(options);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
export { CjsTextureParameterProxy };
|
|
133
|
+
//# sourceMappingURL=CjsTextureParameterProxy.js.map
|
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2026 CarbonEngineJS contributors
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 CarbonEngineJS contributors
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -1,47 +1,47 @@
|
|
|
1
|
-
format-black
|
|
2
|
-
|
|
3
|
-
Copyright (c) CarbonEngineJS contributors.
|
|
4
|
-
CarbonEngine source material, formats, class names, and schema semantics remain
|
|
5
|
-
copyright their original CarbonEngine authors.
|
|
6
|
-
Fenris Creations (CCP Games) source material, tools, assets, shader behavior,
|
|
7
|
-
and EVE-related data remain copyright their original holders.
|
|
8
|
-
|
|
9
|
-
This package is a CarbonEngineJS-facing reader for `.black` files. It
|
|
10
|
-
contains original project code unless third-party material is explicitly listed
|
|
11
|
-
below.
|
|
12
|
-
CarbonEngine and Fenris Creations (CCP Games) are mentioned for
|
|
13
|
-
interoperability, provenance, and future migration context only. This package is
|
|
14
|
-
not affiliated with or endorsed by CCP Games.
|
|
15
|
-
|
|
16
|
-
Third-party reference material
|
|
17
|
-
------------------------------
|
|
18
|
-
|
|
19
|
-
black-reader-js
|
|
20
|
-
Repository: https://github.com/rawrafox/black-reader-js
|
|
21
|
-
Author: rawrafox
|
|
22
|
-
Package author: aurora
|
|
23
|
-
License: MIT
|
|
24
|
-
Local license notice: Copyright (c) 2023 @rawrafox and @cppctamber
|
|
25
|
-
|
|
26
|
-
CarbonEngineJS uses black-reader-js as reference material for `.black` format
|
|
27
|
-
behavior. The format-black package is implemented against CarbonEngineJS
|
|
28
|
-
core-types/canonical schema definitions and emits CarbonEngineJS public
|
|
29
|
-
Black payload data.
|
|
30
|
-
|
|
31
|
-
Provenance and legal requirements
|
|
32
|
-
---------------------------------
|
|
33
|
-
|
|
34
|
-
This scaffold currently contains CarbonEngineJS original project code plus the
|
|
35
|
-
third-party reference attribution listed above. It does not include copied
|
|
36
|
-
CarbonEngine source code or third-party parser code.
|
|
37
|
-
|
|
38
|
-
If future work copies, ports, translates, or derives from CarbonEngine, ccpwgl,
|
|
39
|
-
Fenris Creations (CCP Games) / EVE assets or tools, or any third-party library,
|
|
40
|
-
update this NOTICE before committing that work with:
|
|
41
|
-
|
|
42
|
-
- upstream copyright holders;
|
|
43
|
-
- upstream project/repository, file path, and revision when known;
|
|
44
|
-
- upstream license name, license text or required notice location, and any
|
|
45
|
-
redistribution obligations;
|
|
46
|
-
- whether the material was copied/ported/adapted, or used only as a behavioral
|
|
47
|
-
reference with no copied expression.
|
|
1
|
+
format-black
|
|
2
|
+
|
|
3
|
+
Copyright (c) CarbonEngineJS contributors.
|
|
4
|
+
CarbonEngine source material, formats, class names, and schema semantics remain
|
|
5
|
+
copyright their original CarbonEngine authors.
|
|
6
|
+
Fenris Creations (CCP Games) source material, tools, assets, shader behavior,
|
|
7
|
+
and EVE-related data remain copyright their original holders.
|
|
8
|
+
|
|
9
|
+
This package is a CarbonEngineJS-facing reader for `.black` files. It
|
|
10
|
+
contains original project code unless third-party material is explicitly listed
|
|
11
|
+
below.
|
|
12
|
+
CarbonEngine and Fenris Creations (CCP Games) are mentioned for
|
|
13
|
+
interoperability, provenance, and future migration context only. This package is
|
|
14
|
+
not affiliated with or endorsed by CCP Games.
|
|
15
|
+
|
|
16
|
+
Third-party reference material
|
|
17
|
+
------------------------------
|
|
18
|
+
|
|
19
|
+
black-reader-js
|
|
20
|
+
Repository: https://github.com/rawrafox/black-reader-js
|
|
21
|
+
Author: rawrafox
|
|
22
|
+
Package author: aurora
|
|
23
|
+
License: MIT
|
|
24
|
+
Local license notice: Copyright (c) 2023 @rawrafox and @cppctamber
|
|
25
|
+
|
|
26
|
+
CarbonEngineJS uses black-reader-js as reference material for `.black` format
|
|
27
|
+
behavior. The format-black package is implemented against CarbonEngineJS
|
|
28
|
+
core-types/canonical schema definitions and emits CarbonEngineJS public
|
|
29
|
+
Black payload data.
|
|
30
|
+
|
|
31
|
+
Provenance and legal requirements
|
|
32
|
+
---------------------------------
|
|
33
|
+
|
|
34
|
+
This scaffold currently contains CarbonEngineJS original project code plus the
|
|
35
|
+
third-party reference attribution listed above. It does not include copied
|
|
36
|
+
CarbonEngine source code or third-party parser code.
|
|
37
|
+
|
|
38
|
+
If future work copies, ports, translates, or derives from CarbonEngine, ccpwgl,
|
|
39
|
+
Fenris Creations (CCP Games) / EVE assets or tools, or any third-party library,
|
|
40
|
+
update this NOTICE before committing that work with:
|
|
41
|
+
|
|
42
|
+
- upstream copyright holders;
|
|
43
|
+
- upstream project/repository, file path, and revision when known;
|
|
44
|
+
- upstream license name, license text or required notice location, and any
|
|
45
|
+
redistribution obligations;
|
|
46
|
+
- whether the material was copied/ported/adapted, or used only as a behavioral
|
|
47
|
+
reference with no copied expression.
|
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2026 CarbonEngineJS contributors
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 CarbonEngineJS contributors
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
formats/bnk
|
|
2
|
-
|
|
3
|
-
Copyright (c) CarbonEngineJS contributors.
|
|
4
|
-
CarbonEngine source material, formats, class names, and schema semantics remain
|
|
5
|
-
copyright their original CarbonEngine authors.
|
|
6
|
-
Fenris Creations (CCP Games) source material, tools, assets, shader behavior,
|
|
7
|
-
and EVE-related data remain copyright their original holders.
|
|
8
|
-
Wwise and the Wwise soundbank format are property of Audiokinetic Inc.
|
|
9
|
-
|
|
10
|
-
This reader is original CarbonEngineJS code authored directly in
|
|
11
|
-
runtime-resource; no legacy package was copied. The soundbank chunk layout,
|
|
12
|
-
HIRC object field layouts, and the event-graph resolution exposed as
|
|
13
|
-
`eventMediaFromBanks` were implemented from publicly documented community
|
|
14
|
-
knowledge of the format (ww2ogg, vgmstream, wwiser documentation) and
|
|
15
|
-
independently verified by hexdump against EVE Online soundbanks (bank
|
|
16
|
-
generator version 150); no code was copied from those projects and no
|
|
17
|
-
Audiokinetic SDK material was used.
|
|
18
|
-
Audiokinetic, CarbonEngine, and Fenris Creations (CCP Games) are mentioned for
|
|
19
|
-
interoperability, provenance, and future migration context only. This package
|
|
20
|
-
is not affiliated with or endorsed by Audiokinetic Inc. or CCP Games.
|
|
1
|
+
formats/bnk
|
|
2
|
+
|
|
3
|
+
Copyright (c) CarbonEngineJS contributors.
|
|
4
|
+
CarbonEngine source material, formats, class names, and schema semantics remain
|
|
5
|
+
copyright their original CarbonEngine authors.
|
|
6
|
+
Fenris Creations (CCP Games) source material, tools, assets, shader behavior,
|
|
7
|
+
and EVE-related data remain copyright their original holders.
|
|
8
|
+
Wwise and the Wwise soundbank format are property of Audiokinetic Inc.
|
|
9
|
+
|
|
10
|
+
This reader is original CarbonEngineJS code authored directly in
|
|
11
|
+
runtime-resource; no legacy package was copied. The soundbank chunk layout,
|
|
12
|
+
HIRC object field layouts, and the event-graph resolution exposed as
|
|
13
|
+
`eventMediaFromBanks` were implemented from publicly documented community
|
|
14
|
+
knowledge of the format (ww2ogg, vgmstream, wwiser documentation) and
|
|
15
|
+
independently verified by hexdump against EVE Online soundbanks (bank
|
|
16
|
+
generator version 150); no code was copied from those projects and no
|
|
17
|
+
Audiokinetic SDK material was used.
|
|
18
|
+
Audiokinetic, CarbonEngine, and Fenris Creations (CCP Games) are mentioned for
|
|
19
|
+
interoperability, provenance, and future migration context only. This package
|
|
20
|
+
is not affiliated with or endorsed by Audiokinetic Inc. or CCP Games.
|
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2026 CarbonEngineJS contributors
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 CarbonEngineJS contributors
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -1,36 +1,36 @@
|
|
|
1
|
-
carbonenginejs/format-cmf
|
|
2
|
-
=========================
|
|
3
|
-
|
|
4
|
-
A pure-JavaScript reader for Carbon Mesh Format (.cmf) geometry containers.
|
|
5
|
-
|
|
6
|
-
CarbonEngineJS-facing code is copyright CarbonEngineJS contributors.
|
|
7
|
-
CarbonEngine source material, formats, class names, and schema semantics remain
|
|
8
|
-
copyright their original CarbonEngine authors. Fenris Creations (CCP Games)
|
|
9
|
-
source material, tools, assets, shader behavior, and EVE-related data remain
|
|
10
|
-
copyright their original holders.
|
|
11
|
-
|
|
12
|
-
CarbonEngine and Fenris Creations (CCP Games) are mentioned for interoperability
|
|
13
|
-
and provenance context. This package is not affiliated with or endorsed by CCP
|
|
14
|
-
Games.
|
|
15
|
-
|
|
16
|
-
Format reference
|
|
17
|
-
----------------
|
|
18
|
-
|
|
19
|
-
The CMF v1 structure names, enum names, layout, and validation behavior were
|
|
20
|
-
implemented from the local CarbonEngine mesh headers and sources:
|
|
21
|
-
|
|
22
|
-
- mesh/include/cmf/cmf.h
|
|
23
|
-
- mesh/include/cmf/v1.h
|
|
24
|
-
- mesh/include/cmf/span.h
|
|
25
|
-
- mesh/include/cmf/writer.h
|
|
26
|
-
- mesh/src/cmf/writer.cpp
|
|
27
|
-
- mesh/src/cmf/utils.cpp
|
|
28
|
-
|
|
29
|
-
No CarbonEngine implementation code is copied into this package.
|
|
30
|
-
|
|
31
|
-
Third-party dependencies
|
|
32
|
-
------------------------
|
|
33
|
-
|
|
34
|
-
meshoptimizer JavaScript package
|
|
35
|
-
Used for decoding CMF GPU-buffer sections compressed with meshoptimizer
|
|
36
|
-
vertex/index codecs. Copyright Arseny Kapoulkine, MIT License.
|
|
1
|
+
carbonenginejs/format-cmf
|
|
2
|
+
=========================
|
|
3
|
+
|
|
4
|
+
A pure-JavaScript reader for Carbon Mesh Format (.cmf) geometry containers.
|
|
5
|
+
|
|
6
|
+
CarbonEngineJS-facing code is copyright CarbonEngineJS contributors.
|
|
7
|
+
CarbonEngine source material, formats, class names, and schema semantics remain
|
|
8
|
+
copyright their original CarbonEngine authors. Fenris Creations (CCP Games)
|
|
9
|
+
source material, tools, assets, shader behavior, and EVE-related data remain
|
|
10
|
+
copyright their original holders.
|
|
11
|
+
|
|
12
|
+
CarbonEngine and Fenris Creations (CCP Games) are mentioned for interoperability
|
|
13
|
+
and provenance context. This package is not affiliated with or endorsed by CCP
|
|
14
|
+
Games.
|
|
15
|
+
|
|
16
|
+
Format reference
|
|
17
|
+
----------------
|
|
18
|
+
|
|
19
|
+
The CMF v1 structure names, enum names, layout, and validation behavior were
|
|
20
|
+
implemented from the local CarbonEngine mesh headers and sources:
|
|
21
|
+
|
|
22
|
+
- mesh/include/cmf/cmf.h
|
|
23
|
+
- mesh/include/cmf/v1.h
|
|
24
|
+
- mesh/include/cmf/span.h
|
|
25
|
+
- mesh/include/cmf/writer.h
|
|
26
|
+
- mesh/src/cmf/writer.cpp
|
|
27
|
+
- mesh/src/cmf/utils.cpp
|
|
28
|
+
|
|
29
|
+
No CarbonEngine implementation code is copied into this package.
|
|
30
|
+
|
|
31
|
+
Third-party dependencies
|
|
32
|
+
------------------------
|
|
33
|
+
|
|
34
|
+
meshoptimizer JavaScript package
|
|
35
|
+
Used for decoding CMF GPU-buffer sections compressed with meshoptimizer
|
|
36
|
+
vertex/index codecs. Copyright Arseny Kapoulkine, MIT License.
|
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2026 CarbonEngineJS contributors
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 CarbonEngineJS contributors
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|