@carbonenginejs/runtime-utils 0.1.1 → 0.1.3

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.
Files changed (104) hide show
  1. package/LICENSE +21 -21
  2. package/NOTICE +23 -23
  3. package/README.md +69 -69
  4. package/THIRD-PARTY-NOTICES.md +64 -64
  5. package/docs/README.md +74 -73
  6. package/docs/architecture.md +101 -101
  7. package/docs/concepts/foundation-consolidation.md +85 -85
  8. package/docs/concepts/model-lifecycle.md +111 -0
  9. package/docs/const-kb.md +85 -87
  10. package/docs/core-types/DECORATOR-TODOS.md +25 -25
  11. package/docs/core-types/README.md +229 -168
  12. package/docs/reference/api.md +105 -102
  13. package/docs/reference/classes/README.md +135 -135
  14. package/package.json +139 -139
  15. package/src/arrays.js +5 -5
  16. package/src/audio/audioFormats.js +34 -34
  17. package/src/audio/index.js +1 -1
  18. package/src/box3.js +331 -331
  19. package/src/bytes.js +56 -56
  20. package/src/compression.js +56 -56
  21. package/src/constants/index.js +7 -7
  22. package/src/constants/trinity.js +13 -13
  23. package/src/constants.js +15 -15
  24. package/src/curve.js +79 -79
  25. package/src/d3d/dxgiFormats.js +46 -46
  26. package/src/d3d/index.js +2 -2
  27. package/src/d3d/primitiveTopology.js +11 -11
  28. package/src/document/CjsCarbonDocument.js +212 -212
  29. package/src/document/CjsClassRegistry.js +373 -373
  30. package/src/document/CjsDocumentDehydrator.js +142 -142
  31. package/src/document/CjsDocumentHydrator.js +156 -156
  32. package/src/document/CjsStructRegistry.js +348 -348
  33. package/src/document/hydrationAdapter.js +129 -129
  34. package/src/document/index.js +6 -6
  35. package/src/errors/CjsError.js +286 -286
  36. package/src/errors/index.js +5 -5
  37. package/src/geometry/box.js +22 -22
  38. package/src/geometry/cylinder.js +22 -22
  39. package/src/geometry/helpers/earcut.js +1 -1
  40. package/src/geometry/helpers/misc.js +3 -3
  41. package/src/geometry/index.js +8 -8
  42. package/src/geometry/json.js +67 -67
  43. package/src/geometry/lathe.js +44 -44
  44. package/src/geometry/plane.js +14 -14
  45. package/src/geometry/shape.js +4 -4
  46. package/src/geometry/sphere.js +24 -24
  47. package/src/geometry/torus.js +14 -14
  48. package/src/graphics/colorSpaces.js +22 -22
  49. package/src/graphics/index.js +4 -4
  50. package/src/graphics/pixelFormats.js +158 -158
  51. package/src/graphics/textureDimensions.js +22 -22
  52. package/src/graphics/trinityEnums.js +87 -87
  53. package/src/index.js +62 -62
  54. package/src/is.js +108 -46
  55. package/src/json.js +23 -23
  56. package/src/lifecycle/CjsLifecycleState.js +77 -77
  57. package/src/lifecycle/index.js +1 -1
  58. package/src/lne3.js +70 -70
  59. package/src/lookup.js +48 -48
  60. package/src/mat3.js +51 -51
  61. package/src/mat4.js +699 -699
  62. package/src/math/index.js +25 -25
  63. package/src/math/scalar.js +63 -63
  64. package/src/media/index.js +1 -1
  65. package/src/media/mediaTypes.js +50 -50
  66. package/src/mesh.js +424 -424
  67. package/src/model/CjsEventEmitter.js +333 -333
  68. package/src/model/CjsModel.js +1589 -1544
  69. package/src/model/CjsModelState.js +72 -72
  70. package/src/model/index.js +4 -4
  71. package/src/model/sourceRecordUtils.js +54 -54
  72. package/src/noise.js +310 -310
  73. package/src/num.js +827 -827
  74. package/src/object.js +39 -39
  75. package/src/path.js +53 -53
  76. package/src/pln.js +125 -125
  77. package/src/pool.js +9 -9
  78. package/src/quat.js +144 -144
  79. package/src/ray3.js +188 -188
  80. package/src/renderContext/formats.js +145 -145
  81. package/src/renderContext/index.js +5 -5
  82. package/src/renderContext/presentation.js +125 -125
  83. package/src/renderContext/resources.js +27 -27
  84. package/src/renderContext/upscaling.js +22 -22
  85. package/src/renderContext/window.js +20 -20
  86. package/src/runtime/CjsRuntimeState.js +50 -50
  87. package/src/schema/CjsSchema.js +555 -318
  88. package/src/schema/index.js +4 -4
  89. package/src/shader/index.js +1 -1
  90. package/src/shader/shaderStages.js +37 -37
  91. package/src/sph3.js +181 -181
  92. package/src/tangent.js +288 -288
  93. package/src/text.js +40 -40
  94. package/src/tri3.js +98 -98
  95. package/src/types/carbonTypes.js +635 -635
  96. package/src/types/index.js +2 -2
  97. package/src/utils.js +58 -58
  98. package/src/validation.js +46 -46
  99. package/src/vec2.js +229 -229
  100. package/src/vec3.js +1188 -1172
  101. package/src/vec4.js +347 -347
  102. package/src/vertex.js +108 -108
  103. package/src/webgpu/index.js +1 -1
  104. package/src/webgpu/textureFormats.js +121 -121
package/src/tri3.js CHANGED
@@ -1,8 +1,8 @@
1
- import { vec3 } from "./vec3.js";
2
- import { mat3 } from "./mat3.js";
3
- import { pln } from "./pln.js";
4
- import { lne3 } from "./lne3.js";
5
- import { pool } from "./pool.js";
1
+ import { vec3 } from "./vec3.js";
2
+ import { mat3 } from "./mat3.js";
3
+ import { pln } from "./pln.js";
4
+ import { lne3 } from "./lne3.js";
5
+ import { pool } from "./pool.js";
6
6
 
7
7
  /**
8
8
  * 3d Triangle
@@ -10,29 +10,29 @@ import { pool } from "./pool.js";
10
10
  * @typedef {Float32Array} tri3
11
11
  */
12
12
 
13
- export const tri3 = {};
14
-
15
- /**
16
- * Allocates a pooled tri3
17
- * @returns {Float32Array|tri3}
18
- */
19
- tri3.alloc = function()
20
- {
21
- return pool.allocF32(9);
22
- };
23
-
24
- /**
25
- * Unallocates a pooled tri3
26
- * @param {tri3|Float32Array} a
27
- */
28
- tri3.unalloc = function(a)
29
- {
30
- pool.freeType(a);
31
- };
32
-
33
- /**
34
- * Gets a subarray of a tri3's first vertex
35
- *
13
+ export const tri3 = {};
14
+
15
+ /**
16
+ * Allocates a pooled tri3
17
+ * @returns {Float32Array|tri3}
18
+ */
19
+ tri3.alloc = function()
20
+ {
21
+ return pool.allocF32(9);
22
+ };
23
+
24
+ /**
25
+ * Unallocates a pooled tri3
26
+ * @param {tri3|Float32Array} a
27
+ */
28
+ tri3.unalloc = function(a)
29
+ {
30
+ pool.freeType(a);
31
+ };
32
+
33
+ /**
34
+ * Gets a subarray of a tri3's first vertex
35
+ *
36
36
  * @param {tri3} a
37
37
  * @returns {vec3}
38
38
  */
@@ -72,8 +72,8 @@ tri3.area = function(a)
72
72
  by = a[1] - a[4],
73
73
  bz = a[2] - a[5];
74
74
  // Cross product
75
- let x = ay * bz - az * by,
76
- y = az * bx - ax * bz,
75
+ let x = ay * bz - az * by,
76
+ y = az * bx - ax * bz,
77
77
  z = ax * by - ay * bx;
78
78
  // Return half length
79
79
  return Math.sqrt(x * x + y * y + z * z) * 0.5;
@@ -176,19 +176,19 @@ tri3.fromArray = mat3.fromArray;
176
176
  * @param {vec3} point
177
177
  * @returns {tri3} out
178
178
  */
179
- tri3.getBaryCentricCoordinates = function(out, a, point)
180
- {
181
- let ax = a[6] - a[0],
182
- ay = a[7] - a[1],
183
- az = a[8] - a[2],
184
-
185
- bx = a[3] - a[0],
186
- by = a[4] - a[1],
187
- bz = a[5] - a[2],
188
-
189
- cx = point[0] - a[0],
190
- cy = point[1] - a[1],
191
- cz = point[2] - a[2];
179
+ tri3.getBaryCentricCoordinates = function(out, a, point)
180
+ {
181
+ let ax = a[6] - a[0],
182
+ ay = a[7] - a[1],
183
+ az = a[8] - a[2],
184
+
185
+ bx = a[3] - a[0],
186
+ by = a[4] - a[1],
187
+ bz = a[5] - a[2],
188
+
189
+ cx = point[0] - a[0],
190
+ cy = point[1] - a[1],
191
+ cz = point[2] - a[2];
192
192
 
193
193
  let dot00 = ax * ax + ay * ay + az * az,
194
194
  dot01 = ax * bx + ay * by + az * bz,
@@ -282,12 +282,12 @@ tri3.getClosestEdgeToPoint = (function()
282
282
  debug.edgeEnd = 2;
283
283
  break;
284
284
 
285
- default:
286
- debug.edgeStart = 2;
287
- debug.edgeEnd = 0;
288
- break;
289
- }
290
- }
285
+ default:
286
+ debug.edgeStart = 2;
287
+ debug.edgeEnd = 0;
288
+ break;
289
+ }
290
+ }
291
291
 
292
292
  return out;
293
293
  };
@@ -573,19 +573,19 @@ tri3.toArray = mat3.toArray;
573
573
  * @param {vec3} v2
574
574
  * @param {vec3} v3
575
575
  */
576
- tri3.toVertices = function(a, v1, v2, v3)
577
- {
578
- v1[0] = a[0];
579
- v1[1] = a[1];
580
- v1[2] = a[2];
581
- v2[0] = a[3];
582
- v2[1] = a[4];
583
- v2[2] = a[5];
584
- v3[0] = a[6];
585
- v3[1] = a[7];
586
- v3[2] = a[8];
587
- return a;
588
- };
576
+ tri3.toVertices = function(a, v1, v2, v3)
577
+ {
578
+ v1[0] = a[0];
579
+ v1[1] = a[1];
580
+ v1[2] = a[2];
581
+ v2[0] = a[3];
582
+ v2[1] = a[4];
583
+ v2[2] = a[5];
584
+ v3[0] = a[6];
585
+ v3[1] = a[7];
586
+ v3[2] = a[8];
587
+ return a;
588
+ };
589
589
 
590
590
  let vec3_0, vec3_1, vec3_2;
591
591
 
@@ -597,8 +597,8 @@ let vec3_0, vec3_1, vec3_2;
597
597
  * @param {mat4} m
598
598
  * @return {tri3}
599
599
  */
600
- tri3.transformMat4 = function(out, a, m)
601
- {
600
+ tri3.transformMat4 = function(out, a, m)
601
+ {
602
602
  if (!vec3_0)
603
603
  {
604
604
  vec3_0 = vec3.create();
@@ -613,38 +613,38 @@ tri3.transformMat4 = function(out, a, m)
613
613
  vec3.transformMat4(vec3_0, vec3_0, m);
614
614
  vec3.transformMat4(vec3_1, vec3_1, m);
615
615
  vec3.transformMat4(vec3_2, vec3_2, m);
616
-
617
- return tri3.fromVertices(out, vec3_0, vec3_1, vec3_2);
618
- };
619
-
620
- export const {
621
- alloc,
622
- unalloc,
623
- $v1,
624
- $v2,
625
- $v3,
626
- area,
627
- create,
628
- clone,
629
- contains,
630
- copy,
631
- fromVertices,
632
- fromArray,
633
- getBaryCentricCoordinates,
634
- getClosestEdgeToPoint,
635
- getClosestPointToPoint,
636
- getClosestVertexToPoint,
637
- getMidpoint,
638
- getNormalFromVertices,
639
- getNormal,
640
- getV1,
641
- getV2,
642
- getV3,
643
- setV1,
644
- setV2,
645
- setV3,
646
- toArray,
647
- toVertices,
648
- transformMat4
649
- } = tri3;
616
+
617
+ return tri3.fromVertices(out, vec3_0, vec3_1, vec3_2);
618
+ };
619
+
620
+ export const {
621
+ alloc,
622
+ unalloc,
623
+ $v1,
624
+ $v2,
625
+ $v3,
626
+ area,
627
+ create,
628
+ clone,
629
+ contains,
630
+ copy,
631
+ fromVertices,
632
+ fromArray,
633
+ getBaryCentricCoordinates,
634
+ getClosestEdgeToPoint,
635
+ getClosestPointToPoint,
636
+ getClosestVertexToPoint,
637
+ getMidpoint,
638
+ getNormalFromVertices,
639
+ getNormal,
640
+ getV1,
641
+ getV2,
642
+ getV3,
643
+ setV1,
644
+ setV2,
645
+ setV3,
646
+ toArray,
647
+ toVertices,
648
+ transformMat4
649
+ } = tri3;
650
650