@markandre13/usd.js 0.0.3 → 0.0.5
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/compression/compress.js +5 -2
- package/dist/compression/compress.js.map +1 -1
- package/dist/compression/integers.js +11 -0
- package/dist/compression/integers.js.map +1 -1
- package/dist/compression/lz4.d.ts +18 -1
- package/dist/compression/lz4.js +100 -17
- package/dist/compression/lz4.js.map +1 -1
- package/dist/crate/BootStrap.js +2 -0
- package/dist/crate/BootStrap.js.map +1 -1
- package/dist/crate/Crate.d.ts +8 -1
- package/dist/crate/Crate.js +49 -4
- package/dist/crate/Crate.js.map +1 -1
- package/dist/crate/Fields.d.ts +1 -1
- package/dist/crate/Fields.js +26 -1
- package/dist/crate/Fields.js.map +1 -1
- package/dist/crate/Paths.d.ts +1 -1
- package/dist/crate/Paths.js +16 -2
- package/dist/crate/Paths.js.map +1 -1
- package/dist/crate/Reader.js +3 -3
- package/dist/crate/Reader.js.map +1 -1
- package/dist/crate/SpecType.d.ts +3 -3
- package/dist/crate/SpecType.js +2 -0
- package/dist/crate/SpecType.js.map +1 -1
- package/dist/crate/Specifier.d.ts +1 -1
- package/dist/crate/Specs.js +1 -0
- package/dist/crate/Specs.js.map +1 -1
- package/dist/crate/Stage.d.ts +1 -1
- package/dist/crate/Stage.js +1 -0
- package/dist/crate/Stage.js.map +1 -1
- package/dist/crate/Strings.js +5 -0
- package/dist/crate/Strings.js.map +1 -1
- package/dist/crate/Tokens.js +47 -1
- package/dist/crate/Tokens.js.map +1 -1
- package/dist/crate/ValueRep.d.ts +1 -1
- package/dist/crate/ValueRep.js +27 -3
- package/dist/crate/ValueRep.js.map +1 -1
- package/dist/crate/Variability.d.ts +1 -1
- package/dist/crate/Writer.d.ts +3 -0
- package/dist/crate/Writer.js +26 -1
- package/dist/crate/Writer.js.map +1 -1
- package/dist/detail/hexdump.js +1 -0
- package/dist/detail/hexdump.js.map +1 -1
- package/dist/nodes/attributes/AssetPathAttr.d.ts +1 -1
- package/dist/nodes/attributes/AssetPathAttr.js +1 -1
- package/dist/nodes/attributes/AssetPathAttr.js.map +1 -1
- package/dist/nodes/attributes/Attribute.d.ts +1 -1
- package/dist/nodes/attributes/Attribute.js +1 -1
- package/dist/nodes/attributes/Attribute.js.map +1 -1
- package/dist/nodes/attributes/BooleanAttr.d.ts +1 -1
- package/dist/nodes/attributes/BooleanAttr.js +1 -1
- package/dist/nodes/attributes/BooleanAttr.js.map +1 -1
- package/dist/nodes/attributes/Color3fAttr.d.ts +3 -3
- package/dist/nodes/attributes/Color3fAttr.js +1 -1
- package/dist/nodes/attributes/Color3fAttr.js.map +1 -1
- package/dist/nodes/attributes/FloatAttr.d.ts +1 -1
- package/dist/nodes/attributes/FloatAttr.js +1 -1
- package/dist/nodes/attributes/FloatAttr.js.map +1 -1
- package/dist/nodes/attributes/IntArrayAttr.d.ts +1 -1
- package/dist/nodes/attributes/IntArrayAttr.js +1 -1
- package/dist/nodes/attributes/IntArrayAttr.js.map +1 -1
- package/dist/nodes/attributes/Relationship.d.ts +1 -1
- package/dist/nodes/attributes/Relationship.js +1 -1
- package/dist/nodes/attributes/Relationship.js.map +1 -1
- package/dist/nodes/attributes/StringAttr.d.ts +1 -1
- package/dist/nodes/attributes/StringAttr.js +1 -1
- package/dist/nodes/attributes/StringAttr.js.map +1 -1
- package/dist/nodes/attributes/TokenAttr.d.ts +1 -1
- package/dist/nodes/attributes/TokenAttr.js +1 -1
- package/dist/nodes/attributes/TokenAttr.js.map +1 -1
- package/dist/nodes/attributes/VariabilityAttr.d.ts +1 -1
- package/dist/nodes/attributes/VariabilityAttr.js +1 -1
- package/dist/nodes/attributes/VariabilityAttr.js.map +1 -1
- package/dist/nodes/attributes/Vec2fArrayAttr.d.ts +1 -1
- package/dist/nodes/attributes/Vec2fArrayAttr.js +1 -1
- package/dist/nodes/attributes/Vec2fArrayAttr.js.map +1 -1
- package/dist/nodes/attributes/Vec3fArrayAttr.d.ts +1 -1
- package/dist/nodes/attributes/Vec3fArrayAttr.js +1 -1
- package/dist/nodes/attributes/Vec3fArrayAttr.js.map +1 -1
- package/dist/nodes/geometry/Boundable.d.ts +6 -0
- package/dist/nodes/geometry/Boundable.js +6 -0
- package/dist/nodes/geometry/Boundable.js.map +1 -1
- package/dist/nodes/geometry/Camera.d.ts +7 -2
- package/dist/nodes/geometry/Camera.js +36 -0
- package/dist/nodes/geometry/Camera.js.map +1 -1
- package/dist/nodes/geometry/GeomSubset.d.ts +1 -1
- package/dist/nodes/geometry/GeomSubset.js +1 -1
- package/dist/nodes/geometry/GeomSubset.js.map +1 -1
- package/dist/nodes/geometry/Gprim.d.ts +28 -0
- package/dist/nodes/geometry/Gprim.js +30 -0
- package/dist/nodes/geometry/Gprim.js.map +1 -1
- package/dist/nodes/geometry/Imageable.d.ts +9 -0
- package/dist/nodes/geometry/Imageable.js +9 -0
- package/dist/nodes/geometry/Imageable.js.map +1 -1
- package/dist/nodes/geometry/Mesh.d.ts +69 -7
- package/dist/nodes/geometry/Mesh.js +100 -10
- package/dist/nodes/geometry/Mesh.js.map +1 -1
- package/dist/nodes/geometry/PointBased.d.ts +19 -2
- package/dist/nodes/geometry/PointBased.js +24 -12
- package/dist/nodes/geometry/PointBased.js.map +1 -1
- package/dist/nodes/geometry/Scope.d.ts +9 -1
- package/dist/nodes/geometry/Scope.js +8 -0
- package/dist/nodes/geometry/Scope.js.map +1 -1
- package/dist/nodes/geometry/SkelBindingAPI.d.ts +53 -0
- package/dist/nodes/geometry/SkelBindingAPI.js +2 -0
- package/dist/nodes/geometry/SkelBindingAPI.js.map +1 -0
- package/dist/nodes/geometry/Xform.d.ts +6 -1
- package/dist/nodes/geometry/Xform.js +5 -0
- package/dist/nodes/geometry/Xform.js.map +1 -1
- package/dist/nodes/geometry/Xformable.d.ts +9 -3
- package/dist/nodes/geometry/Xformable.js +6 -0
- package/dist/nodes/geometry/Xformable.js.map +1 -1
- package/dist/nodes/lux/BoundableLightBase.d.ts +8 -0
- package/dist/nodes/lux/BoundableLightBase.js +8 -0
- package/dist/nodes/lux/BoundableLightBase.js.map +1 -1
- package/dist/nodes/lux/DomeLight.d.ts +11 -1
- package/dist/nodes/lux/DomeLight.js +10 -0
- package/dist/nodes/lux/DomeLight.js.map +1 -1
- package/dist/nodes/lux/NonboundableLightBase.d.ts +1 -1
- package/dist/nodes/lux/NonboundableLightBase.js +10 -1
- package/dist/nodes/lux/NonboundableLightBase.js.map +1 -1
- package/dist/nodes/lux/SphereLight.d.ts +9 -1
- package/dist/nodes/lux/SphereLight.js +8 -0
- package/dist/nodes/lux/SphereLight.js.map +1 -1
- package/dist/nodes/shader/Material.d.ts +7 -1
- package/dist/nodes/shader/Material.js +6 -0
- package/dist/nodes/shader/Material.js.map +1 -1
- package/dist/nodes/shader/NodeGraph.d.ts +7 -0
- package/dist/nodes/shader/NodeGraph.js +7 -0
- package/dist/nodes/shader/NodeGraph.js.map +1 -1
- package/dist/nodes/shader/Shader.d.ts +9 -1
- package/dist/nodes/shader/Shader.js +8 -0
- package/dist/nodes/shader/Shader.js.map +1 -1
- package/dist/nodes/skeleton/SkelRoot.d.ts +6 -1
- package/dist/nodes/skeleton/SkelRoot.js +5 -0
- package/dist/nodes/skeleton/SkelRoot.js.map +1 -1
- package/dist/nodes/skeleton/Skeleton.d.ts +41 -4
- package/dist/nodes/skeleton/Skeleton.js +37 -0
- package/dist/nodes/skeleton/Skeleton.js.map +1 -1
- package/dist/nodes/usd/PseudoRoot.d.ts +1 -1
- package/dist/nodes/usd/PseudoRoot.js +21 -1
- package/dist/nodes/usd/PseudoRoot.js.map +1 -1
- package/dist/nodes/usd/SchemaBase.d.ts +1 -1
- package/dist/nodes/usd/SchemaBase.js +1 -1
- package/dist/nodes/usd/SchemaBase.js.map +1 -1
- package/dist/nodes/usd/Typed.d.ts +10 -0
- package/dist/nodes/usd/Typed.js +10 -0
- package/dist/nodes/usd/Typed.js.map +1 -1
- package/dist/{crate → nodes/usd}/UsdNode.d.ts +18 -9
- package/dist/{crate → nodes/usd}/UsdNode.js +35 -2
- package/dist/nodes/usd/UsdNode.js.map +1 -0
- package/package.json +8 -7
- package/dist/crate/UsdNode.js.map +0 -1
- package/dist/tsconfig.tsbuildinfo +0 -1
package/dist/crate/Fields.js
CHANGED
|
@@ -5,7 +5,7 @@ import { compressBound } from "../compression/lz4";
|
|
|
5
5
|
import { Reader } from "./Reader.js";
|
|
6
6
|
import { kMinCompressedArraySize, ValueRep } from "./ValueRep";
|
|
7
7
|
import { Writer } from "./Writer.js";
|
|
8
|
-
import { UsdNode } from "
|
|
8
|
+
import { UsdNode } from "../nodes/usd/UsdNode.js";
|
|
9
9
|
const IsArrayBit_ = 128;
|
|
10
10
|
const IsInlinedBit = 64;
|
|
11
11
|
const IsCompressedBit = 32;
|
|
@@ -18,6 +18,7 @@ export class Fields {
|
|
|
18
18
|
const reader = tokensOrReader;
|
|
19
19
|
const numFields = reader.getUint64();
|
|
20
20
|
const indices = reader.getCompressedIntegers(numFields);
|
|
21
|
+
// ValueReps
|
|
21
22
|
const compressedSize = reader.getUint64();
|
|
22
23
|
const uncompressedSize = numFields * 8;
|
|
23
24
|
const compressed = new Uint8Array(reader._dataview.buffer, reader.offset, compressedSize);
|
|
@@ -25,11 +26,18 @@ export class Fields {
|
|
|
25
26
|
if (uncompressedSize !== decompressFromBuffer(compressed, uncompressed)) {
|
|
26
27
|
throw Error("Failed to read Fields ValueRep data.");
|
|
27
28
|
}
|
|
29
|
+
// create fields
|
|
28
30
|
const dataview = new DataView(uncompressed.buffer);
|
|
29
31
|
this.fields = new Array(numFields);
|
|
30
32
|
for (let field = 0; field < numFields; ++field) {
|
|
31
33
|
this.fields[field] = new Field(indices[field], new ValueRep(dataview, field * 8));
|
|
32
34
|
}
|
|
35
|
+
// for (let i = 0; i < numFields; ++i) {
|
|
36
|
+
// console.log(`fields[${i}] = ${this.fields[i].toString(this.tokens)}`)
|
|
37
|
+
// }
|
|
38
|
+
// if (section.start + section.size !== reader.offset) {
|
|
39
|
+
// throw Error(`FIELDS: not at end: expected end at ${section.start + section.size} but reader is at ${reader.offset}`)
|
|
40
|
+
// }
|
|
33
41
|
}
|
|
34
42
|
else {
|
|
35
43
|
this.tokens = tokensOrReader;
|
|
@@ -149,7 +157,11 @@ export class Fields {
|
|
|
149
157
|
return this.__setDictionary(this.valueReps, this.data, value);
|
|
150
158
|
}
|
|
151
159
|
__setDictionary(writer0, writer1, value) {
|
|
160
|
+
// console.log(`SET DICTIONARY: %o`, value)
|
|
152
161
|
const idx = writer0.tell() / 8;
|
|
162
|
+
// console.log(`${writer0.name}@${writer0.tell()}: dict -> offset ${writer1.tell()}`)
|
|
163
|
+
// console.log(`__setDictionary() IN : writer0 valuerep @ ${writer0.tell()}`)
|
|
164
|
+
// just in case writer0 and writer1 are the same, advance writer0 to find out where writer1 will begin
|
|
153
165
|
const offset0 = writer0.tell();
|
|
154
166
|
writer0.skip(8);
|
|
155
167
|
const offset1 = writer1.tell();
|
|
@@ -160,10 +172,13 @@ export class Fields {
|
|
|
160
172
|
writer0.writeUint8(0);
|
|
161
173
|
const names = Object.getOwnPropertyNames(value);
|
|
162
174
|
writer1.writeUint64(names.length);
|
|
175
|
+
// console.log(`encode dict at ${offset0} of size ${names.length}, offset ${offset1.toString(16).padStart(4, '0')}`)
|
|
163
176
|
const oldPos = writer1.tell();
|
|
164
177
|
writer1.skip(names.length * (4 + 8));
|
|
178
|
+
// write values at back
|
|
165
179
|
const offsets = [];
|
|
166
180
|
for (const name of names) {
|
|
181
|
+
// console.log(`${writer1.name}@0x${writer1.tell().toString(16).padStart(4, '0')} value ${name}`)
|
|
167
182
|
offsets.push(writer1.tell());
|
|
168
183
|
const v = value[name];
|
|
169
184
|
switch (typeof v) {
|
|
@@ -177,6 +192,7 @@ export class Fields {
|
|
|
177
192
|
throw Error(`yikes: type ${typeof v} not implemented yet`);
|
|
178
193
|
}
|
|
179
194
|
}
|
|
195
|
+
// write names and offset at front
|
|
180
196
|
const offsetEnd = writer1.tell();
|
|
181
197
|
writer1.seek(oldPos);
|
|
182
198
|
for (const name of names) {
|
|
@@ -196,11 +212,15 @@ export class Fields {
|
|
|
196
212
|
const idx = this.valueReps.tell() / 8;
|
|
197
213
|
this.tokenIndices.push(this.tokens.add(name));
|
|
198
214
|
const offset = this.data.tell();
|
|
215
|
+
// if (value.explicit && value.explicit[0] instanceof UsdNode) {
|
|
216
|
+
// console.log(`ValueRep(): write ListOp<UsdNode> @ ${offset}`)
|
|
217
|
+
// }
|
|
199
218
|
this.valueReps.writeUint32(this.data.tell());
|
|
200
219
|
this.valueReps.skip(2);
|
|
201
220
|
this.valueReps.writeUint8(type);
|
|
202
221
|
this.valueReps.writeUint8(0);
|
|
203
222
|
const hdr = new ListOpHeader(this.data, value);
|
|
223
|
+
// console.log(hdr.toString())
|
|
204
224
|
const write = (list) => {
|
|
205
225
|
if (list === undefined) {
|
|
206
226
|
return;
|
|
@@ -217,8 +237,10 @@ export class Fields {
|
|
|
217
237
|
case "object":
|
|
218
238
|
const o = v;
|
|
219
239
|
if (o instanceof UsdNode) {
|
|
240
|
+
// console.log(`_setListOp(${name}, ${o.index} %o)`, o.toJSON())
|
|
220
241
|
if (o.index === -1) {
|
|
221
242
|
throw Error(`Fields._setListOp("${name}", ...): object ${o.getFullPathName()} has no index yet`);
|
|
243
|
+
// console.log(`Fields._setListOp("${name}", ...): object ${o.getFullPathName()} has no index yet`)
|
|
222
244
|
}
|
|
223
245
|
this.data.writeUint32(o.index);
|
|
224
246
|
}
|
|
@@ -246,6 +268,7 @@ export class Fields {
|
|
|
246
268
|
this.valueReps.writeUint8(IsInlinedBit);
|
|
247
269
|
return idx;
|
|
248
270
|
}
|
|
271
|
+
// TODO: this can be stored as compressed
|
|
249
272
|
setIntArray(name, value) {
|
|
250
273
|
const idx = this.valueReps.tell() / 8;
|
|
251
274
|
this.tokenIndices.push(this.tokens.add(name));
|
|
@@ -402,6 +425,8 @@ export class Fields {
|
|
|
402
425
|
return idx;
|
|
403
426
|
}
|
|
404
427
|
serialize(writer) {
|
|
428
|
+
// const numFields = this.tokenIndices.length
|
|
429
|
+
// writer.writeUint64(numFields) // done in writeCompresedInt
|
|
405
430
|
writer.writeCompressedIntegers(this.tokenIndices);
|
|
406
431
|
const compressed = new Uint8Array(compressBound(this.valueReps.buffer.byteLength) + 1);
|
|
407
432
|
const compresedSize = compressToBuffer(new Uint8Array(this.valueReps.buffer), compressed);
|
package/dist/crate/Fields.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Fields.js","sourceRoot":"","sources":["../../src/crate/Fields.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Fields.js","sourceRoot":"","sources":["../../src/crate/Fields.ts"],"names":[],"mappings":"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"}
|
package/dist/crate/Paths.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Reader } from "./Reader.js";
|
|
2
2
|
import type { Tokens } from "./Tokens";
|
|
3
|
-
import { UsdNode } from "
|
|
3
|
+
import { UsdNode } from "../nodes/usd/UsdNode";
|
|
4
4
|
import type { Writer } from "./Writer";
|
|
5
5
|
export declare const JUMP_NO_CHILD_NO_SIBLINGS = -2;
|
|
6
6
|
export declare const JUMP_NEXT_IS_CHILD_NO_SIBLINGS = -1;
|
package/dist/crate/Paths.js
CHANGED
|
@@ -8,6 +8,7 @@ export class Paths {
|
|
|
8
8
|
if (reader instanceof Reader) {
|
|
9
9
|
this.num_nodes = reader.getUint64();
|
|
10
10
|
const numEncodedPaths = reader.getUint64();
|
|
11
|
+
// console.log(`Paths(reader): num_nodes = ${this.num_nodes}, numEncodedPaths = ${numEncodedPaths}`)
|
|
11
12
|
this.pathIndexes = reader.getCompressedIntegers(numEncodedPaths);
|
|
12
13
|
this.tokenIndexes = reader.getCompressedIntegers(numEncodedPaths);
|
|
13
14
|
this.jumps = reader.getCompressedIntegers(numEncodedPaths);
|
|
@@ -16,9 +17,11 @@ export class Paths {
|
|
|
16
17
|
encode(tokens, root) {
|
|
17
18
|
this._nodes = new Array(root.numberOfNodes());
|
|
18
19
|
const numEncodedPaths = this._nodes.length;
|
|
20
|
+
// console.log(`numEncodedPaths = ${numEncodedPaths}`)
|
|
19
21
|
this.pathIndexes = new Array(numEncodedPaths);
|
|
20
22
|
this.tokenIndexes = new Array(numEncodedPaths);
|
|
21
23
|
this.jumps = new Array(numEncodedPaths);
|
|
24
|
+
// TODO: do this earlier to fill up the tokens
|
|
22
25
|
const arg = {
|
|
23
26
|
tokens,
|
|
24
27
|
thisIndex: 0,
|
|
@@ -28,10 +31,21 @@ export class Paths {
|
|
|
28
31
|
depth: 0
|
|
29
32
|
};
|
|
30
33
|
root.flatten(arg);
|
|
34
|
+
// this.print()
|
|
31
35
|
}
|
|
32
36
|
serialize(writer) {
|
|
33
|
-
|
|
34
|
-
|
|
37
|
+
// for(let i=0; i<numEncodedPaths; ++i) {
|
|
38
|
+
// const n = this._nodes[i]
|
|
39
|
+
// console.log(`[${i}] = token ${arg.tokenIndexes[i]} ${n.name}, jump ${arg.jumps[i]}`)
|
|
40
|
+
// }
|
|
41
|
+
// console.log('PATH WRITE')
|
|
42
|
+
// console.log(`numNodes : ${this._nodes.length}`)
|
|
43
|
+
// console.log(`numEncodedPaths: ${numEncodedPaths}`)
|
|
44
|
+
// console.log(`pathIndices : ${arg.pathIndexes}`)
|
|
45
|
+
// console.log(`tokenIndexes : ${arg.tokenIndexes}`)
|
|
46
|
+
// console.log(`jumps : ${arg.jumps}`)
|
|
47
|
+
writer.writeUint64(this._nodes.length); // number of nodes
|
|
48
|
+
writer.writeUint64(this._nodes.length); // number of paths
|
|
35
49
|
writer.writeCompressedIntWithoutSize(this.pathIndexes);
|
|
36
50
|
writer.writeCompressedIntWithoutSize(this.tokenIndexes);
|
|
37
51
|
writer.writeCompressedIntWithoutSize(this.jumps);
|
package/dist/crate/Paths.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Paths.js","sourceRoot":"","sources":["../../src/crate/Paths.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAMpC,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,CAAA;AAC3C,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,CAAA;AAChD,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAA;AAC9C,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,EAAE,CAAA;AAErD,MAAM,OAAO,KAAK;IAQd,YAAY,MAAe;QACvB,IAAI,MAAM,YAAY,MAAM,EAAE,CAAC;YAC3B,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,EAAE,CAAA;YACnC,MAAM,eAAe,GAAG,MAAM,CAAC,SAAS,EAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"Paths.js","sourceRoot":"","sources":["../../src/crate/Paths.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAMpC,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,CAAA;AAC3C,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,CAAA;AAChD,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAA;AAC9C,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,EAAE,CAAA;AAErD,MAAM,OAAO,KAAK;IAQd,YAAY,MAAe;QACvB,IAAI,MAAM,YAAY,MAAM,EAAE,CAAC;YAC3B,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,EAAE,CAAA;YACnC,MAAM,eAAe,GAAG,MAAM,CAAC,SAAS,EAAE,CAAA;YAE1C,oGAAoG;YAEpG,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAA;YAChE,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAA;YACjE,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAA;QAC9D,CAAC;IACL,CAAC;IAED,MAAM,CAAC,MAAc,EAAE,IAAa;QAChC,IAAI,CAAC,MAAM,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAA;QAE7C,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAA;QAC1C,sDAAsD;QAEtD,IAAI,CAAC,WAAW,GAAG,IAAI,KAAK,CAAS,eAAe,CAAC,CAAA;QACrD,IAAI,CAAC,YAAY,GAAG,IAAI,KAAK,CAAS,eAAe,CAAC,CAAA;QACtD,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAS,eAAe,CAAC,CAAA;QAE/C,8CAA8C;QAC9C,MAAM,GAAG,GAAyB;YAC9B,MAAM;YACN,SAAS,EAAE,CAAC;YACZ,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,KAAK,EAAE,CAAC;SACX,CAAA;QAED,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QACjB,eAAe;IACnB,CAAC;IAED,SAAS,CAAC,MAAc;QACpB,yCAAyC;QACzC,+BAA+B;QAC/B,2FAA2F;QAC3F,IAAI;QAEJ,4BAA4B;QAC5B,wDAAwD;QACxD,qDAAqD;QACrD,qDAAqD;QACrD,sDAAsD;QACtD,+CAA+C;QAE/C,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,MAAO,CAAC,MAAM,CAAC,CAAA,CAAC,kBAAkB;QAC1D,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,MAAO,CAAC,MAAM,CAAC,CAAA,CAAC,kBAAkB;QAC1D,MAAM,CAAC,6BAA6B,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QACtD,MAAM,CAAC,6BAA6B,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;QACvD,MAAM,CAAC,6BAA6B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACpD,CAAC;CACJ"}
|
package/dist/crate/Reader.js
CHANGED
|
@@ -71,9 +71,9 @@ export class Reader {
|
|
|
71
71
|
const compressedSize = this.getUint64();
|
|
72
72
|
const compressed = new Uint8Array(this._dataview.buffer, this.offset, compressedSize);
|
|
73
73
|
this.offset += compressedSize;
|
|
74
|
-
const workingSpaceSize = 4
|
|
75
|
-
+ Math.floor((numberOfInts * 2 + 7) / 8)
|
|
76
|
-
+ numberOfInts * 4;
|
|
74
|
+
const workingSpaceSize = 4 // common value uint32
|
|
75
|
+
+ Math.floor((numberOfInts * 2 + 7) / 8) // number of code bytes
|
|
76
|
+
+ numberOfInts * 4; // max. space for uint32
|
|
77
77
|
const workingSpace = new Uint8Array(workingSpaceSize);
|
|
78
78
|
const decompSz = decompressFromBuffer(compressed, workingSpace);
|
|
79
79
|
const xxx = new Uint8Array(workingSpace.buffer, 0, decompSz);
|
package/dist/crate/Reader.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Reader.js","sourceRoot":"","sources":["../../src/crate/Reader.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Reader.js","sourceRoot":"","sources":["../../src/crate/Reader.ts"],"names":[],"mappings":"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"}
|
package/dist/crate/SpecType.d.ts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
export declare enum SpecType {
|
|
2
2
|
Unknown = 0,
|
|
3
|
-
Attribute = 1
|
|
3
|
+
Attribute = 1,// is a property
|
|
4
4
|
Connection = 2,
|
|
5
5
|
Expression = 3,
|
|
6
6
|
Mapper = 4,
|
|
7
7
|
MapperArg = 5,
|
|
8
8
|
Prim = 6,
|
|
9
|
-
PseudoRoot = 7
|
|
10
|
-
Relationship = 8
|
|
9
|
+
PseudoRoot = 7,// is a prim
|
|
10
|
+
Relationship = 8,// is a property
|
|
11
11
|
RelationshipTarget = 9,
|
|
12
12
|
Variant = 10,
|
|
13
13
|
VariantSet = 11,
|
package/dist/crate/SpecType.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SpecType.js","sourceRoot":"","sources":["../../src/crate/SpecType.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SpecType.js","sourceRoot":"","sources":["../../src/crate/SpecType.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,+BAA+B;AAE/B,MAAM,CAAN,IAAY,QAcX;AAdD,WAAY,QAAQ;IAChB,6CAAO,CAAA;IACP,iDAAS,CAAA;IACT,mDAAU,CAAA;IACV,mDAAU,CAAA;IACV,2CAAM,CAAA;IACN,iDAAS,CAAA;IACT,uCAAI,CAAA;IACJ,mDAAU,CAAA;IACV,uDAAY,CAAA;IACZ,mEAAkB,CAAA;IAClB,8CAAO,CAAA;IACP,oDAAU,CAAA;IACV,8CAAO,CAAA;AACX,CAAC,EAdW,QAAQ,KAAR,QAAQ,QAcnB;AAED,MAAM,UAAU,MAAM,CAAC,IAAc;IACjC,QAAQ,IAAI,EAAE,CAAC;QACX,KAAK,QAAQ,CAAC,UAAU,CAAC;QACzB,KAAK,QAAQ,CAAC,IAAI;YACd,OAAO,IAAI,CAAA;QACf,KAAK,QAAQ,CAAC,SAAS,CAAC;QACxB,KAAK,QAAQ,CAAC,YAAY;YACtB,OAAO,KAAK,CAAA;QAChB;YACI,MAAM,KAAK,CAAC,2BAA2B,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAA;IACjF,CAAC;AACL,CAAC"}
|
package/dist/crate/Specs.js
CHANGED
|
@@ -2,6 +2,7 @@ export class Specs {
|
|
|
2
2
|
constructor(reader) {
|
|
3
3
|
if (reader !== undefined) {
|
|
4
4
|
const num_specs = reader.getUint64();
|
|
5
|
+
// console.log(`Specs(reader): num_specs = ${num_specs}`)
|
|
5
6
|
this.pathIndexes = reader.getCompressedIntegers(num_specs);
|
|
6
7
|
this.fieldsetIndexes = reader.getCompressedIntegers(num_specs);
|
|
7
8
|
this.specTypeIndexes = reader.getCompressedIntegers(num_specs);
|
package/dist/crate/Specs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Specs.js","sourceRoot":"","sources":["../../src/crate/Specs.ts"],"names":[],"mappings":"AAIA,MAAM,OAAO,KAAK;IAKd,YAAY,MAAe;QACvB,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACvB,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,EAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"Specs.js","sourceRoot":"","sources":["../../src/crate/Specs.ts"],"names":[],"mappings":"AAIA,MAAM,OAAO,KAAK;IAKd,YAAY,MAAe;QACvB,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACvB,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,EAAE,CAAA;YAEpC,yDAAyD;YAEzD,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAA;YAC1D,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAA;YAC9D,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAA;QAClE,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,WAAW,GAAG,EAAE,CAAA;YACrB,IAAI,CAAC,eAAe,GAAG,EAAE,CAAA;YACzB,IAAI,CAAC,eAAe,GAAG,EAAE,CAAA;QAC7B,CAAC;IACL,CAAC;IACD,SAAS,CAAC,MAAc;QACpB,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,KAAK,IAAI,CAAC,eAAe,CAAC,MAAM;YACvD,IAAI,CAAC,WAAW,CAAC,MAAM,KAAK,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC;YAC1D,MAAM,KAAK,CAAC,2CAA2C,CAAC,CAAA;QAC5D,CAAC;QACD,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;QAC3C,MAAM,CAAC,6BAA6B,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QACtD,MAAM,CAAC,6BAA6B,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;QAC1D,MAAM,CAAC,6BAA6B,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;IAC9D,CAAC;CACJ"}
|
package/dist/crate/Stage.d.ts
CHANGED
package/dist/crate/Stage.js
CHANGED
|
@@ -13,6 +13,7 @@ export class Stage {
|
|
|
13
13
|
throw Error('only absolute paths are implemented');
|
|
14
14
|
}
|
|
15
15
|
const pathSegments = path.split('/').splice(1);
|
|
16
|
+
// console.log(`TRAVERSE %o (${path})`, s)
|
|
16
17
|
let parent;
|
|
17
18
|
let node = this._crate.paths._nodes[0];
|
|
18
19
|
for (const segment of pathSegments) {
|
package/dist/crate/Stage.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Stage.js","sourceRoot":"","sources":["../../src/crate/Stage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAGjC,MAAM,OAAO,KAAK;IAEd,YAAY,MAAe;QACvB,IAAI,MAAM,EAAE,CAAC;YACT,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAA;YACxG,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAA;YAC/B,IAAI,CAAC,MAAM,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,CAAA;QACnC,CAAC;IACL,CAAC;IACD,aAAa,CAAC,IAAY;QACtB,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YAClB,MAAM,KAAK,CAAC,qCAAqC,CAAC,CAAA;QACtD,CAAC;QACD,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"Stage.js","sourceRoot":"","sources":["../../src/crate/Stage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAGjC,MAAM,OAAO,KAAK;IAEd,YAAY,MAAe;QACvB,IAAI,MAAM,EAAE,CAAC;YACT,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAA;YACxG,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAA;YAC/B,IAAI,CAAC,MAAM,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,CAAA;QACnC,CAAC;IACL,CAAC;IACD,aAAa,CAAC,IAAY;QACtB,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YAClB,MAAM,KAAK,CAAC,qCAAqC,CAAC,CAAA;QACtD,CAAC;QACD,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QAC9C,0CAA0C;QAC1C,IAAI,MAA2B,CAAA;QAC/B,IAAI,IAAI,GAAwB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QAC3D,KAAK,MAAM,OAAO,IAAI,YAAY,EAAE,CAAC;YACjC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACrB,MAAK;YACT,CAAC;YACD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvB,MAAK;YACT,CAAC;YACD,MAAM,GAAG,IAAI,CAAA;YACb,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;QACrC,CAAC;QACD,IAAI,IAAI,IAAI,SAAS,EAAE,CAAC;YACpB,MAAM,KAAK,CAAC,SAAS,IAAI,mBAAmB,MAAM,EAAE,eAAe,EAAE,2BAA2B,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACrJ,CAAC;QACD,OAAO,IAAI,CAAA;IACf,CAAC;CACJ"}
|
package/dist/crate/Strings.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Reader } from "./Reader.js";
|
|
2
|
+
// WHUT? these are stored as a _non-compressed_ list of integers???
|
|
2
3
|
export class Strings {
|
|
3
4
|
constructor(readerOrTokens, tokens) {
|
|
4
5
|
if (readerOrTokens instanceof Reader) {
|
|
@@ -8,6 +9,9 @@ export class Strings {
|
|
|
8
9
|
for (let i = 0; i < n; ++i) {
|
|
9
10
|
this.strings[i] = readerOrTokens.getUint32();
|
|
10
11
|
}
|
|
12
|
+
// if (section.start + section.size !== reader.offset) {
|
|
13
|
+
// throw Error(`STRINGS: not at end: expected end at ${section.start + section.size} but reader is at ${reader.offset}`)
|
|
14
|
+
// }
|
|
11
15
|
}
|
|
12
16
|
else {
|
|
13
17
|
this.tokens = readerOrTokens;
|
|
@@ -33,6 +37,7 @@ export class Strings {
|
|
|
33
37
|
let index = this._strings.get(value);
|
|
34
38
|
if (index === undefined) {
|
|
35
39
|
index = this.strings.length;
|
|
40
|
+
// TODO: do this during serialize to place strings at the end
|
|
36
41
|
const token = this.tokens.add(value);
|
|
37
42
|
this.strings.push(token);
|
|
38
43
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Strings.js","sourceRoot":"","sources":["../../src/crate/Strings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAIpC,MAAM,OAAO,OAAO;IAOhB,YAAY,cAA+B,EAAE,MAAe;QACxD,IAAI,cAAc,YAAY,MAAM,EAAE,CAAC;YACnC,IAAI,CAAC,MAAM,GAAG,MAAO,CAAA;YACrB,MAAM,CAAC,GAAG,cAAc,CAAC,SAAS,EAAE,CAAA;YACpC,IAAI,CAAC,OAAO,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,CAAA;YAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;gBACzB,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,SAAS,EAAE,CAAA;YAChD,CAAC;
|
|
1
|
+
{"version":3,"file":"Strings.js","sourceRoot":"","sources":["../../src/crate/Strings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAIpC,mEAAmE;AACnE,MAAM,OAAO,OAAO;IAOhB,YAAY,cAA+B,EAAE,MAAe;QACxD,IAAI,cAAc,YAAY,MAAM,EAAE,CAAC;YACnC,IAAI,CAAC,MAAM,GAAG,MAAO,CAAA;YACrB,MAAM,CAAC,GAAG,cAAc,CAAC,SAAS,EAAE,CAAA;YACpC,IAAI,CAAC,OAAO,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,CAAA;YAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;gBACzB,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,SAAS,EAAE,CAAA;YAChD,CAAC;YACD,wDAAwD;YACxD,4HAA4H;YAC5H,IAAI;QACR,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,MAAM,GAAG,cAAc,CAAA;YAC5B,IAAI,CAAC,OAAO,GAAG,EAAE,CAAA;QACrB,CAAC;IACL,CAAC;IACD,SAAS,CAAC,MAAc;QACpB,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QACvC,KAAI,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAC9B,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;QAC7B,CAAC;IACL,CAAC;IACD,GAAG,CAAC,KAAa;QACb,IAAI,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YAC/B,MAAM,KAAK,CAAC,gBAAgB,KAAK,kBAAkB,CAAC,CAAA;QACxD,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAA;IAC/C,CAAC;IACD,GAAG,CAAC,KAAa;QACb,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC9B,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAA;QAC7B,CAAC;QACD,IAAI,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACpC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACtB,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAA;YAC3B,6DAA6D;YAC7D,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YACpC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC5B,CAAC;QACD,OAAO,KAAK,CAAA;IAChB,CAAC;CACJ"}
|
package/dist/crate/Tokens.js
CHANGED
|
@@ -1,4 +1,45 @@
|
|
|
1
1
|
import { compressToBuffer, decompressFromBuffer } from "../compression/compress";
|
|
2
|
+
import { compressBound } from "../compression/lz4";
|
|
3
|
+
// https://docs.nvidia.com/learn-openusd/latest/stage-setting/index.html
|
|
4
|
+
// stage, layer
|
|
5
|
+
// the tree of nodes contains prim and attribute
|
|
6
|
+
// nodes have fields: fieldset, field
|
|
7
|
+
// stage.DefinePrim(path, prim_type)
|
|
8
|
+
// UsdGeom.Xform.Define(stage, path)
|
|
9
|
+
// prim.GetChildren()
|
|
10
|
+
// prim.GetTypeName()
|
|
11
|
+
// prim.GetProperties()
|
|
12
|
+
// stage: Usd.Stage = Usd.Stage.CreateNew("_assets/prims.usda")
|
|
13
|
+
// # Define a new primitive at the path "/hello" on the current stage:
|
|
14
|
+
// stage.definePrim("/hello")
|
|
15
|
+
// # Define a new primitive at the path "/world" on the current stage with the prim type, Sphere.
|
|
16
|
+
// stage.definePrim("/world", "Sphere")
|
|
17
|
+
// stage.save()
|
|
18
|
+
// #usda 1.0
|
|
19
|
+
// def "hello"
|
|
20
|
+
// {
|
|
21
|
+
// }
|
|
22
|
+
// def Sphere "world"
|
|
23
|
+
// {
|
|
24
|
+
// }
|
|
25
|
+
// from pxr import Usd, UsdGeom
|
|
26
|
+
// file_path = "_assets/sphere_prim.usda"
|
|
27
|
+
// stage: Usd.Stage = Usd.Stage.CreateNew(file_path)
|
|
28
|
+
// # Define a prim of type `Sphere` at path `/hello`:
|
|
29
|
+
// sphere: UsdGeom.Sphere = UsdGeom.Sphere.Define(stage, "/hello")
|
|
30
|
+
// sphere.CreateRadiusAttr().Set(2)
|
|
31
|
+
// # Save the stage:
|
|
32
|
+
// stage.Save()
|
|
33
|
+
// #usda 1.0
|
|
34
|
+
// def Sphere "hello"
|
|
35
|
+
// {
|
|
36
|
+
// double radius = 2
|
|
37
|
+
// }
|
|
38
|
+
// blender/source/blender/io/usd/intern/usd_capi_export.cc:
|
|
39
|
+
// pxr::UsdStageRefPtr usd_stage = pxr::UsdStage::CreateNew(filepath);
|
|
40
|
+
// both of the following end up as fields...
|
|
41
|
+
// usd_stage->SetMetadata(pxr::UsdGeomTokens->metersPerUnit, double(scene->unit.scale_length));
|
|
42
|
+
// usd_stage->GetRootLayer()->SetDocumentation(std::string("Blender v") + BKE_blender_version_string());
|
|
2
43
|
export class Tokens {
|
|
3
44
|
constructor(reader) {
|
|
4
45
|
this.tokens = [];
|
|
@@ -6,6 +47,10 @@ export class Tokens {
|
|
|
6
47
|
const numTokens = reader.getUint64();
|
|
7
48
|
const uncompressedSize = reader.getUint64();
|
|
8
49
|
const compressedSize = reader.getUint64();
|
|
50
|
+
// console.log(`TOKENS: numTokens = ${numTokens}, uncompressedSize = ${uncompressedSize}, compressedSize = ${compressedSize}`)
|
|
51
|
+
// if (compressedSize > section.size - 24) {
|
|
52
|
+
// throw Error(`TOKENS section: compressed size exceeds section`)
|
|
53
|
+
// }
|
|
9
54
|
const compressed = new Uint8Array(reader._dataview.buffer, reader.offset, compressedSize);
|
|
10
55
|
const uncompressed = new Uint8Array(uncompressedSize);
|
|
11
56
|
const n = decompressFromBuffer(compressed, uncompressed);
|
|
@@ -21,6 +66,7 @@ export class Tokens {
|
|
|
21
66
|
if (tokenIndex >= numTokens) {
|
|
22
67
|
throw Error(`too many tokens`);
|
|
23
68
|
}
|
|
69
|
+
// console.log(`TOKEN ${tokenIndex} = '${name}'`)
|
|
24
70
|
this.tokens[tokenIndex] = name;
|
|
25
71
|
++tokenIndex;
|
|
26
72
|
name = "";
|
|
@@ -58,7 +104,7 @@ export class Tokens {
|
|
|
58
104
|
uncompressedSize += token.length + 1;
|
|
59
105
|
}
|
|
60
106
|
const src = new Uint8Array(uncompressedSize);
|
|
61
|
-
const dst = new Uint8Array(uncompressedSize +
|
|
107
|
+
const dst = new Uint8Array(compressBound(uncompressedSize) + 1);
|
|
62
108
|
let offset = 0;
|
|
63
109
|
for (const token of this.tokens) {
|
|
64
110
|
for (let i = 0; i < token.length; ++i) {
|
package/dist/crate/Tokens.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tokens.js","sourceRoot":"","sources":["../../src/crate/Tokens.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;
|
|
1
|
+
{"version":3,"file":"Tokens.js","sourceRoot":"","sources":["../../src/crate/Tokens.ts"],"names":[],"mappings":"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"}
|
package/dist/crate/ValueRep.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { CrateDataType } from "./CrateDataType";
|
|
2
2
|
import type { Crate } from "./Crate";
|
|
3
|
-
import { UsdNode } from "
|
|
3
|
+
import { UsdNode } from "../nodes/usd/UsdNode.js";
|
|
4
4
|
export declare const kMinCompressedArraySize = 16;
|
|
5
5
|
export declare class ValueRep {
|
|
6
6
|
private _buffer;
|
package/dist/crate/ValueRep.js
CHANGED
|
@@ -1,11 +1,20 @@
|
|
|
1
|
+
// 8 octets
|
|
2
|
+
// Value in file representation. Consists of a 2 bytes of type information
|
|
3
|
+
// (type enum value, array bit, and inlined-value bit) and 6 bytes of data.
|
|
4
|
+
// If possible, we attempt to store certain values directly in the local
|
|
5
|
+
// data, such as ints, floats, enums, and special-case values of other types
|
|
6
|
+
// (zero vectors, identity matrices, etc). For values that aren't stored
|
|
7
|
+
// inline, the 6 data bytes are the offset from the start of the file to the
|
|
1
8
|
import { hexdump } from "../detail/hexdump";
|
|
2
9
|
import { decodeIntegers } from "../compression/integers";
|
|
3
10
|
import { CrateDataType, ListOpHeader } from "./CrateDataType";
|
|
4
11
|
import { Specifier } from "./Specifier";
|
|
5
|
-
import { UsdNode } from "
|
|
12
|
+
import { UsdNode } from "../nodes/usd/UsdNode.js";
|
|
6
13
|
import { Variability } from "./Variability.js";
|
|
7
14
|
import { decompressFromBuffer } from "../compression/compress";
|
|
8
15
|
export const kMinCompressedArraySize = 16;
|
|
16
|
+
// value's location.
|
|
17
|
+
// FIXME: last two bytes are type info
|
|
9
18
|
export class ValueRep {
|
|
10
19
|
constructor(buffer, offset) {
|
|
11
20
|
this._buffer = buffer;
|
|
@@ -29,13 +38,18 @@ export class ValueRep {
|
|
|
29
38
|
value: v
|
|
30
39
|
};
|
|
31
40
|
}
|
|
41
|
+
// NOTE: tinyusdz has most of it's unpack code in bool CrateReader::UnpackValueRep(const crate::ValueRep &rep, crate::CrateValue *value)
|
|
32
42
|
getValue(crate) {
|
|
33
43
|
const reader = crate.reader;
|
|
44
|
+
// if (reader === undefined) {
|
|
45
|
+
// console.log('ValueRep.getValue(): create.reader === undefined')
|
|
46
|
+
// }
|
|
34
47
|
switch (this.getType()) {
|
|
35
48
|
case CrateDataType.Bool:
|
|
36
49
|
if (this.isInlined() && !this.isArray() && !this.isCompressed()) {
|
|
37
50
|
return this.getBool();
|
|
38
51
|
}
|
|
52
|
+
// ValueRep.getValue(): for default not implemented yet: type: Bool, array: true, inline: false, compressed: true
|
|
39
53
|
break;
|
|
40
54
|
case CrateDataType.Float:
|
|
41
55
|
if (this.isInlined() && !this.isArray() && !this.isCompressed()) {
|
|
@@ -244,12 +258,15 @@ export class ValueRep {
|
|
|
244
258
|
if (!this.isArray() && !this.isInlined() && !this.isCompressed()) {
|
|
245
259
|
reader.offset = this.getIndex();
|
|
246
260
|
const sz = reader.getUint64();
|
|
261
|
+
// console.log(`decode dict at ${this._offset} of size ${sz}, offset ${reader.offset.toString(16).padStart(4, '0')}`)
|
|
247
262
|
const result = {};
|
|
248
263
|
for (let i = 0; i < sz; ++i) {
|
|
249
264
|
const key = crate.strings.get(reader.getUint32());
|
|
250
265
|
const offset = reader.getUint64();
|
|
251
266
|
const value = new ValueRep(reader._dataview, reader.offset + offset - 8);
|
|
252
267
|
result[key] = value.getValue(crate);
|
|
268
|
+
// console.log(`dict[${key}] = ${result[key]}`)
|
|
269
|
+
// console.log(value.getType())
|
|
253
270
|
}
|
|
254
271
|
return result;
|
|
255
272
|
}
|
|
@@ -292,14 +309,18 @@ export class ValueRep {
|
|
|
292
309
|
}
|
|
293
310
|
break;
|
|
294
311
|
case CrateDataType.PathListOp:
|
|
312
|
+
// TODO: type might be number, string or UsdNode
|
|
295
313
|
if (!this.isArray() && !this.isInlined() && !this.isCompressed()) {
|
|
296
314
|
reader.offset = this.getIndex();
|
|
297
315
|
const hdr = new ListOpHeader(reader);
|
|
316
|
+
// console.log(`ValueRep(): read PathListOp @ ${reader.offset}, ${hdr}`)
|
|
298
317
|
const read = () => {
|
|
299
318
|
const n = reader.getUint64();
|
|
319
|
+
// console.log(` n = ${n}`)
|
|
300
320
|
const arr = new Array(n);
|
|
301
321
|
for (let i = 0; i < n; ++i) {
|
|
302
322
|
arr[i] = crate.paths._nodes[reader.getUint32()].getFullPathName();
|
|
323
|
+
// console.log(` arr[${i}] = %o`, arr[i])
|
|
303
324
|
}
|
|
304
325
|
return arr;
|
|
305
326
|
};
|
|
@@ -332,6 +353,7 @@ export class ValueRep {
|
|
|
332
353
|
return undefined;
|
|
333
354
|
}
|
|
334
355
|
getType() {
|
|
356
|
+
// console.log(`getType @ offset = ${this._offset}`)
|
|
335
357
|
return this._buffer.getUint8(this._offset + 6);
|
|
336
358
|
}
|
|
337
359
|
isArray() { return (this._buffer.getUint8(this._offset + 7) & 128) !== 0; }
|
|
@@ -342,10 +364,11 @@ export class ValueRep {
|
|
|
342
364
|
}
|
|
343
365
|
getPayload() {
|
|
344
366
|
const d = new DataView(this._buffer.buffer, this._buffer.byteOffset);
|
|
345
|
-
const value = d.getBigUint64(this._offset, true);
|
|
367
|
+
const value = d.getBigUint64(this._offset, true); // & 0xffffffffffffn
|
|
346
368
|
console.log(`value rep @ ${this._offset} = ${value}`);
|
|
347
369
|
return value;
|
|
348
370
|
}
|
|
371
|
+
// TODO: rename the following to inline? or merge them with the general ones
|
|
349
372
|
getBool() {
|
|
350
373
|
return this._buffer.getUint8(this._offset) !== 0;
|
|
351
374
|
}
|
|
@@ -356,8 +379,9 @@ export class ValueRep {
|
|
|
356
379
|
return this._buffer.getFloat32(this._offset, true);
|
|
357
380
|
}
|
|
358
381
|
getDouble() {
|
|
359
|
-
return this._buffer.getFloat32(this._offset, true);
|
|
382
|
+
return this._buffer.getFloat32(this._offset, true); // FIXME: Float64 from 6 octets???
|
|
360
383
|
}
|
|
384
|
+
// TODO: signed or unsigned?
|
|
361
385
|
getVec3f() {
|
|
362
386
|
return [this._buffer.getInt8(this._offset), this._buffer.getInt8(this._offset + 1), this._buffer.getInt8(this._offset + 2)];
|
|
363
387
|
}
|