@multiplekex/shallot 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (158) hide show
  1. package/package.json +8 -23
  2. package/src/standard/compute/index.ts +36 -0
  3. package/src/standard/render/camera.ts +1 -1
  4. package/dist/core/builder.d.ts +0 -25
  5. package/dist/core/builder.d.ts.map +0 -1
  6. package/dist/core/builder.js +0 -88
  7. package/dist/core/builder.js.map +0 -1
  8. package/dist/core/component.d.ts +0 -29
  9. package/dist/core/component.d.ts.map +0 -1
  10. package/dist/core/component.js +0 -36
  11. package/dist/core/component.js.map +0 -1
  12. package/dist/core/index.d.ts +0 -13
  13. package/dist/core/index.d.ts.map +0 -1
  14. package/dist/core/math.d.ts +0 -32
  15. package/dist/core/math.d.ts.map +0 -1
  16. package/dist/core/math.js +0 -39
  17. package/dist/core/math.js.map +0 -1
  18. package/dist/core/relation.d.ts +0 -16
  19. package/dist/core/relation.d.ts.map +0 -1
  20. package/dist/core/relation.js +0 -32
  21. package/dist/core/relation.js.map +0 -1
  22. package/dist/core/resource.d.ts +0 -9
  23. package/dist/core/resource.d.ts.map +0 -1
  24. package/dist/core/resource.js +0 -12
  25. package/dist/core/resource.js.map +0 -1
  26. package/dist/core/runtime.d.ts +0 -13
  27. package/dist/core/runtime.d.ts.map +0 -1
  28. package/dist/core/runtime.js +0 -118
  29. package/dist/core/runtime.js.map +0 -1
  30. package/dist/core/scheduler.d.ts +0 -47
  31. package/dist/core/scheduler.d.ts.map +0 -1
  32. package/dist/core/scheduler.js +0 -138
  33. package/dist/core/scheduler.js.map +0 -1
  34. package/dist/core/state.d.ts +0 -62
  35. package/dist/core/state.d.ts.map +0 -1
  36. package/dist/core/state.js +0 -185
  37. package/dist/core/state.js.map +0 -1
  38. package/dist/core/strings.d.ts +0 -3
  39. package/dist/core/strings.d.ts.map +0 -1
  40. package/dist/core/strings.js +0 -11
  41. package/dist/core/strings.js.map +0 -1
  42. package/dist/core/types.d.ts +0 -33
  43. package/dist/core/types.d.ts.map +0 -1
  44. package/dist/core/xml.d.ts +0 -42
  45. package/dist/core/xml.d.ts.map +0 -1
  46. package/dist/core/xml.js +0 -349
  47. package/dist/core/xml.js.map +0 -1
  48. package/dist/extras/arrows/index.d.ts +0 -33
  49. package/dist/extras/arrows/index.d.ts.map +0 -1
  50. package/dist/extras/arrows/index.js +0 -288
  51. package/dist/extras/arrows/index.js.map +0 -1
  52. package/dist/extras/index.d.ts +0 -5
  53. package/dist/extras/index.d.ts.map +0 -1
  54. package/dist/extras/index.js +0 -31
  55. package/dist/extras/index.js.map +0 -1
  56. package/dist/extras/lines/index.d.ts +0 -36
  57. package/dist/extras/lines/index.d.ts.map +0 -1
  58. package/dist/extras/lines/index.js +0 -288
  59. package/dist/extras/lines/index.js.map +0 -1
  60. package/dist/extras/orbit/index.d.ts +0 -20
  61. package/dist/extras/orbit/index.d.ts.map +0 -1
  62. package/dist/extras/orbit/index.js +0 -93
  63. package/dist/extras/orbit/index.js.map +0 -1
  64. package/dist/extras/text/index.d.ts +0 -64
  65. package/dist/extras/text/index.d.ts.map +0 -1
  66. package/dist/extras/text/index.js +0 -423
  67. package/dist/extras/text/index.js.map +0 -1
  68. package/dist/index.d.ts +0 -4
  69. package/dist/index.d.ts.map +0 -1
  70. package/dist/index.js +0 -187
  71. package/dist/index.js.map +0 -1
  72. package/dist/rust/transforms/pkg/shallot_transforms.js +0 -107
  73. package/dist/rust/transforms/pkg/shallot_transforms.js.map +0 -1
  74. package/dist/standard/compute/graph.d.ts +0 -37
  75. package/dist/standard/compute/graph.d.ts.map +0 -1
  76. package/dist/standard/compute/graph.js +0 -85
  77. package/dist/standard/compute/graph.js.map +0 -1
  78. package/dist/standard/compute/index.d.ts +0 -21
  79. package/dist/standard/compute/index.d.ts.map +0 -1
  80. package/dist/standard/compute/index.js +0 -81
  81. package/dist/standard/compute/index.js.map +0 -1
  82. package/dist/standard/defaults.d.ts +0 -3
  83. package/dist/standard/defaults.d.ts.map +0 -1
  84. package/dist/standard/defaults.js +0 -18
  85. package/dist/standard/defaults.js.map +0 -1
  86. package/dist/standard/index.d.ts +0 -8
  87. package/dist/standard/index.d.ts.map +0 -1
  88. package/dist/standard/input/index.d.ts +0 -5
  89. package/dist/standard/input/index.d.ts.map +0 -1
  90. package/dist/standard/input/index.js +0 -70
  91. package/dist/standard/input/index.js.map +0 -1
  92. package/dist/standard/loading/index.d.ts +0 -7
  93. package/dist/standard/loading/index.d.ts.map +0 -1
  94. package/dist/standard/loading/index.js +0 -91
  95. package/dist/standard/loading/index.js.map +0 -1
  96. package/dist/standard/render/camera.d.ts +0 -36
  97. package/dist/standard/render/camera.d.ts.map +0 -1
  98. package/dist/standard/render/camera.js +0 -71
  99. package/dist/standard/render/camera.js.map +0 -1
  100. package/dist/standard/render/forward.d.ts +0 -30
  101. package/dist/standard/render/forward.d.ts.map +0 -1
  102. package/dist/standard/render/forward.js +0 -158
  103. package/dist/standard/render/forward.js.map +0 -1
  104. package/dist/standard/render/index.d.ts +0 -22
  105. package/dist/standard/render/index.d.ts.map +0 -1
  106. package/dist/standard/render/index.js +0 -153
  107. package/dist/standard/render/index.js.map +0 -1
  108. package/dist/standard/render/light.d.ts +0 -25
  109. package/dist/standard/render/light.d.ts.map +0 -1
  110. package/dist/standard/render/light.js +0 -48
  111. package/dist/standard/render/light.js.map +0 -1
  112. package/dist/standard/render/mesh/box.d.ts +0 -3
  113. package/dist/standard/render/mesh/box.d.ts.map +0 -1
  114. package/dist/standard/render/mesh/box.js +0 -190
  115. package/dist/standard/render/mesh/box.js.map +0 -1
  116. package/dist/standard/render/mesh/index.d.ts +0 -52
  117. package/dist/standard/render/mesh/index.d.ts.map +0 -1
  118. package/dist/standard/render/mesh/index.js +0 -158
  119. package/dist/standard/render/mesh/index.js.map +0 -1
  120. package/dist/standard/render/mesh/plane.d.ts +0 -3
  121. package/dist/standard/render/mesh/plane.d.ts.map +0 -1
  122. package/dist/standard/render/mesh/plane.js +0 -33
  123. package/dist/standard/render/mesh/plane.js.map +0 -1
  124. package/dist/standard/render/mesh/sphere.d.ts +0 -3
  125. package/dist/standard/render/mesh/sphere.d.ts.map +0 -1
  126. package/dist/standard/render/mesh/sphere.js +0 -25
  127. package/dist/standard/render/mesh/sphere.js.map +0 -1
  128. package/dist/standard/render/postprocess.d.ts +0 -11
  129. package/dist/standard/render/postprocess.d.ts.map +0 -1
  130. package/dist/standard/render/postprocess.js +0 -190
  131. package/dist/standard/render/postprocess.js.map +0 -1
  132. package/dist/standard/render/scene.d.ts +0 -8
  133. package/dist/standard/render/scene.d.ts.map +0 -1
  134. package/dist/standard/render/scene.js +0 -67
  135. package/dist/standard/render/scene.js.map +0 -1
  136. package/dist/standard/transforms/index.d.ts +0 -27
  137. package/dist/standard/transforms/index.d.ts.map +0 -1
  138. package/dist/standard/transforms/index.js +0 -122
  139. package/dist/standard/transforms/index.js.map +0 -1
  140. package/dist/standard/transforms/wasm.d.ts +0 -17
  141. package/dist/standard/transforms/wasm.d.ts.map +0 -1
  142. package/dist/standard/transforms/wasm.js +0 -31
  143. package/dist/standard/transforms/wasm.js.map +0 -1
  144. package/dist/standard/tween/easing.d.ts +0 -5
  145. package/dist/standard/tween/easing.d.ts.map +0 -1
  146. package/dist/standard/tween/easing.js +0 -80
  147. package/dist/standard/tween/easing.js.map +0 -1
  148. package/dist/standard/tween/index.d.ts +0 -4
  149. package/dist/standard/tween/index.d.ts.map +0 -1
  150. package/dist/standard/tween/sequence.d.ts +0 -20
  151. package/dist/standard/tween/sequence.d.ts.map +0 -1
  152. package/dist/standard/tween/sequence.js +0 -95
  153. package/dist/standard/tween/sequence.js.map +0 -1
  154. package/dist/standard/tween/tween.d.ts +0 -28
  155. package/dist/standard/tween/tween.d.ts.map +0 -1
  156. package/dist/standard/tween/tween.js +0 -136
  157. package/dist/standard/tween/tween.js.map +0 -1
  158. package/src/vite-env.d.ts +0 -6
@@ -1,190 +0,0 @@
1
- function t() {
2
- const e = new Float32Array([
3
- -0.5,
4
- -0.5,
5
- 0.5,
6
- 0,
7
- 0,
8
- 1,
9
- 0.5,
10
- -0.5,
11
- 0.5,
12
- 0,
13
- 0,
14
- 1,
15
- 0.5,
16
- 0.5,
17
- 0.5,
18
- 0,
19
- 0,
20
- 1,
21
- -0.5,
22
- 0.5,
23
- 0.5,
24
- 0,
25
- 0,
26
- 1,
27
- 0.5,
28
- -0.5,
29
- -0.5,
30
- 0,
31
- 0,
32
- -1,
33
- -0.5,
34
- -0.5,
35
- -0.5,
36
- 0,
37
- 0,
38
- -1,
39
- -0.5,
40
- 0.5,
41
- -0.5,
42
- 0,
43
- 0,
44
- -1,
45
- 0.5,
46
- 0.5,
47
- -0.5,
48
- 0,
49
- 0,
50
- -1,
51
- -0.5,
52
- 0.5,
53
- 0.5,
54
- 0,
55
- 1,
56
- 0,
57
- 0.5,
58
- 0.5,
59
- 0.5,
60
- 0,
61
- 1,
62
- 0,
63
- 0.5,
64
- 0.5,
65
- -0.5,
66
- 0,
67
- 1,
68
- 0,
69
- -0.5,
70
- 0.5,
71
- -0.5,
72
- 0,
73
- 1,
74
- 0,
75
- -0.5,
76
- -0.5,
77
- -0.5,
78
- 0,
79
- -1,
80
- 0,
81
- 0.5,
82
- -0.5,
83
- -0.5,
84
- 0,
85
- -1,
86
- 0,
87
- 0.5,
88
- -0.5,
89
- 0.5,
90
- 0,
91
- -1,
92
- 0,
93
- -0.5,
94
- -0.5,
95
- 0.5,
96
- 0,
97
- -1,
98
- 0,
99
- 0.5,
100
- -0.5,
101
- 0.5,
102
- 1,
103
- 0,
104
- 0,
105
- 0.5,
106
- -0.5,
107
- -0.5,
108
- 1,
109
- 0,
110
- 0,
111
- 0.5,
112
- 0.5,
113
- -0.5,
114
- 1,
115
- 0,
116
- 0,
117
- 0.5,
118
- 0.5,
119
- 0.5,
120
- 1,
121
- 0,
122
- 0,
123
- -0.5,
124
- -0.5,
125
- -0.5,
126
- -1,
127
- 0,
128
- 0,
129
- -0.5,
130
- -0.5,
131
- 0.5,
132
- -1,
133
- 0,
134
- 0,
135
- -0.5,
136
- 0.5,
137
- 0.5,
138
- -1,
139
- 0,
140
- 0,
141
- -0.5,
142
- 0.5,
143
- -0.5,
144
- -1,
145
- 0,
146
- 0
147
- ]), n = new Uint16Array([
148
- 0,
149
- 1,
150
- 2,
151
- 0,
152
- 2,
153
- 3,
154
- 4,
155
- 5,
156
- 6,
157
- 4,
158
- 6,
159
- 7,
160
- 8,
161
- 9,
162
- 10,
163
- 8,
164
- 10,
165
- 11,
166
- 12,
167
- 13,
168
- 14,
169
- 12,
170
- 14,
171
- 15,
172
- 16,
173
- 17,
174
- 18,
175
- 16,
176
- 18,
177
- 19,
178
- 20,
179
- 21,
180
- 22,
181
- 20,
182
- 22,
183
- 23
184
- ]);
185
- return { vertices: e, indices: n, vertexCount: 24, indexCount: 36 };
186
- }
187
- export {
188
- t as createBox
189
- };
190
- //# sourceMappingURL=box.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"box.js","sources":["../../../../src/standard/render/mesh/box.ts"],"sourcesContent":["import type { MeshData } from \"./index\";\n\nexport function createBox(): MeshData {\n const vertices = new Float32Array([\n -0.5, -0.5, 0.5, 0, 0, 1, 0.5, -0.5, 0.5, 0, 0, 1, 0.5, 0.5, 0.5, 0, 0, 1, -0.5, 0.5, 0.5,\n 0, 0, 1, 0.5, -0.5, -0.5, 0, 0, -1, -0.5, -0.5, -0.5, 0, 0, -1, -0.5, 0.5, -0.5, 0, 0, -1,\n 0.5, 0.5, -0.5, 0, 0, -1, -0.5, 0.5, 0.5, 0, 1, 0, 0.5, 0.5, 0.5, 0, 1, 0, 0.5, 0.5, -0.5,\n 0, 1, 0, -0.5, 0.5, -0.5, 0, 1, 0, -0.5, -0.5, -0.5, 0, -1, 0, 0.5, -0.5, -0.5, 0, -1, 0,\n 0.5, -0.5, 0.5, 0, -1, 0, -0.5, -0.5, 0.5, 0, -1, 0, 0.5, -0.5, 0.5, 1, 0, 0, 0.5, -0.5,\n -0.5, 1, 0, 0, 0.5, 0.5, -0.5, 1, 0, 0, 0.5, 0.5, 0.5, 1, 0, 0, -0.5, -0.5, -0.5, -1, 0, 0,\n -0.5, -0.5, 0.5, -1, 0, 0, -0.5, 0.5, 0.5, -1, 0, 0, -0.5, 0.5, -0.5, -1, 0, 0,\n ]);\n\n const indices = new Uint16Array([\n 0, 1, 2, 0, 2, 3, 4, 5, 6, 4, 6, 7, 8, 9, 10, 8, 10, 11, 12, 13, 14, 12, 14, 15, 16, 17, 18,\n 16, 18, 19, 20, 21, 22, 20, 22, 23,\n ]);\n\n return { vertices, indices, vertexCount: 24, indexCount: 36 };\n}\n"],"names":["createBox","vertices","indices"],"mappings":"AAEO,SAASA,IAAsB;AAClC,QAAMC,IAAW,IAAI,aAAa;AAAA,IAC9B;AAAA,IAAM;AAAA,IAAM;AAAA,IAAK;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAK;AAAA,IAAM;AAAA,IAAK;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAK;AAAA,IAAK;AAAA,IAAK;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAM;AAAA,IAAK;AAAA,IACtF;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAK;AAAA,IAAM;AAAA,IAAM;AAAA,IAAG;AAAA,IAAG;AAAA,IAAI;AAAA,IAAM;AAAA,IAAM;AAAA,IAAM;AAAA,IAAG;AAAA,IAAG;AAAA,IAAI;AAAA,IAAM;AAAA,IAAK;AAAA,IAAM;AAAA,IAAG;AAAA,IAAG;AAAA,IACvF;AAAA,IAAK;AAAA,IAAK;AAAA,IAAM;AAAA,IAAG;AAAA,IAAG;AAAA,IAAI;AAAA,IAAM;AAAA,IAAK;AAAA,IAAK;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAK;AAAA,IAAK;AAAA,IAAK;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAK;AAAA,IAAK;AAAA,IACrF;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAM;AAAA,IAAK;AAAA,IAAM;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAM;AAAA,IAAM;AAAA,IAAM;AAAA,IAAG;AAAA,IAAI;AAAA,IAAG;AAAA,IAAK;AAAA,IAAM;AAAA,IAAM;AAAA,IAAG;AAAA,IAAI;AAAA,IACvF;AAAA,IAAK;AAAA,IAAM;AAAA,IAAK;AAAA,IAAG;AAAA,IAAI;AAAA,IAAG;AAAA,IAAM;AAAA,IAAM;AAAA,IAAK;AAAA,IAAG;AAAA,IAAI;AAAA,IAAG;AAAA,IAAK;AAAA,IAAM;AAAA,IAAK;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAK;AAAA,IACnF;AAAA,IAAM;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAK;AAAA,IAAK;AAAA,IAAM;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAK;AAAA,IAAK;AAAA,IAAK;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAM;AAAA,IAAM;AAAA,IAAM;AAAA,IAAI;AAAA,IAAG;AAAA,IACzF;AAAA,IAAM;AAAA,IAAM;AAAA,IAAK;AAAA,IAAI;AAAA,IAAG;AAAA,IAAG;AAAA,IAAM;AAAA,IAAK;AAAA,IAAK;AAAA,IAAI;AAAA,IAAG;AAAA,IAAG;AAAA,IAAM;AAAA,IAAK;AAAA,IAAM;AAAA,IAAI;AAAA,IAAG;AAAA,EAAA,CAChF,GAEKC,IAAU,IAAI,YAAY;AAAA,IAC5B;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAI;AAAA,IAAG;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IACzF;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,IAAI;AAAA,EAAA,CACnC;AAED,SAAO,EAAE,UAAAD,GAAU,SAAAC,GAAS,aAAa,IAAI,YAAY,GAAA;AAC7D;"}
@@ -1,52 +0,0 @@
1
- import { FieldAccessor } from '../../../core/component';
2
- export interface MeshData {
3
- vertices: Float32Array<ArrayBuffer>;
4
- indices: Uint16Array<ArrayBuffer>;
5
- vertexCount: number;
6
- indexCount: number;
7
- }
8
- export declare const MeshShape: {
9
- readonly Box: 0;
10
- readonly Sphere: 1;
11
- readonly Plane: 2;
12
- };
13
- export declare function createGeometry(shape: number): MeshData;
14
- export declare const MeshColors: {
15
- data: Float32Array<ArrayBuffer>;
16
- };
17
- export declare const MeshSizes: {
18
- data: Float32Array<ArrayBuffer>;
19
- };
20
- interface ColorProxy extends Array<number>, FieldAccessor {
21
- }
22
- interface SizeProxy extends Array<number>, FieldAccessor {
23
- }
24
- export declare const Mesh: {
25
- shape: number[];
26
- color: ColorProxy;
27
- sizeX: SizeProxy;
28
- sizeY: SizeProxy;
29
- sizeZ: SizeProxy;
30
- };
31
- export interface MeshBuffers {
32
- vertex: GPUBuffer;
33
- index: GPUBuffer;
34
- indexCount: number;
35
- }
36
- export declare function createMeshBuffers(device: GPUDevice, mesh: MeshData): MeshBuffers;
37
- export declare function collectByShape(entities: Iterable<number>): Map<number, number[]>;
38
- export interface ShapeBatch {
39
- index: number;
40
- buffers: MeshBuffers;
41
- entityIds: GPUBuffer;
42
- count: number;
43
- }
44
- export interface BatchState {
45
- batches: Map<number, ShapeBatch>;
46
- buffers: Map<number, MeshBuffers>;
47
- }
48
- export declare function updateBatches(device: GPUDevice, byShape: Map<number, number[]>, state: BatchState, indirect: GPUBuffer): void;
49
- export { createBox } from './box';
50
- export { createSphere } from './sphere';
51
- export { createPlane } from './plane';
52
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/standard/render/mesh/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAa,KAAK,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAOxE,MAAM,WAAW,QAAQ;IACrB,QAAQ,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC;IACpC,OAAO,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACtB;AAED,eAAO,MAAM,SAAS;;;;CAIZ,CAAC;AAEX,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,CAStD;AAED,eAAO,MAAM,UAAU;;CAEtB,CAAC;AAEF,eAAO,MAAM,SAAS;;CAErB,CAAC;AAEF,UAAU,UAAW,SAAQ,KAAK,CAAC,MAAM,CAAC,EAAE,aAAa;CAAG;AAsC5D,UAAU,SAAU,SAAQ,KAAK,CAAC,MAAM,CAAC,EAAE,aAAa;CAAG;AA8B3D,eAAO,MAAM,IAAI,EAAE;IACf,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,EAAE,UAAU,CAAC;IAClB,KAAK,EAAE,SAAS,CAAC;IACjB,KAAK,EAAE,SAAS,CAAC;IACjB,KAAK,EAAE,SAAS,CAAC;CAOpB,CAAC;AAkBF,MAAM,WAAW,WAAW;IACxB,MAAM,EAAE,SAAS,CAAC;IAClB,KAAK,EAAE,SAAS,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACtB;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,GAAG,WAAW,CAgBhF;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAYhF;AAED,MAAM,WAAW,UAAU;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,WAAW,CAAC;IACrB,SAAS,EAAE,SAAS,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,UAAU;IACvB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACjC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;CACrC;AAED,wBAAgB,aAAa,CACzB,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAC9B,KAAK,EAAE,UAAU,EACjB,QAAQ,EAAE,SAAS,GACpB,IAAI,CA6BN;AAED,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC"}
@@ -1,158 +0,0 @@
1
- import "bitecs";
2
- import { MAX_ENTITIES as l } from "../../../core/state.js";
3
- import "../../../core/builder.js";
4
- import { setTraits as d } from "../../../core/component.js";
5
- import "../../../core/relation.js";
6
- import "../../../core/math.js";
7
- import "fast-xml-parser";
8
- import { createEntityIdBuffer as h } from "../../compute/index.js";
9
- import { writeIndirect as b } from "../forward.js";
10
- import { createBox as m } from "./box.js";
11
- import { createSphere as g } from "./sphere.js";
12
- import { createPlane as x } from "./plane.js";
13
- const c = {
14
- Box: 0,
15
- Sphere: 1,
16
- Plane: 2
17
- };
18
- function p(t) {
19
- switch (t) {
20
- case c.Sphere:
21
- return g();
22
- case c.Plane:
23
- return x();
24
- default:
25
- return m();
26
- }
27
- }
28
- const N = {
29
- data: new Float32Array(l * 4)
30
- }, z = {
31
- data: new Float32Array(l * 4)
32
- };
33
- function B() {
34
- const t = N.data;
35
- function n(i) {
36
- const e = i * 4, r = Math.round(t[e] * 255), o = Math.round(t[e + 1] * 255), u = Math.round(t[e + 2] * 255);
37
- return r << 16 | o << 8 | u;
38
- }
39
- function s(i, e) {
40
- const r = i * 4;
41
- t[r] = (e >> 16 & 255) / 255, t[r + 1] = (e >> 8 & 255) / 255, t[r + 2] = (e & 255) / 255, t[r + 3] = 1;
42
- }
43
- return new Proxy([], {
44
- get(i, e) {
45
- if (e === "get") return n;
46
- if (e === "set") return s;
47
- const r = Number(e);
48
- if (!Number.isNaN(r))
49
- return n(r);
50
- },
51
- set(i, e, r) {
52
- const o = Number(e);
53
- return Number.isNaN(o) ? !1 : (s(o, r), !0);
54
- }
55
- });
56
- }
57
- function a(t) {
58
- const n = z.data;
59
- function s(e) {
60
- return n[e * 4 + t];
61
- }
62
- function i(e, r) {
63
- n[e * 4 + t] = r;
64
- }
65
- return new Proxy([], {
66
- get(e, r) {
67
- if (r === "get") return s;
68
- if (r === "set") return i;
69
- const o = Number(r);
70
- if (!Number.isNaN(o))
71
- return s(o);
72
- },
73
- set(e, r, o) {
74
- const u = Number(r);
75
- return Number.isNaN(u) ? !1 : (i(u, o), !0);
76
- }
77
- });
78
- }
79
- const f = {
80
- shape: [],
81
- color: B(),
82
- sizeX: a(0),
83
- sizeY: a(1),
84
- sizeZ: a(2)
85
- };
86
- d(f, {
87
- defaults: () => ({
88
- shape: c.Box,
89
- color: 16777215,
90
- sizeX: 1,
91
- sizeY: 1,
92
- sizeZ: 1
93
- }),
94
- accessors: {
95
- color: f.color,
96
- sizeX: f.sizeX,
97
- sizeY: f.sizeY,
98
- sizeZ: f.sizeZ
99
- }
100
- });
101
- function y(t, n) {
102
- const s = t.createBuffer({
103
- label: "vertex",
104
- size: n.vertices.byteLength,
105
- usage: GPUBufferUsage.VERTEX | GPUBufferUsage.COPY_DST
106
- });
107
- t.queue.writeBuffer(s, 0, n.vertices);
108
- const i = t.createBuffer({
109
- label: "index",
110
- size: n.indices.byteLength,
111
- usage: GPUBufferUsage.INDEX | GPUBufferUsage.COPY_DST
112
- });
113
- return t.queue.writeBuffer(i, 0, n.indices), { vertex: s, index: i, indexCount: n.indexCount };
114
- }
115
- function Y(t) {
116
- const n = /* @__PURE__ */ new Map();
117
- for (const s of t) {
118
- const i = f.shape[s];
119
- let e = n.get(i);
120
- e || (e = [], n.set(i, e)), e.push(s);
121
- }
122
- return n;
123
- }
124
- function G(t, n, s, i) {
125
- for (const [e, r] of n) {
126
- let o = s.batches.get(e);
127
- if (!o) {
128
- let u = s.buffers.get(e);
129
- u || (u = y(t, p(e)), s.buffers.set(e, u)), o = {
130
- index: s.batches.size,
131
- buffers: u,
132
- entityIds: h(t, l),
133
- count: 0
134
- }, s.batches.set(e, o);
135
- }
136
- t.queue.writeBuffer(o.entityIds, 0, new Uint32Array(r)), o.count = r.length, b(t, i, o.index, {
137
- indexCount: o.buffers.indexCount,
138
- instanceCount: r.length,
139
- firstIndex: 0,
140
- baseVertex: 0,
141
- firstInstance: 0
142
- });
143
- }
144
- }
145
- export {
146
- f as Mesh,
147
- N as MeshColors,
148
- c as MeshShape,
149
- z as MeshSizes,
150
- Y as collectByShape,
151
- m as createBox,
152
- p as createGeometry,
153
- y as createMeshBuffers,
154
- x as createPlane,
155
- g as createSphere,
156
- G as updateBatches
157
- };
158
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/standard/render/mesh/index.ts"],"sourcesContent":["import { MAX_ENTITIES } from \"../../../core\";\nimport { setTraits, type FieldAccessor } from \"../../../core/component\";\nimport { createEntityIdBuffer } from \"../../compute\";\nimport { writeIndirect } from \"../forward\";\nimport { createBox } from \"./box\";\nimport { createSphere } from \"./sphere\";\nimport { createPlane } from \"./plane\";\n\nexport interface MeshData {\n vertices: Float32Array<ArrayBuffer>;\n indices: Uint16Array<ArrayBuffer>;\n vertexCount: number;\n indexCount: number;\n}\n\nexport const MeshShape = {\n Box: 0,\n Sphere: 1,\n Plane: 2,\n} as const;\n\nexport function createGeometry(shape: number): MeshData {\n switch (shape) {\n case MeshShape.Sphere:\n return createSphere();\n case MeshShape.Plane:\n return createPlane();\n default:\n return createBox();\n }\n}\n\nexport const MeshColors = {\n data: new Float32Array(MAX_ENTITIES * 4),\n};\n\nexport const MeshSizes = {\n data: new Float32Array(MAX_ENTITIES * 4),\n};\n\ninterface ColorProxy extends Array<number>, FieldAccessor {}\n\nfunction colorProxy(): ColorProxy {\n const data = MeshColors.data;\n\n function getValue(eid: number): number {\n const offset = eid * 4;\n const r = Math.round(data[offset] * 255);\n const g = Math.round(data[offset + 1] * 255);\n const b = Math.round(data[offset + 2] * 255);\n return (r << 16) | (g << 8) | b;\n }\n\n function setValue(eid: number, value: number): void {\n const offset = eid * 4;\n data[offset] = ((value >> 16) & 0xff) / 255;\n data[offset + 1] = ((value >> 8) & 0xff) / 255;\n data[offset + 2] = (value & 0xff) / 255;\n data[offset + 3] = 1;\n }\n\n return new Proxy([] as unknown as ColorProxy, {\n get(_, prop) {\n if (prop === \"get\") return getValue;\n if (prop === \"set\") return setValue;\n const eid = Number(prop);\n if (Number.isNaN(eid)) return undefined;\n return getValue(eid);\n },\n set(_, prop, value) {\n const eid = Number(prop);\n if (Number.isNaN(eid)) return false;\n setValue(eid, value);\n return true;\n },\n });\n}\n\ninterface SizeProxy extends Array<number>, FieldAccessor {}\n\nfunction sizeProxy(component: number): SizeProxy {\n const data = MeshSizes.data;\n\n function getValue(eid: number): number {\n return data[eid * 4 + component];\n }\n\n function setValue(eid: number, value: number): void {\n data[eid * 4 + component] = value;\n }\n\n return new Proxy([] as unknown as SizeProxy, {\n get(_, prop) {\n if (prop === \"get\") return getValue;\n if (prop === \"set\") return setValue;\n const eid = Number(prop);\n if (Number.isNaN(eid)) return undefined;\n return getValue(eid);\n },\n set(_, prop, value) {\n const eid = Number(prop);\n if (Number.isNaN(eid)) return false;\n setValue(eid, value);\n return true;\n },\n });\n}\n\nexport const Mesh: {\n shape: number[];\n color: ColorProxy;\n sizeX: SizeProxy;\n sizeY: SizeProxy;\n sizeZ: SizeProxy;\n} = {\n shape: [],\n color: colorProxy(),\n sizeX: sizeProxy(0),\n sizeY: sizeProxy(1),\n sizeZ: sizeProxy(2),\n};\n\nsetTraits(Mesh, {\n defaults: () => ({\n shape: MeshShape.Box,\n color: 0xffffff,\n sizeX: 1,\n sizeY: 1,\n sizeZ: 1,\n }),\n accessors: {\n color: Mesh.color,\n sizeX: Mesh.sizeX,\n sizeY: Mesh.sizeY,\n sizeZ: Mesh.sizeZ,\n },\n});\n\nexport interface MeshBuffers {\n vertex: GPUBuffer;\n index: GPUBuffer;\n indexCount: number;\n}\n\nexport function createMeshBuffers(device: GPUDevice, mesh: MeshData): MeshBuffers {\n const vertex = device.createBuffer({\n label: \"vertex\",\n size: mesh.vertices.byteLength,\n usage: GPUBufferUsage.VERTEX | GPUBufferUsage.COPY_DST,\n });\n device.queue.writeBuffer(vertex, 0, mesh.vertices);\n\n const index = device.createBuffer({\n label: \"index\",\n size: mesh.indices.byteLength,\n usage: GPUBufferUsage.INDEX | GPUBufferUsage.COPY_DST,\n });\n device.queue.writeBuffer(index, 0, mesh.indices);\n\n return { vertex, index, indexCount: mesh.indexCount };\n}\n\nexport function collectByShape(entities: Iterable<number>): Map<number, number[]> {\n const byShape = new Map<number, number[]>();\n for (const eid of entities) {\n const shape = Mesh.shape[eid];\n let list = byShape.get(shape);\n if (!list) {\n list = [];\n byShape.set(shape, list);\n }\n list.push(eid);\n }\n return byShape;\n}\n\nexport interface ShapeBatch {\n index: number;\n buffers: MeshBuffers;\n entityIds: GPUBuffer;\n count: number;\n}\n\nexport interface BatchState {\n batches: Map<number, ShapeBatch>;\n buffers: Map<number, MeshBuffers>;\n}\n\nexport function updateBatches(\n device: GPUDevice,\n byShape: Map<number, number[]>,\n state: BatchState,\n indirect: GPUBuffer\n): void {\n for (const [shape, entities] of byShape) {\n let batch = state.batches.get(shape);\n if (!batch) {\n let buffers = state.buffers.get(shape);\n if (!buffers) {\n buffers = createMeshBuffers(device, createGeometry(shape));\n state.buffers.set(shape, buffers);\n }\n batch = {\n index: state.batches.size,\n buffers,\n entityIds: createEntityIdBuffer(device, MAX_ENTITIES),\n count: 0,\n };\n state.batches.set(shape, batch);\n }\n\n device.queue.writeBuffer(batch.entityIds, 0, new Uint32Array(entities));\n batch.count = entities.length;\n\n writeIndirect(device, indirect, batch.index, {\n indexCount: batch.buffers.indexCount,\n instanceCount: entities.length,\n firstIndex: 0,\n baseVertex: 0,\n firstInstance: 0,\n });\n }\n}\n\nexport { createBox } from \"./box\";\nexport { createSphere } from \"./sphere\";\nexport { createPlane } from \"./plane\";\n"],"names":["MeshShape","createGeometry","shape","createSphere","createPlane","createBox","MeshColors","MAX_ENTITIES","MeshSizes","colorProxy","data","getValue","eid","offset","g","b","setValue","value","_","prop","sizeProxy","component","Mesh","setTraits","createMeshBuffers","device","mesh","vertex","index","collectByShape","entities","byShape","list","updateBatches","state","indirect","batch","buffers","createEntityIdBuffer","writeIndirect"],"mappings":";;;;;;;;;;;;AAeO,MAAMA,IAAY;AAAA,EACrB,KAAK;AAAA,EACL,QAAQ;AAAA,EACR,OAAO;AACX;AAEO,SAASC,EAAeC,GAAyB;AACpD,UAAQA,GAAA;AAAA,IACJ,KAAKF,EAAU;AACX,aAAOG,EAAA;AAAA,IACX,KAAKH,EAAU;AACX,aAAOI,EAAA;AAAA,IACX;AACI,aAAOC,EAAA;AAAA,EAAU;AAE7B;AAEO,MAAMC,IAAa;AAAA,EACtB,MAAM,IAAI,aAAaC,IAAe,CAAC;AAC3C,GAEaC,IAAY;AAAA,EACrB,MAAM,IAAI,aAAaD,IAAe,CAAC;AAC3C;AAIA,SAASE,IAAyB;AAC9B,QAAMC,IAAOJ,EAAW;AAExB,WAASK,EAASC,GAAqB;AACnC,UAAMC,IAASD,IAAM,GACf,IAAI,KAAK,MAAMF,EAAKG,CAAM,IAAI,GAAG,GACjCC,IAAI,KAAK,MAAMJ,EAAKG,IAAS,CAAC,IAAI,GAAG,GACrCE,IAAI,KAAK,MAAML,EAAKG,IAAS,CAAC,IAAI,GAAG;AAC3C,WAAQ,KAAK,KAAOC,KAAK,IAAKC;AAAA,EAClC;AAEA,WAASC,EAASJ,GAAaK,GAAqB;AAChD,UAAMJ,IAASD,IAAM;AACrB,IAAAF,EAAKG,CAAM,KAAMI,KAAS,KAAM,OAAQ,KACxCP,EAAKG,IAAS,CAAC,KAAMI,KAAS,IAAK,OAAQ,KAC3CP,EAAKG,IAAS,CAAC,KAAKI,IAAQ,OAAQ,KACpCP,EAAKG,IAAS,CAAC,IAAI;AAAA,EACvB;AAEA,SAAO,IAAI,MAAM,IAA6B;AAAA,IAC1C,IAAIK,GAAGC,GAAM;AACT,UAAIA,MAAS,MAAO,QAAOR;AAC3B,UAAIQ,MAAS,MAAO,QAAOH;AAC3B,YAAMJ,IAAM,OAAOO,CAAI;AACvB,UAAI,QAAO,MAAMP,CAAG;AACpB,eAAOD,EAASC,CAAG;AAAA,IACvB;AAAA,IACA,IAAIM,GAAGC,GAAMF,GAAO;AAChB,YAAML,IAAM,OAAOO,CAAI;AACvB,aAAI,OAAO,MAAMP,CAAG,IAAU,MAC9BI,EAASJ,GAAKK,CAAK,GACZ;AAAA,IACX;AAAA,EAAA,CACH;AACL;AAIA,SAASG,EAAUC,GAA8B;AAC7C,QAAMX,IAAOF,EAAU;AAEvB,WAASG,EAASC,GAAqB;AACnC,WAAOF,EAAKE,IAAM,IAAIS,CAAS;AAAA,EACnC;AAEA,WAASL,EAASJ,GAAaK,GAAqB;AAChD,IAAAP,EAAKE,IAAM,IAAIS,CAAS,IAAIJ;AAAA,EAChC;AAEA,SAAO,IAAI,MAAM,IAA4B;AAAA,IACzC,IAAIC,GAAGC,GAAM;AACT,UAAIA,MAAS,MAAO,QAAOR;AAC3B,UAAIQ,MAAS,MAAO,QAAOH;AAC3B,YAAMJ,IAAM,OAAOO,CAAI;AACvB,UAAI,QAAO,MAAMP,CAAG;AACpB,eAAOD,EAASC,CAAG;AAAA,IACvB;AAAA,IACA,IAAIM,GAAGC,GAAMF,GAAO;AAChB,YAAML,IAAM,OAAOO,CAAI;AACvB,aAAI,OAAO,MAAMP,CAAG,IAAU,MAC9BI,EAASJ,GAAKK,CAAK,GACZ;AAAA,IACX;AAAA,EAAA,CACH;AACL;AAEO,MAAMK,IAMT;AAAA,EACA,OAAO,CAAA;AAAA,EACP,OAAOb,EAAA;AAAA,EACP,OAAOW,EAAU,CAAC;AAAA,EAClB,OAAOA,EAAU,CAAC;AAAA,EAClB,OAAOA,EAAU,CAAC;AACtB;AAEAG,EAAUD,GAAM;AAAA,EACZ,UAAU,OAAO;AAAA,IACb,OAAOtB,EAAU;AAAA,IACjB,OAAO;AAAA,IACP,OAAO;AAAA,IACP,OAAO;AAAA,IACP,OAAO;AAAA,EAAA;AAAA,EAEX,WAAW;AAAA,IACP,OAAOsB,EAAK;AAAA,IACZ,OAAOA,EAAK;AAAA,IACZ,OAAOA,EAAK;AAAA,IACZ,OAAOA,EAAK;AAAA,EAAA;AAEpB,CAAC;AAQM,SAASE,EAAkBC,GAAmBC,GAA6B;AAC9E,QAAMC,IAASF,EAAO,aAAa;AAAA,IAC/B,OAAO;AAAA,IACP,MAAMC,EAAK,SAAS;AAAA,IACpB,OAAO,eAAe,SAAS,eAAe;AAAA,EAAA,CACjD;AACD,EAAAD,EAAO,MAAM,YAAYE,GAAQ,GAAGD,EAAK,QAAQ;AAEjD,QAAME,IAAQH,EAAO,aAAa;AAAA,IAC9B,OAAO;AAAA,IACP,MAAMC,EAAK,QAAQ;AAAA,IACnB,OAAO,eAAe,QAAQ,eAAe;AAAA,EAAA,CAChD;AACD,SAAAD,EAAO,MAAM,YAAYG,GAAO,GAAGF,EAAK,OAAO,GAExC,EAAE,QAAAC,GAAQ,OAAAC,GAAO,YAAYF,EAAK,WAAA;AAC7C;AAEO,SAASG,EAAeC,GAAmD;AAC9E,QAAMC,wBAAc,IAAA;AACpB,aAAWnB,KAAOkB,GAAU;AACxB,UAAM5B,IAAQoB,EAAK,MAAMV,CAAG;AAC5B,QAAIoB,IAAOD,EAAQ,IAAI7B,CAAK;AAC5B,IAAK8B,MACDA,IAAO,CAAA,GACPD,EAAQ,IAAI7B,GAAO8B,CAAI,IAE3BA,EAAK,KAAKpB,CAAG;AAAA,EACjB;AACA,SAAOmB;AACX;AAcO,SAASE,EACZR,GACAM,GACAG,GACAC,GACI;AACJ,aAAW,CAACjC,GAAO4B,CAAQ,KAAKC,GAAS;AACrC,QAAIK,IAAQF,EAAM,QAAQ,IAAIhC,CAAK;AACnC,QAAI,CAACkC,GAAO;AACR,UAAIC,IAAUH,EAAM,QAAQ,IAAIhC,CAAK;AACrC,MAAKmC,MACDA,IAAUb,EAAkBC,GAAQxB,EAAeC,CAAK,CAAC,GACzDgC,EAAM,QAAQ,IAAIhC,GAAOmC,CAAO,IAEpCD,IAAQ;AAAA,QACJ,OAAOF,EAAM,QAAQ;AAAA,QACrB,SAAAG;AAAA,QACA,WAAWC,EAAqBb,GAAQlB,CAAY;AAAA,QACpD,OAAO;AAAA,MAAA,GAEX2B,EAAM,QAAQ,IAAIhC,GAAOkC,CAAK;AAAA,IAClC;AAEA,IAAAX,EAAO,MAAM,YAAYW,EAAM,WAAW,GAAG,IAAI,YAAYN,CAAQ,CAAC,GACtEM,EAAM,QAAQN,EAAS,QAEvBS,EAAcd,GAAQU,GAAUC,EAAM,OAAO;AAAA,MACzC,YAAYA,EAAM,QAAQ;AAAA,MAC1B,eAAeN,EAAS;AAAA,MACxB,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,eAAe;AAAA,IAAA,CAClB;AAAA,EACL;AACJ;"}
@@ -1,3 +0,0 @@
1
- import { MeshData } from './index';
2
- export declare function createPlane(): MeshData;
3
- //# sourceMappingURL=plane.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"plane.d.ts","sourceRoot":"","sources":["../../../../src/standard/render/mesh/plane.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAExC,wBAAgB,WAAW,IAAI,QAAQ,CAQtC"}
@@ -1,33 +0,0 @@
1
- function t() {
2
- const e = new Float32Array([
3
- -0.5,
4
- 0,
5
- 0.5,
6
- 0,
7
- 1,
8
- 0,
9
- 0.5,
10
- 0,
11
- 0.5,
12
- 0,
13
- 1,
14
- 0,
15
- 0.5,
16
- 0,
17
- -0.5,
18
- 0,
19
- 1,
20
- 0,
21
- -0.5,
22
- 0,
23
- -0.5,
24
- 0,
25
- 1,
26
- 0
27
- ]), n = new Uint16Array([0, 1, 2, 0, 2, 3]);
28
- return { vertices: e, indices: n, vertexCount: 4, indexCount: 6 };
29
- }
30
- export {
31
- t as createPlane
32
- };
33
- //# sourceMappingURL=plane.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"plane.js","sources":["../../../../src/standard/render/mesh/plane.ts"],"sourcesContent":["import type { MeshData } from \"./index\";\n\nexport function createPlane(): MeshData {\n const vertices = new Float32Array([\n -0.5, 0, 0.5, 0, 1, 0, 0.5, 0, 0.5, 0, 1, 0, 0.5, 0, -0.5, 0, 1, 0, -0.5, 0, -0.5, 0, 1, 0,\n ]);\n\n const indices = new Uint16Array([0, 1, 2, 0, 2, 3]);\n\n return { vertices, indices, vertexCount: 4, indexCount: 6 };\n}\n"],"names":["createPlane","vertices","indices"],"mappings":"AAEO,SAASA,IAAwB;AACpC,QAAMC,IAAW,IAAI,aAAa;AAAA,IAC9B;AAAA,IAAM;AAAA,IAAG;AAAA,IAAK;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAK;AAAA,IAAG;AAAA,IAAK;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAK;AAAA,IAAG;AAAA,IAAM;AAAA,IAAG;AAAA,IAAG;AAAA,IAAG;AAAA,IAAM;AAAA,IAAG;AAAA,IAAM;AAAA,IAAG;AAAA,IAAG;AAAA,EAAA,CAC5F,GAEKC,IAAU,IAAI,YAAY,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC;AAElD,SAAO,EAAE,UAAAD,GAAU,SAAAC,GAAS,aAAa,GAAG,YAAY,EAAA;AAC5D;"}
@@ -1,3 +0,0 @@
1
- import { MeshData } from './index';
2
- export declare function createSphere(segments?: number, rings?: number): MeshData;
3
- //# sourceMappingURL=sphere.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sphere.d.ts","sourceRoot":"","sources":["../../../../src/standard/render/mesh/sphere.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAExC,wBAAgB,YAAY,CAAC,QAAQ,SAAK,EAAE,KAAK,SAAK,GAAG,QAAQ,CAqChE"}
@@ -1,25 +0,0 @@
1
- function x(o = 32, a = 16) {
2
- const i = [], h = [];
3
- for (let c = 0; c <= a; c++) {
4
- const t = c / a * Math.PI;
5
- for (let n = 0; n <= o; n++) {
6
- const u = n / o * Math.PI * 2, s = Math.sin(t) * Math.cos(u), e = Math.cos(t), d = Math.sin(t) * Math.sin(u);
7
- i.push(s * 0.5, e * 0.5, d * 0.5, s, e, d);
8
- }
9
- }
10
- for (let c = 0; c < a; c++)
11
- for (let r = 0; r < o; r++) {
12
- const t = c * (o + 1) + r, n = t + o + 1;
13
- h.push(t, t + 1, n), h.push(t + 1, n + 1, n);
14
- }
15
- return {
16
- vertices: new Float32Array(i),
17
- indices: new Uint16Array(h),
18
- vertexCount: (a + 1) * (o + 1),
19
- indexCount: a * o * 6
20
- };
21
- }
22
- export {
23
- x as createSphere
24
- };
25
- //# sourceMappingURL=sphere.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sphere.js","sources":["../../../../src/standard/render/mesh/sphere.ts"],"sourcesContent":["import type { MeshData } from \"./index\";\n\nexport function createSphere(segments = 32, rings = 16): MeshData {\n const vertices: number[] = [];\n const indices: number[] = [];\n const radius = 0.5;\n\n for (let y = 0; y <= rings; y++) {\n const v = y / rings;\n const theta = v * Math.PI;\n\n for (let x = 0; x <= segments; x++) {\n const u = x / segments;\n const phi = u * Math.PI * 2;\n\n const nx = Math.sin(theta) * Math.cos(phi);\n const ny = Math.cos(theta);\n const nz = Math.sin(theta) * Math.sin(phi);\n\n vertices.push(nx * radius, ny * radius, nz * radius, nx, ny, nz);\n }\n }\n\n for (let y = 0; y < rings; y++) {\n for (let x = 0; x < segments; x++) {\n const a = y * (segments + 1) + x;\n const b = a + segments + 1;\n\n indices.push(a, a + 1, b);\n indices.push(a + 1, b + 1, b);\n }\n }\n\n return {\n vertices: new Float32Array(vertices),\n indices: new Uint16Array(indices),\n vertexCount: (rings + 1) * (segments + 1),\n indexCount: rings * segments * 6,\n };\n}\n"],"names":["createSphere","segments","rings","vertices","indices","y","theta","x","phi","nx","ny","nz","a","b"],"mappings":"AAEO,SAASA,EAAaC,IAAW,IAAIC,IAAQ,IAAc;AAC9D,QAAMC,IAAqB,CAAA,GACrBC,IAAoB,CAAA;AAG1B,WAASC,IAAI,GAAGA,KAAKH,GAAOG,KAAK;AAE7B,UAAMC,IADID,IAAIH,IACI,KAAK;AAEvB,aAASK,IAAI,GAAGA,KAAKN,GAAUM,KAAK;AAEhC,YAAMC,IADID,IAAIN,IACE,KAAK,KAAK,GAEpBQ,IAAK,KAAK,IAAIH,CAAK,IAAI,KAAK,IAAIE,CAAG,GACnCE,IAAK,KAAK,IAAIJ,CAAK,GACnBK,IAAK,KAAK,IAAIL,CAAK,IAAI,KAAK,IAAIE,CAAG;AAEzC,MAAAL,EAAS,KAAKM,IAAK,KAAQC,IAAK,KAAQC,IAAK,KAAQF,GAAIC,GAAIC,CAAE;AAAA,IACnE;AAAA,EACJ;AAEA,WAASN,IAAI,GAAGA,IAAIH,GAAOG;AACvB,aAASE,IAAI,GAAGA,IAAIN,GAAUM,KAAK;AAC/B,YAAMK,IAAIP,KAAKJ,IAAW,KAAKM,GACzBM,IAAID,IAAIX,IAAW;AAEzB,MAAAG,EAAQ,KAAKQ,GAAGA,IAAI,GAAGC,CAAC,GACxBT,EAAQ,KAAKQ,IAAI,GAAGC,IAAI,GAAGA,CAAC;AAAA,IAChC;AAGJ,SAAO;AAAA,IACH,UAAU,IAAI,aAAaV,CAAQ;AAAA,IACnC,SAAS,IAAI,YAAYC,CAAO;AAAA,IAChC,cAAcF,IAAQ,MAAMD,IAAW;AAAA,IACvC,YAAYC,IAAQD,IAAW;AAAA,EAAA;AAEvC;"}
@@ -1,11 +0,0 @@
1
- import { ComputeNode } from '../compute';
2
- export interface PostProcessUniforms {
3
- tonemap: boolean;
4
- exposure: number;
5
- fxaa: boolean;
6
- vignetteStrength: number;
7
- vignetteInner: number;
8
- vignetteOuter: number;
9
- }
10
- export declare function createPostProcessNode(uniforms: PostProcessUniforms): ComputeNode;
11
- //# sourceMappingURL=postprocess.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"postprocess.d.ts","sourceRoot":"","sources":["../../../src/standard/render/postprocess.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAoB,MAAM,YAAY,CAAC;AAwIhE,MAAM,WAAW,mBAAmB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,OAAO,CAAC;IACd,gBAAgB,EAAE,MAAM,CAAC;IACzB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;CACzB;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,mBAAmB,GAAG,WAAW,CAyFhF"}