genshin-engine 3.9.0 → 4.1.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/README.md +6 -4
- package/dist/index.d.ts +2294 -412
- package/dist/index.js +5307 -572
- package/dist/terrainWorker-CLOYYKT1.d.ts +207 -0
- package/dist/terrainWorker-DZ04cA3m.js +520 -0
- package/dist/terrainWorker.d.ts +2 -0
- package/dist/terrainWorker.js +1 -0
- package/package.json +13 -8
package/dist/index.d.ts
CHANGED
|
@@ -1,45 +1,84 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { A as CliffFeature, C as GroundLayerField, D as GroundBand, E as GroundLayers, O as GaussianHills, S as GroundPathSegment, T as GroundLayer, _ as TerrainOptions, a as createTerrainShapeHeight, b as PlateauFeature, c as computeTerrainTile, d as TerrainTileOptions, f as TerrainShape, g as TerrainResidualClearing, h as TerrainResidualFade, i as getTerrainTileColumn, j as TerrainFeatureKind, k as GaussianHill, l as createSeededRandom, m as TerrainResidual, n as getTerrainTileRow, o as createGroundPaintColor, p as TerrainTile, r as getTerrainTileLevel, s as createGroundLayerWeights, t as computeScatterPoints, u as ScatterOptions, v as TerrainFeature, w as GroundLayerColors, x as GroundPaint, y as RidgeFeature } from "./terrainWorker-CLOYYKT1.js";
|
|
2
|
+
import { Box3, BufferAttribute, BufferGeometry, Camera, CanvasTexture, Color, ColorRepresentation, Data3DTexture, DataTexture, DirectionalLight, Frustum, HemisphereLight, InstancedBufferGeometry, InstancedMesh, Material, Matrix3, Matrix4, Mesh, Object3D, OrthographicCamera, PerspectiveCamera, Quaternion, Scene, Skeleton, SkinnedMesh, Sprite, Texture, ToneMapping, Vector2, Vector3, Vector3Like, Vector3Tuple, Vector4Tuple } from "three";
|
|
3
|
+
import { LightingModel, LightingModelDirectInput, Material as Material$1, MeshBasicNodeMaterial, MeshToonNodeMaterial, MeshToonNodeMaterialParameters, Node, NodeBuilder, NodeFrame, NodeMaterial, PassNode, RenderPipeline, RenderTarget, Renderer, Texture as Texture$1, TextureNode, ToonOutlinePassNode, UniformArrayNode, UniformNode, WebGPURenderer } from "three/webgpu";
|
|
4
|
+
import { CSMShadowNode, CSMShadowNodeData } from "three/examples/jsm/csm/CSMShadowNode.js";
|
|
5
|
+
import { Capsule } from "three/examples/jsm/math/Capsule.js";
|
|
6
|
+
import GTAONode from "three/examples/jsm/tsl/display/GTAONode.js";
|
|
4
7
|
import BloomNode from "three/examples/jsm/tsl/display/BloomNode.js";
|
|
5
8
|
import GodraysNode from "three/examples/jsm/tsl/display/GodraysNode.js";
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
9
|
+
import { Inspector } from "three/examples/jsm/inspector/Inspector.js";
|
|
10
|
+
//#region src/models/atmosphere/SkyUniforms.d.ts
|
|
11
|
+
export interface SkyUniforms {
|
|
12
|
+
cloudCoverage: UniformNode<"float", number>;
|
|
13
|
+
cloudDrift: UniformNode<"vec2", Vector2>;
|
|
14
|
+
cloudFrontBackBlend: UniformNode<"float", number>;
|
|
15
|
+
cloudLitBackColor: UniformNode<"color", Color>;
|
|
16
|
+
cloudLitColor: UniformNode<"color", Color>;
|
|
17
|
+
cloudShadeBackColor: UniformNode<"color", Color>;
|
|
18
|
+
cloudShadeColor: UniformNode<"color", Color>;
|
|
19
|
+
cloudSunBrighten: UniformNode<"float", number>;
|
|
20
|
+
frontBackBlend: UniformNode<"float", number>;
|
|
21
|
+
haloColor: UniformNode<"color", Color>;
|
|
22
|
+
haloHeight: UniformNode<"float", number>;
|
|
23
|
+
horizonBackColor: UniformNode<"color", Color>;
|
|
24
|
+
horizonBand: UniformNode<"float", number>;
|
|
25
|
+
horizonColor: UniformNode<"color", Color>;
|
|
26
|
+
lightColor: UniformNode<"color", Color>;
|
|
27
|
+
moonDirection: UniformNode<"vec3", Vector3>;
|
|
28
|
+
moonGlowColor: UniformNode<"color", Color>;
|
|
29
|
+
moonSize: UniformNode<"float", number>;
|
|
30
|
+
starIntensity: UniformNode<"float", number>;
|
|
31
|
+
sunDirection: UniformNode<"vec3", Vector3>;
|
|
32
|
+
sunHaloColor: UniformNode<"color", Color>;
|
|
33
|
+
sunHaloSize: UniformNode<"float", number>;
|
|
34
|
+
zenithBackColor: UniformNode<"color", Color>;
|
|
35
|
+
zenithColor: UniformNode<"color", Color>;
|
|
13
36
|
}
|
|
14
37
|
//#endregion
|
|
15
|
-
//#region src/atmosphere/
|
|
16
|
-
export
|
|
17
|
-
|
|
18
|
-
|
|
38
|
+
//#region src/atmosphere/applyLightningFlash.d.ts
|
|
39
|
+
export declare const applyLightningFlash: (flash: number, flashColor: Color, skyUniforms: SkyUniforms, hemisphere: HemisphereLight) => void;
|
|
40
|
+
//#endregion
|
|
41
|
+
//#region src/models/atmosphere/PrecipitationSettings.d.ts
|
|
42
|
+
export interface PrecipitationSettings {
|
|
43
|
+
fallSpeed: number;
|
|
44
|
+
length: number;
|
|
45
|
+
opacity: number;
|
|
46
|
+
sway: number;
|
|
47
|
+
width: number;
|
|
48
|
+
windDrift: number;
|
|
19
49
|
}
|
|
20
50
|
//#endregion
|
|
21
|
-
//#region src/atmosphere/
|
|
22
|
-
export interface
|
|
23
|
-
|
|
51
|
+
//#region src/models/atmosphere/PrecipitationUniforms.d.ts
|
|
52
|
+
export interface PrecipitationUniforms {
|
|
53
|
+
density: UniformNode<"float", number>;
|
|
54
|
+
eye: UniformNode<"vec3", Vector3>;
|
|
55
|
+
fallSpeed: UniformNode<"float", number>;
|
|
56
|
+
length: UniformNode<"float", number>;
|
|
57
|
+
opacity: UniformNode<"float", number>;
|
|
58
|
+
splashDensity: UniformNode<"float", number>;
|
|
59
|
+
sway: UniformNode<"float", number>;
|
|
60
|
+
width: UniformNode<"float", number>;
|
|
61
|
+
windDrift: UniformNode<"float", number>;
|
|
62
|
+
}
|
|
63
|
+
//#endregion
|
|
64
|
+
//#region src/atmosphere/applyPrecipitationSettings.d.ts
|
|
65
|
+
export declare const applyPrecipitationSettings: ({ fallSpeed, length, opacity, sway, width, windDrift }: PrecipitationSettings, precipitationUniforms: PrecipitationUniforms) => void;
|
|
66
|
+
//#endregion
|
|
67
|
+
//#region src/models/atmosphere/BaseSkyState.d.ts
|
|
68
|
+
export interface BaseSkyState {
|
|
24
69
|
cloudLitColor: Color;
|
|
25
|
-
cloudShadeBackColor?: Color;
|
|
26
70
|
cloudShadeColor: Color;
|
|
27
|
-
haloColor?: Color;
|
|
28
71
|
hemisphereGroundColor: Color;
|
|
29
72
|
hemisphereIntensity: number;
|
|
30
73
|
hemisphereSkyColor: Color;
|
|
31
|
-
horizonBackColor?: Color;
|
|
32
74
|
horizonColor: Color;
|
|
33
75
|
lightColor: Color;
|
|
34
76
|
lightIntensity: number;
|
|
35
|
-
minutes: number;
|
|
36
77
|
starIntensity: number;
|
|
37
|
-
sunHaloColor?: Color;
|
|
38
|
-
zenithBackColor?: Color;
|
|
39
78
|
zenithColor: Color;
|
|
40
79
|
}
|
|
41
80
|
//#endregion
|
|
42
|
-
//#region src/atmosphere/SkyShape.d.ts
|
|
81
|
+
//#region src/models/atmosphere/SkyShape.d.ts
|
|
43
82
|
export interface SkyShape {
|
|
44
83
|
frontBackBlend: number;
|
|
45
84
|
haloHeight: number;
|
|
@@ -48,58 +87,48 @@ export interface SkyShape {
|
|
|
48
87
|
sunHaloSize: number;
|
|
49
88
|
}
|
|
50
89
|
//#endregion
|
|
51
|
-
//#region src/
|
|
52
|
-
export interface
|
|
90
|
+
//#region src/models/post/WhiteBalance.d.ts
|
|
91
|
+
export interface WhiteBalance {
|
|
92
|
+
temperature: number;
|
|
93
|
+
tint: number;
|
|
94
|
+
}
|
|
95
|
+
//#endregion
|
|
96
|
+
//#region src/models/atmosphere/SkyState.d.ts
|
|
97
|
+
export interface SkyState extends BaseSkyState {
|
|
98
|
+
cloudLitBackColor?: Color;
|
|
99
|
+
cloudShadeBackColor?: Color;
|
|
53
100
|
fogColor?: Color;
|
|
54
101
|
fogDensity?: number;
|
|
102
|
+
fogHeightFalloff?: number;
|
|
103
|
+
fogMaxOpacity?: number;
|
|
104
|
+
haloColor?: Color;
|
|
105
|
+
horizonBackColor?: Color;
|
|
55
106
|
lightDirection: Vector3;
|
|
56
107
|
moonDirection: Vector3;
|
|
108
|
+
moonGlowColor?: Color;
|
|
57
109
|
shape?: SkyShape;
|
|
58
110
|
sunDirection: Vector3;
|
|
111
|
+
sunHaloColor?: Color;
|
|
112
|
+
whiteBalance?: WhiteBalance;
|
|
113
|
+
zenithBackColor?: Color;
|
|
59
114
|
}
|
|
60
115
|
//#endregion
|
|
61
|
-
//#region src/
|
|
62
|
-
export interface SkyUniforms {
|
|
63
|
-
cloudCoverage: UniformNode<"float", number>;
|
|
64
|
-
cloudDrift: UniformNode<"vec2", Vector2>;
|
|
65
|
-
cloudFrontBackBlend: UniformNode<"float", number>;
|
|
66
|
-
cloudLitBackColor: UniformNode<"color", Color>;
|
|
67
|
-
cloudLitColor: UniformNode<"color", Color>;
|
|
68
|
-
cloudShadeBackColor: UniformNode<"color", Color>;
|
|
69
|
-
cloudShadeColor: UniformNode<"color", Color>;
|
|
70
|
-
cloudSunBrighten: UniformNode<"float", number>;
|
|
71
|
-
frontBackBlend: UniformNode<"float", number>;
|
|
72
|
-
haloColor: UniformNode<"color", Color>;
|
|
73
|
-
haloHeight: UniformNode<"float", number>;
|
|
74
|
-
horizonBackColor: UniformNode<"color", Color>;
|
|
75
|
-
horizonBand: UniformNode<"float", number>;
|
|
76
|
-
horizonColor: UniformNode<"color", Color>;
|
|
77
|
-
lightColor: UniformNode<"color", Color>;
|
|
78
|
-
moonDirection: UniformNode<"vec3", Vector3>;
|
|
79
|
-
moonGlowColor: UniformNode<"color", Color>;
|
|
80
|
-
moonSize: UniformNode<"float", number>;
|
|
81
|
-
starIntensity: UniformNode<"float", number>;
|
|
82
|
-
sunDirection: UniformNode<"vec3", Vector3>;
|
|
83
|
-
sunHaloColor: UniformNode<"color", Color>;
|
|
84
|
-
sunHaloSize: UniformNode<"float", number>;
|
|
85
|
-
zenithBackColor: UniformNode<"color", Color>;
|
|
86
|
-
zenithColor: UniformNode<"color", Color>;
|
|
87
|
-
}
|
|
88
|
-
//#endregion
|
|
89
|
-
//#region src/nodes/LightUniforms.d.ts
|
|
116
|
+
//#region src/models/nodes/LightUniforms.d.ts
|
|
90
117
|
export interface LightUniforms {
|
|
91
118
|
lightColor: UniformNode<"color", Color>;
|
|
92
119
|
rimColor: UniformNode<"color", Color>;
|
|
93
120
|
rimStrength: UniformNode<"float", number>;
|
|
94
121
|
sunDirection: UniformNode<"vec3", Vector3>;
|
|
122
|
+
wetness: UniformNode<"float", number>;
|
|
95
123
|
}
|
|
96
124
|
//#endregion
|
|
97
|
-
//#region src/post/FogUniforms.d.ts
|
|
125
|
+
//#region src/models/post/FogUniforms.d.ts
|
|
98
126
|
export interface FogUniforms {
|
|
99
127
|
baseHeight: UniformNode<"float", number>;
|
|
100
128
|
color: UniformNode<"color", Color>;
|
|
101
129
|
density: UniformNode<"float", number>;
|
|
102
130
|
heightFalloff: UniformNode<"float", number>;
|
|
131
|
+
maxOpacity: UniformNode<"float", number>;
|
|
103
132
|
scatterColor: UniformNode<"color", Color>;
|
|
104
133
|
scatterDirection: UniformNode<"vec3", Vector3>;
|
|
105
134
|
scatterPower: UniformNode<"float", number>;
|
|
@@ -107,19 +136,20 @@ export interface FogUniforms {
|
|
|
107
136
|
startDistance: UniformNode<"float", number>;
|
|
108
137
|
}
|
|
109
138
|
//#endregion
|
|
110
|
-
//#region src/post/PostUniforms.d.ts
|
|
139
|
+
//#region src/models/post/PostUniforms.d.ts
|
|
111
140
|
export interface PostUniforms {
|
|
112
141
|
godraysColor: UniformNode<"color", Color>;
|
|
113
142
|
gradeIntensity: UniformNode<"float", number>;
|
|
114
143
|
outlineColor: UniformNode<"color", Color>;
|
|
115
144
|
outlineFadeDistance: UniformNode<"float", number>;
|
|
116
145
|
outlineThickness: UniformNode<"float", number>;
|
|
146
|
+
whiteBalance: UniformNode<"mat3", Matrix3>;
|
|
117
147
|
}
|
|
118
148
|
//#endregion
|
|
119
|
-
//#region src/atmosphere/SkyTargets.d.ts
|
|
149
|
+
//#region src/models/atmosphere/SkyTargets.d.ts
|
|
120
150
|
export interface SkyTargets {
|
|
121
151
|
fogUniforms: FogUniforms;
|
|
122
|
-
godraysLight
|
|
152
|
+
godraysLight?: DirectionalLight;
|
|
123
153
|
hemisphere: HemisphereLight;
|
|
124
154
|
light: DirectionalLight;
|
|
125
155
|
lightDistance: number;
|
|
@@ -128,55 +158,271 @@ export interface SkyTargets {
|
|
|
128
158
|
skyUniforms: SkyUniforms;
|
|
129
159
|
}
|
|
130
160
|
//#endregion
|
|
131
|
-
//#region src/atmosphere/
|
|
132
|
-
export
|
|
133
|
-
|
|
134
|
-
|
|
161
|
+
//#region src/atmosphere/applySkyState.d.ts
|
|
162
|
+
export declare const applySkyState: (skyState: SkyState, { fogUniforms, godraysLight, hemisphere, light, lightDistance, lightUniforms, postUniforms, skyUniforms }: SkyTargets) => void;
|
|
163
|
+
//#endregion
|
|
164
|
+
//#region src/models/atmosphere/PrecipitationKind.d.ts
|
|
165
|
+
export declare enum PrecipitationKind {
|
|
166
|
+
Rain = "Rain",
|
|
167
|
+
Sand = "Sand",
|
|
168
|
+
Snow = "Snow"
|
|
135
169
|
}
|
|
136
170
|
//#endregion
|
|
137
|
-
//#region src/atmosphere/
|
|
138
|
-
export interface
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
171
|
+
//#region src/models/atmosphere/WeatherState.d.ts
|
|
172
|
+
export interface WeatherState {
|
|
173
|
+
cloudCoverage: number;
|
|
174
|
+
fogColor: number;
|
|
175
|
+
fogColorAmount: number;
|
|
176
|
+
fogDensity: number;
|
|
177
|
+
lightningRate: number;
|
|
178
|
+
precipitationDensity: number;
|
|
179
|
+
precipitationKind: PrecipitationKind;
|
|
180
|
+
wetness: number;
|
|
142
181
|
}
|
|
143
182
|
//#endregion
|
|
144
|
-
//#region src/atmosphere/
|
|
145
|
-
export
|
|
183
|
+
//#region src/models/atmosphere/WeatherTargets.d.ts
|
|
184
|
+
export interface WeatherTargets {
|
|
185
|
+
fogUniforms: FogUniforms;
|
|
186
|
+
lightUniforms: LightUniforms;
|
|
187
|
+
precipitationUniforms: PrecipitationUniforms;
|
|
188
|
+
skyUniforms: SkyUniforms;
|
|
189
|
+
}
|
|
190
|
+
//#endregion
|
|
191
|
+
//#region src/atmosphere/applyWeatherState.d.ts
|
|
192
|
+
export declare const applyWeatherState: ({ cloudCoverage, fogDensity, precipitationDensity, precipitationKind, wetness }: WeatherState, { fogUniforms, lightUniforms, precipitationUniforms, skyUniforms }: WeatherTargets, baseCloudCoverage: number, baseFogDensity: number) => void;
|
|
193
|
+
//#endregion
|
|
194
|
+
//#region src/models/atmosphere/WeatherPrecipitation.d.ts
|
|
195
|
+
export interface WeatherPrecipitation {
|
|
196
|
+
density: number;
|
|
197
|
+
kind: PrecipitationKind;
|
|
198
|
+
}
|
|
199
|
+
//#endregion
|
|
200
|
+
//#region src/models/atmosphere/WeatherSettings.d.ts
|
|
201
|
+
export interface WeatherSettings {
|
|
202
|
+
cloudCoverage: number;
|
|
203
|
+
fogColor?: number;
|
|
204
|
+
fogDensity: number;
|
|
205
|
+
lightningRate?: number;
|
|
206
|
+
precipitation?: WeatherPrecipitation;
|
|
207
|
+
wetness: number;
|
|
208
|
+
}
|
|
209
|
+
//#endregion
|
|
210
|
+
//#region src/atmosphere/blendWeatherState.d.ts
|
|
211
|
+
export declare const blendWeatherState: (from: Readonly<WeatherState>, { cloudCoverage, fogColor, fogDensity, lightningRate, precipitation, wetness }: WeatherSettings, amount: number, weatherState: WeatherState) => void;
|
|
212
|
+
//#endregion
|
|
213
|
+
//#region src/atmosphere/checkSunTurned.d.ts
|
|
214
|
+
export declare const checkSunTurned: (drawnDirection: Vector3, direction: Vector3) => boolean;
|
|
215
|
+
//#endregion
|
|
216
|
+
//#region src/models/atmosphere/LightningBolt.d.ts
|
|
217
|
+
export interface LightningBolt {
|
|
218
|
+
directions: Float32Array;
|
|
219
|
+
indices: Uint32Array;
|
|
220
|
+
positions: Float32Array;
|
|
221
|
+
sides: Float32Array;
|
|
222
|
+
}
|
|
223
|
+
//#endregion
|
|
224
|
+
//#region src/models/atmosphere/LightningBoltOptions.d.ts
|
|
225
|
+
export interface LightningBoltOptions {
|
|
226
|
+
branchCount: number;
|
|
227
|
+
height: number;
|
|
228
|
+
roughness: number;
|
|
229
|
+
seed: number;
|
|
230
|
+
segmentCount: number;
|
|
231
|
+
width: number;
|
|
232
|
+
}
|
|
233
|
+
//#endregion
|
|
234
|
+
//#region src/atmosphere/computeLightningBolt.d.ts
|
|
235
|
+
export declare const computeLightningBolt: ({ branchCount, height, roughness, seed, segmentCount, width }: LightningBoltOptions) => LightningBolt;
|
|
236
|
+
//#endregion
|
|
237
|
+
//#region src/atmosphere/computeLightningFlash.d.ts
|
|
238
|
+
export declare const computeLightningFlash: (elapsed: number) => number;
|
|
146
239
|
//#endregion
|
|
147
240
|
//#region src/atmosphere/computeSunDirection.d.ts
|
|
148
241
|
export declare const computeSunDirection: (minutes: number, tilt: number, sunDirection: Vector3) => Vector3;
|
|
149
242
|
//#endregion
|
|
243
|
+
//#region src/models/atmosphere/LightningFlashPulse.d.ts
|
|
244
|
+
export interface LightningFlashPulse {
|
|
245
|
+
seconds: number;
|
|
246
|
+
strength: number;
|
|
247
|
+
}
|
|
248
|
+
//#endregion
|
|
249
|
+
//#region src/models/atmosphere/SkyGradient.d.ts
|
|
250
|
+
export interface SkyGradient {
|
|
251
|
+
green: readonly number[];
|
|
252
|
+
red: readonly number[];
|
|
253
|
+
}
|
|
254
|
+
//#endregion
|
|
255
|
+
//#region src/models/atmosphere/WeatherKind.d.ts
|
|
256
|
+
export declare enum WeatherKind {
|
|
257
|
+
Clear = "Clear",
|
|
258
|
+
Cloudy = "Cloudy",
|
|
259
|
+
Fog = "Fog",
|
|
260
|
+
Rain = "Rain",
|
|
261
|
+
Sandstorm = "Sandstorm",
|
|
262
|
+
Snow = "Snow",
|
|
263
|
+
Thunderstorm = "Thunderstorm"
|
|
264
|
+
}
|
|
265
|
+
//#endregion
|
|
150
266
|
//#region src/atmosphere/constants.d.ts
|
|
267
|
+
export declare const SUN_REDRAW_COSINE: number;
|
|
151
268
|
export declare const DEFAULT_SKY_SHAPE: Readonly<SkyShape>;
|
|
152
|
-
export declare const DEFAULT_SKY_GRADIENT:
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
269
|
+
export declare const DEFAULT_SKY_GRADIENT: SkyGradient;
|
|
270
|
+
export declare const PRECIPITATION_COUNT = 2048;
|
|
271
|
+
export declare const PRECIPITATION_VOLUME_SIZE = 60;
|
|
272
|
+
export declare const PRECIPITATION_VOLUME_HEIGHT = 30;
|
|
273
|
+
export declare const PRECIPITATION_SWAY_SPEED = 1.3;
|
|
274
|
+
export declare const PRECIPITATION_SETTINGS_MAP: Readonly<Record<PrecipitationKind, PrecipitationSettings>>;
|
|
275
|
+
export declare const WEATHER_SETTINGS_MAP: Readonly<Record<WeatherKind, WeatherSettings>>;
|
|
276
|
+
export declare const WEATHER_TRANSITION_SECONDS = 9;
|
|
277
|
+
export declare const LIGHTNING_FLASH_PULSES: readonly LightningFlashPulse[];
|
|
278
|
+
export declare const LIGHTNING_FLASH_DECAY_SECONDS = .08;
|
|
279
|
+
export declare const LIGHTNING_FLASH_COLOR = 14344191;
|
|
280
|
+
export declare const LIGHTNING_FLASH_SKY = .6;
|
|
281
|
+
export declare const LIGHTNING_FLASH_AMBIENT = 1.2;
|
|
282
|
+
export declare const LIGHTNING_FLASH_END = .01;
|
|
283
|
+
export declare const LIGHTNING_BOLT_OPTIONS: Readonly<Pick<LightningBoltOptions, "branchCount" | "height" | "roughness" | "segmentCount" | "width">>;
|
|
284
|
+
export declare const LIGHTNING_BOLT_COLOR = 15263487;
|
|
285
|
+
export declare const LIGHTNING_BOLT_BRIGHTNESS = 3;
|
|
286
|
+
export declare const LIGHTNING_MIN_DISTANCE = 150;
|
|
287
|
+
export declare const LIGHTNING_MAX_DISTANCE = 600;
|
|
288
|
+
export declare const SPLASH_COUNT = 768;
|
|
289
|
+
export declare const SPLASH_RADIUS = 16;
|
|
290
|
+
export declare const SPLASH_LIFETIME = .35;
|
|
291
|
+
export declare const SPLASH_SIZE = .4;
|
|
292
|
+
export declare const SPLASH_OPACITY = .5;
|
|
293
|
+
export declare const SPLASH_LIFT = .03;
|
|
294
|
+
//#endregion
|
|
295
|
+
//#region src/models/atmosphere/CloudSprite.d.ts
|
|
296
|
+
export interface CloudSprite {
|
|
297
|
+
lit: [number, number][][];
|
|
298
|
+
outline: [number, number][][];
|
|
299
|
+
}
|
|
156
300
|
//#endregion
|
|
157
301
|
//#region src/atmosphere/createCloudAtlasTexture.d.ts
|
|
158
|
-
export declare const getCloudAtlasColumns: (spriteCount: number) => number;
|
|
159
302
|
export declare const createCloudAtlasTexture: (sprites: readonly CloudSprite[], cellSize: number) => CanvasTexture<OffscreenCanvas>;
|
|
160
303
|
//#endregion
|
|
161
|
-
//#region src/atmosphere/
|
|
162
|
-
export
|
|
163
|
-
|
|
164
|
-
spriteIndex: number;
|
|
165
|
-
width: number;
|
|
166
|
-
}[], { aspect, spriteCount }: {
|
|
167
|
-
aspect: number;
|
|
168
|
-
spriteCount: number;
|
|
169
|
-
}, skyUniforms: SkyUniforms) => {
|
|
304
|
+
//#region src/models/atmosphere/CloudBandSprite.d.ts
|
|
305
|
+
export interface CloudBandSprite {
|
|
306
|
+
cover: UniformNode<"float", number>;
|
|
170
307
|
dispose: () => void;
|
|
171
308
|
places: [number, number, number][];
|
|
172
309
|
sprite: Sprite;
|
|
310
|
+
}
|
|
311
|
+
//#endregion
|
|
312
|
+
//#region src/models/atmosphere/CloudBandSpriteOptions.d.ts
|
|
313
|
+
export interface CloudBandSpriteOptions {
|
|
314
|
+
aspect: number;
|
|
315
|
+
spriteCount: number;
|
|
316
|
+
}
|
|
317
|
+
//#endregion
|
|
318
|
+
//#region src/models/atmosphere/CloudPlacement.d.ts
|
|
319
|
+
export interface CloudPlacement {
|
|
320
|
+
position: [number, number, number];
|
|
321
|
+
spriteIndex: number;
|
|
322
|
+
width: number;
|
|
323
|
+
}
|
|
324
|
+
//#endregion
|
|
325
|
+
//#region src/atmosphere/createCloudBandSprite.d.ts
|
|
326
|
+
export declare const createCloudBandSprite: (atlas: Texture, clouds: readonly CloudPlacement[], { aspect, spriteCount }: CloudBandSpriteOptions, skyUniforms: SkyUniforms) => CloudBandSprite;
|
|
327
|
+
//#endregion
|
|
328
|
+
//#region src/models/atmosphere/CloudLayerDome.d.ts
|
|
329
|
+
export interface CloudLayerDome {
|
|
330
|
+
center: readonly number[];
|
|
331
|
+
elevations: readonly number[];
|
|
332
|
+
far: readonly number[];
|
|
333
|
+
near: readonly number[];
|
|
334
|
+
normalElevations: readonly number[];
|
|
335
|
+
turn: number;
|
|
336
|
+
wisps: readonly number[];
|
|
337
|
+
wispsTurn: number;
|
|
338
|
+
}
|
|
339
|
+
//#endregion
|
|
340
|
+
//#region src/atmosphere/createCloudLayerProfileTexture.d.ts
|
|
341
|
+
export declare const createCloudLayerProfileTexture: ({ elevations, far, near, normalElevations, wisps }: Pick<CloudLayerDome, "elevations" | "far" | "near" | "normalElevations" | "wisps">) => DataTexture;
|
|
342
|
+
//#endregion
|
|
343
|
+
//#region src/models/noise/SpectralNoiseChannel.d.ts
|
|
344
|
+
export interface SpectralNoiseChannel {
|
|
345
|
+
amplitudes: number[];
|
|
346
|
+
correlation?: {
|
|
347
|
+
channel: number;
|
|
348
|
+
share: number;
|
|
349
|
+
};
|
|
350
|
+
mean: number;
|
|
351
|
+
quantiles?: number[][];
|
|
352
|
+
}
|
|
353
|
+
//#endregion
|
|
354
|
+
//#region src/models/noise/SpectralNoiseProfile.d.ts
|
|
355
|
+
export interface SpectralNoiseProfile {
|
|
356
|
+
channels: SpectralNoiseChannel[];
|
|
357
|
+
height: number;
|
|
358
|
+
width: number;
|
|
359
|
+
}
|
|
360
|
+
//#endregion
|
|
361
|
+
//#region src/atmosphere/createCloudLayerTexture.d.ts
|
|
362
|
+
export declare const createCloudLayerTexture: ({ height, width }: Pick<SpectralNoiseProfile, "height" | "width">) => DataTexture;
|
|
363
|
+
//#endregion
|
|
364
|
+
//#region src/models/atmosphere/CloudLayerTextureProfiles.d.ts
|
|
365
|
+
export interface CloudLayerTextureProfiles {
|
|
366
|
+
curl: SpectralNoiseProfile;
|
|
367
|
+
density: SpectralNoiseProfile;
|
|
368
|
+
normal: {
|
|
369
|
+
bias: number[];
|
|
370
|
+
height: SpectralNoiseProfile;
|
|
371
|
+
};
|
|
372
|
+
wisps: SpectralNoiseProfile;
|
|
373
|
+
}
|
|
374
|
+
//#endregion
|
|
375
|
+
//#region src/atmosphere/createCloudLayerTextures.d.ts
|
|
376
|
+
export declare const createCloudLayerTextures: ({ curl, density, normal, wisps }: CloudLayerTextureProfiles) => {
|
|
377
|
+
curl: DataTexture;
|
|
378
|
+
density: DataTexture;
|
|
379
|
+
normal: DataTexture;
|
|
380
|
+
wisps: DataTexture;
|
|
173
381
|
};
|
|
174
382
|
//#endregion
|
|
383
|
+
//#region src/models/atmosphere/CloudLayerUniforms.d.ts
|
|
384
|
+
export interface CloudLayerUniforms {
|
|
385
|
+
center: UniformNode<"vec2", Vector2>;
|
|
386
|
+
curl: TextureNode;
|
|
387
|
+
curlAmplitude: UniformNode<"float", number>;
|
|
388
|
+
curlSpeed: UniformNode<"float", number>;
|
|
389
|
+
curlTiling: UniformNode<"float", number>;
|
|
390
|
+
density: TextureNode;
|
|
391
|
+
direction: UniformNode<"vec2", Vector2>;
|
|
392
|
+
elapsedTime: UniformNode<"float", number>;
|
|
393
|
+
height: UniformNode<"float", number>;
|
|
394
|
+
lightDirection: UniformNode<"vec3", Vector3>;
|
|
395
|
+
normal: TextureNode;
|
|
396
|
+
normalYScale: UniformNode<"float", number>;
|
|
397
|
+
opacity: UniformNode<"float", number>;
|
|
398
|
+
profile: TextureNode;
|
|
399
|
+
smoothness: UniformNode<"vec2", Vector2>;
|
|
400
|
+
sunBrightness: UniformNode<"float", number>;
|
|
401
|
+
sunRimLightRadius: UniformNode<"float", number>;
|
|
402
|
+
tiling: UniformNode<"float", number>;
|
|
403
|
+
turn: UniformNode<"float", number>;
|
|
404
|
+
weather: UniformNode<"vec3", Vector3>;
|
|
405
|
+
wisps: TextureNode;
|
|
406
|
+
wispsCoverage: UniformNode<"float", number>;
|
|
407
|
+
wispsElapsedTime: UniformNode<"float", number>;
|
|
408
|
+
wispsOpacity: UniformNode<"float", number>;
|
|
409
|
+
wispsTurn: UniformNode<"float", number>;
|
|
410
|
+
}
|
|
411
|
+
//#endregion
|
|
412
|
+
//#region src/atmosphere/createCloudLayerUniforms.d.ts
|
|
413
|
+
export declare const createCloudLayerUniforms: ({ center, turn, wispsTurn, ...profiles }: CloudLayerDome, textures: Record<"curl" | "density" | "normal" | "wisps", Texture>) => CloudLayerUniforms;
|
|
414
|
+
//#endregion
|
|
415
|
+
//#region src/atmosphere/createLightningBoltGeometry.d.ts
|
|
416
|
+
export declare const createLightningBoltGeometry: ({ directions, indices, positions, sides }: LightningBolt) => BufferGeometry;
|
|
417
|
+
//#endregion
|
|
418
|
+
//#region src/atmosphere/createPrecipitationGeometry.d.ts
|
|
419
|
+
export declare const createPrecipitationGeometry: (particleCount: number) => InstancedBufferGeometry;
|
|
420
|
+
//#endregion
|
|
421
|
+
//#region src/atmosphere/createPrecipitationUniforms.d.ts
|
|
422
|
+
export declare const createPrecipitationUniforms: () => PrecipitationUniforms;
|
|
423
|
+
//#endregion
|
|
175
424
|
//#region src/atmosphere/createSkyGradientTexture.d.ts
|
|
176
|
-
export declare const createSkyGradientTexture: ({ green, red }:
|
|
177
|
-
green: readonly number[];
|
|
178
|
-
red: readonly number[];
|
|
179
|
-
}) => DataTexture;
|
|
425
|
+
export declare const createSkyGradientTexture: ({ green, red }: SkyGradient) => DataTexture;
|
|
180
426
|
//#endregion
|
|
181
427
|
//#region src/atmosphere/createSkyState.d.ts
|
|
182
428
|
export declare const createSkyState: () => SkyState;
|
|
@@ -184,183 +430,1808 @@ export declare const createSkyState: () => SkyState;
|
|
|
184
430
|
//#region src/atmosphere/createSkyUniforms.d.ts
|
|
185
431
|
export declare const createSkyUniforms: () => SkyUniforms;
|
|
186
432
|
//#endregion
|
|
433
|
+
//#region src/models/nodes/AnchoredCascadeShadowNode.d.ts
|
|
434
|
+
export declare class AnchoredCascadeShadowNode extends CSMShadowNode {
|
|
435
|
+
#private;
|
|
436
|
+
anchor: Vector3;
|
|
437
|
+
constructor(light: DirectionalLight, data: CSMShadowNodeData);
|
|
438
|
+
override updateBefore(frame: NodeFrame): undefined;
|
|
439
|
+
}
|
|
440
|
+
//#endregion
|
|
441
|
+
//#region src/models/atmosphere/SunLight.d.ts
|
|
442
|
+
export interface SunLight {
|
|
443
|
+
cascadedShadowNode: AnchoredCascadeShadowNode;
|
|
444
|
+
light: DirectionalLight;
|
|
445
|
+
}
|
|
446
|
+
//#endregion
|
|
447
|
+
//#region src/models/atmosphere/SunLightOptions.d.ts
|
|
448
|
+
export interface SunLightOptions {
|
|
449
|
+
cascadeCount: number;
|
|
450
|
+
maxFar: number;
|
|
451
|
+
shadowMapSize: number;
|
|
452
|
+
}
|
|
453
|
+
//#endregion
|
|
187
454
|
//#region src/atmosphere/createSunLight.d.ts
|
|
188
455
|
export declare const createSunLight: ({ cascadeCount, maxFar, shadowMapSize }: SunLightOptions) => SunLight;
|
|
189
456
|
//#endregion
|
|
457
|
+
//#region src/atmosphere/getCloudAtlasColumns.d.ts
|
|
458
|
+
export declare const getCloudAtlasColumns: (spriteCount: number) => number;
|
|
459
|
+
//#endregion
|
|
190
460
|
//#region src/atmosphere/orderByViewDepth.d.ts
|
|
191
|
-
export declare const orderByViewDepth: (places: readonly (readonly number[])[], { elements }: Matrix4) =>
|
|
461
|
+
export declare const orderByViewDepth: (places: readonly (readonly number[])[], { elements }: Matrix4, depths: Float64Array, order: Uint32Array) => boolean;
|
|
462
|
+
//#endregion
|
|
463
|
+
//#region src/models/atmosphere/CloudBandOptions.d.ts
|
|
464
|
+
export interface CloudBandOptions {
|
|
465
|
+
count: number;
|
|
466
|
+
distanceRange: [number, number];
|
|
467
|
+
heightRange: [number, number];
|
|
468
|
+
seed: number;
|
|
469
|
+
widthRange: [number, number];
|
|
470
|
+
}
|
|
192
471
|
//#endregion
|
|
193
472
|
//#region src/atmosphere/placeCloudBand.d.ts
|
|
194
|
-
export declare const placeCloudBand: ({ count, distanceRange: [near, far], heightRange: [low, high], seed, widthRange: [narrow, wide] }: CloudBandOptions, spriteCount: number) =>
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
473
|
+
export declare const placeCloudBand: ({ count, distanceRange: [near, far], heightRange: [low, high], seed, widthRange: [narrow, wide] }: CloudBandOptions, spriteCount: number) => CloudPlacement[];
|
|
474
|
+
//#endregion
|
|
475
|
+
//#region src/models/atmosphere/SkyKeyframe.d.ts
|
|
476
|
+
export interface SkyKeyframe extends BaseSkyState {
|
|
477
|
+
minutes: number;
|
|
478
|
+
}
|
|
199
479
|
//#endregion
|
|
200
480
|
//#region src/atmosphere/sampleSkyState.d.ts
|
|
201
481
|
export declare const sampleSkyState: (skyKeyframes: readonly SkyKeyframe[], minutes: number, tilt: number, skyState: SkyState) => SkyState;
|
|
202
482
|
//#endregion
|
|
203
|
-
//#region src/
|
|
204
|
-
export
|
|
205
|
-
|
|
206
|
-
|
|
483
|
+
//#region src/atmosphere/synthesizeCloudLayerTextures.d.ts
|
|
484
|
+
export declare const synthesizeCloudLayerTextures: ({ curl, density, normal, wisps }: CloudLayerTextureProfiles, textures: Record<"curl" | "density" | "normal" | "wisps", DataTexture>) => Promise<void>;
|
|
485
|
+
//#endregion
|
|
486
|
+
//#region src/atmosphere/writeCloudLayerTexture.d.ts
|
|
487
|
+
export declare const writeCloudLayerTexture: (texture: DataTexture, readTexel: (index: number) => readonly number[]) => void;
|
|
488
|
+
//#endregion
|
|
489
|
+
//#region src/models/audio/MusicNote.d.ts
|
|
490
|
+
export interface MusicNote {
|
|
491
|
+
duration: number;
|
|
492
|
+
pitch: number;
|
|
493
|
+
start: number;
|
|
494
|
+
velocity: number;
|
|
207
495
|
}
|
|
208
496
|
//#endregion
|
|
209
|
-
//#region src/
|
|
210
|
-
export
|
|
497
|
+
//#region src/models/audio/MusicSampleRange.d.ts
|
|
498
|
+
export interface MusicSampleRange {
|
|
499
|
+
highKey: number;
|
|
500
|
+
highVelocity: number;
|
|
501
|
+
lowKey: number;
|
|
502
|
+
lowVelocity: number;
|
|
503
|
+
}
|
|
211
504
|
//#endregion
|
|
212
|
-
//#region src/
|
|
213
|
-
export
|
|
214
|
-
|
|
505
|
+
//#region src/models/audio/MusicRecording.d.ts
|
|
506
|
+
export interface MusicRecording extends MusicSampleRange {
|
|
507
|
+
file: string;
|
|
508
|
+
gain: number;
|
|
509
|
+
keyCenter: number;
|
|
510
|
+
tune: number;
|
|
511
|
+
}
|
|
215
512
|
//#endregion
|
|
216
|
-
//#region src/
|
|
217
|
-
export interface
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
513
|
+
//#region src/models/audio/Instrument.d.ts
|
|
514
|
+
export interface Instrument {
|
|
515
|
+
attack: number;
|
|
516
|
+
decay: number;
|
|
517
|
+
harmonics: number[];
|
|
518
|
+
level: number;
|
|
519
|
+
noiseBands: number[];
|
|
520
|
+
recordingLevel: number;
|
|
521
|
+
recordings: MusicRecording[];
|
|
522
|
+
release: number;
|
|
523
|
+
sustain: number;
|
|
524
|
+
tuning: number;
|
|
221
525
|
}
|
|
222
526
|
//#endregion
|
|
223
|
-
//#region src/
|
|
224
|
-
export interface
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
sections: LatheSection[];
|
|
527
|
+
//#region src/models/audio/MusicVoice.d.ts
|
|
528
|
+
export interface MusicVoice {
|
|
529
|
+
instrument: Instrument;
|
|
530
|
+
notes: MusicNote[];
|
|
228
531
|
}
|
|
229
532
|
//#endregion
|
|
230
|
-
//#region src/
|
|
231
|
-
export
|
|
533
|
+
//#region src/models/audio/ScheduledMusicNote.d.ts
|
|
534
|
+
export interface ScheduledMusicNote {
|
|
535
|
+
note: MusicNote;
|
|
536
|
+
time: number;
|
|
537
|
+
voice: MusicVoice;
|
|
538
|
+
}
|
|
232
539
|
//#endregion
|
|
233
|
-
//#region src/
|
|
234
|
-
export
|
|
540
|
+
//#region src/models/audio/MusicSegment.d.ts
|
|
541
|
+
export interface MusicSegment {
|
|
542
|
+
duration: number;
|
|
543
|
+
expression: number[];
|
|
544
|
+
voices: MusicVoice[];
|
|
545
|
+
volume: number;
|
|
546
|
+
}
|
|
547
|
+
//#endregion
|
|
548
|
+
//#region src/models/audio/ScheduledMusicSegment.d.ts
|
|
549
|
+
export interface ScheduledMusicSegment {
|
|
550
|
+
segment: MusicSegment;
|
|
551
|
+
start: number;
|
|
552
|
+
}
|
|
235
553
|
//#endregion
|
|
236
|
-
//#region src/
|
|
237
|
-
export declare const
|
|
554
|
+
//#region src/audio/collectMusicNotes.d.ts
|
|
555
|
+
export declare const collectMusicNotes: ({ segment, start }: ScheduledMusicSegment, from: number, to: number) => ScheduledMusicNote[];
|
|
238
556
|
//#endregion
|
|
239
|
-
//#region src/
|
|
240
|
-
export interface
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
startRadius: number;
|
|
557
|
+
//#region src/models/audio/Music.d.ts
|
|
558
|
+
export interface Music {
|
|
559
|
+
isLooping: boolean;
|
|
560
|
+
order: number[];
|
|
561
|
+
segments: MusicSegment[];
|
|
245
562
|
}
|
|
246
563
|
//#endregion
|
|
247
|
-
//#region src/
|
|
248
|
-
export
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
564
|
+
//#region src/audio/collectMusicSegments.d.ts
|
|
565
|
+
export declare const collectMusicSegments: ({ isLooping, order, segments }: Music, from: number, to: number) => ScheduledMusicSegment[];
|
|
566
|
+
//#endregion
|
|
567
|
+
//#region src/audio/computeNoiseSamples.d.ts
|
|
568
|
+
export declare const computeNoiseSamples: (noiseBands: readonly number[], sampleRate: number) => Float32Array;
|
|
569
|
+
//#endregion
|
|
570
|
+
//#region src/models/audio/SoundEffect.d.ts
|
|
571
|
+
export interface SoundEffect {
|
|
572
|
+
frameSeconds: number;
|
|
573
|
+
leftLevels: number[][];
|
|
574
|
+
rightLevels: number[][];
|
|
575
|
+
sharedLevels: number[][];
|
|
253
576
|
}
|
|
254
577
|
//#endregion
|
|
255
|
-
//#region src/
|
|
256
|
-
export
|
|
257
|
-
|
|
258
|
-
|
|
578
|
+
//#region src/audio/computeSoundEffectSamples.d.ts
|
|
579
|
+
export declare const computeSoundEffectSamples: ({ frameSeconds, leftLevels, rightLevels, sharedLevels }: SoundEffect, sampleRate: number, seed?: number) => [Float32Array, Float32Array];
|
|
580
|
+
//#endregion
|
|
581
|
+
//#region src/audio/constants.d.ts
|
|
582
|
+
export declare const MUSIC_LOOKAHEAD_SECONDS = 2;
|
|
583
|
+
export declare const MUSIC_SCHEDULE_INTERVAL_MS = 500;
|
|
584
|
+
export declare const RELEASE_TIME_CONSTANTS = 7;
|
|
585
|
+
export declare const MUSIC_NOISE_LENGTH: number;
|
|
586
|
+
export declare const MUSIC_NOISE_BAND_CENTRES: number[];
|
|
587
|
+
export declare const MUSIC_EXPRESSION_WINDOW_SECONDS = 8;
|
|
588
|
+
export declare const A4_PITCH = 69;
|
|
589
|
+
export declare const A4_FREQUENCY = 440;
|
|
590
|
+
export declare const MIDI_VELOCITY_MAX = 127;
|
|
591
|
+
export declare const SOUND_EFFECT_BAND_EDGES: number[];
|
|
592
|
+
export declare const SOUND_EFFECT_FRAME_LENGTH = 2048;
|
|
593
|
+
//#endregion
|
|
594
|
+
//#region src/audio/createInstrumentWave.d.ts
|
|
595
|
+
export declare const createInstrumentWave: (context: BaseAudioContext, harmonics: number[]) => PeriodicWave;
|
|
596
|
+
//#endregion
|
|
597
|
+
//#region src/models/audio/MusicPlayer.d.ts
|
|
598
|
+
export interface MusicPlayer {
|
|
599
|
+
start: () => void;
|
|
600
|
+
stop: () => void;
|
|
259
601
|
}
|
|
260
602
|
//#endregion
|
|
261
|
-
//#region src/
|
|
262
|
-
export
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
603
|
+
//#region src/audio/createMusicPlayer.d.ts
|
|
604
|
+
export declare const createMusicPlayer: (context: AudioContext, music: Music, recordingBufferMap: ReadonlyMap<string, AudioBuffer>, destination?: AudioNode) => MusicPlayer;
|
|
605
|
+
//#endregion
|
|
606
|
+
//#region src/audio/createNoiseBuffer.d.ts
|
|
607
|
+
export declare const createNoiseBuffer: (context: BaseAudioContext, noiseBands: number[]) => AudioBuffer | undefined;
|
|
608
|
+
//#endregion
|
|
609
|
+
//#region src/audio/createSoundEffectBuffer.d.ts
|
|
610
|
+
export declare const createSoundEffectBuffer: (context: BaseAudioContext, soundEffect: SoundEffect) => AudioBuffer;
|
|
611
|
+
//#endregion
|
|
612
|
+
//#region src/audio/getMusicRecordingGain.d.ts
|
|
613
|
+
export declare const getMusicRecordingGain: ({ gain }: Pick<MusicRecording, "gain">, velocity: number) => number;
|
|
614
|
+
//#endregion
|
|
615
|
+
//#region src/audio/getMusicRecordingRate.d.ts
|
|
616
|
+
export declare const getMusicRecordingRate: ({ keyCenter, tune }: Pick<MusicRecording, "keyCenter" | "tune">, pitch: number, tuning: number) => number;
|
|
617
|
+
//#endregion
|
|
618
|
+
//#region src/audio/getSoundEffectBandBins.d.ts
|
|
619
|
+
export declare const getSoundEffectBandBins: (sampleRate: number) => (readonly [number, number])[];
|
|
620
|
+
//#endregion
|
|
621
|
+
//#region src/audio/renderMusicSegment.d.ts
|
|
622
|
+
export declare const renderMusicSegment: (music: Music, segmentIndex: number, sampleRate: number, recordingBufferMap: ReadonlyMap<string, AudioBuffer>) => Promise<AudioBuffer>;
|
|
623
|
+
//#endregion
|
|
624
|
+
//#region src/audio/scheduleMusicExpression.d.ts
|
|
625
|
+
export declare const scheduleMusicExpression: (gain: AudioParam, expression: number[], start: number) => void;
|
|
626
|
+
//#endregion
|
|
627
|
+
//#region src/audio/scheduleMusicNote.d.ts
|
|
628
|
+
export declare const scheduleMusicNote: (context: BaseAudioContext, destination: AudioNode, wave: PeriodicWave, noiseBuffer: AudioBuffer | undefined, { attack, decay, level, release, sustain, tuning }: Instrument, { duration, pitch, velocity }: MusicNote, time: number) => void;
|
|
629
|
+
//#endregion
|
|
630
|
+
//#region src/audio/scheduleMusicRecording.d.ts
|
|
631
|
+
export declare const scheduleMusicRecording: (context: BaseAudioContext, destination: AudioNode, recordingBufferMap: ReadonlyMap<string, AudioBuffer>, { recordingLevel, recordings, release, tuning }: Instrument, { duration, pitch, velocity }: MusicNote, time: number) => void;
|
|
632
|
+
//#endregion
|
|
633
|
+
//#region src/audio/selectMusicSample.d.ts
|
|
634
|
+
export declare const selectMusicSample: <T extends MusicSampleRange>(samples: T[], pitch: number, velocity: number) => T | undefined;
|
|
635
|
+
//#endregion
|
|
636
|
+
//#region src/audio/transformFourier.d.ts
|
|
637
|
+
export declare const transformFourier: (real: Float64Array, imaginary: Float64Array) => void;
|
|
638
|
+
//#endregion
|
|
639
|
+
//#region src/models/camera/FollowCameraSettings.d.ts
|
|
640
|
+
export interface FollowCameraSettings {
|
|
641
|
+
defaultDistance: number;
|
|
642
|
+
horizontalSensitivity: number;
|
|
643
|
+
verticalSensitivity: number;
|
|
644
|
+
}
|
|
645
|
+
//#endregion
|
|
646
|
+
//#region src/camera/constants.d.ts
|
|
647
|
+
export declare const FREE_CAMERA_BASE_SPEED = 8;
|
|
648
|
+
export declare const FREE_CAMERA_SPEED_PER_HEIGHT = .5;
|
|
649
|
+
export declare const FREE_CAMERA_CLEARANCE = 1.5;
|
|
650
|
+
export declare const FREE_CAMERA_MAX_PITCH: number;
|
|
651
|
+
export declare const FOLLOW_CAMERA_DEFAULT_SETTINGS: FollowCameraSettings;
|
|
652
|
+
export declare const FOLLOW_CAMERA_NEUTRAL_SENSITIVITY = 3;
|
|
653
|
+
export declare const FOLLOW_CAMERA_PIVOT_SHARE = .7;
|
|
654
|
+
export declare const FOLLOW_CAMERA_FOV = 45;
|
|
655
|
+
export declare const FOLLOW_CAMERA_MIN_PITCH: number;
|
|
656
|
+
export declare const FOLLOW_CAMERA_MAX_PITCH: number;
|
|
657
|
+
export declare const FOLLOW_CAMERA_MIN_DISTANCE = 1;
|
|
658
|
+
export declare const FOLLOW_CAMERA_MAX_DISTANCE = 6;
|
|
659
|
+
export declare const FOLLOW_CAMERA_DISTANCE_PER_ZOOM_STEP = .5;
|
|
660
|
+
export declare const FOLLOW_CAMERA_EASE_OUT_SPEED = 4;
|
|
661
|
+
export declare const FOLLOW_CAMERA_CLEARANCE = .2;
|
|
662
|
+
export declare const FOLLOW_CAMERA_ARM_STEP = .25;
|
|
663
|
+
//#endregion
|
|
664
|
+
//#region src/models/input/InputAction.d.ts
|
|
665
|
+
export declare enum InputAction {
|
|
666
|
+
Aim = "Aim",
|
|
667
|
+
Cancel = "Cancel",
|
|
668
|
+
Confirm = "Confirm",
|
|
669
|
+
Drop = "Drop",
|
|
670
|
+
ElementalBurst = "ElementalBurst",
|
|
671
|
+
ElementalSight = "ElementalSight",
|
|
672
|
+
ElementalSkill = "ElementalSkill",
|
|
673
|
+
HideInterface = "HideInterface",
|
|
674
|
+
Interact = "Interact",
|
|
675
|
+
Jump = "Jump",
|
|
676
|
+
NormalAttack = "NormalAttack",
|
|
677
|
+
OpenAdventurerHandbook = "OpenAdventurerHandbook",
|
|
678
|
+
OpenBattlePass = "OpenBattlePass",
|
|
679
|
+
OpenCharacter = "OpenCharacter",
|
|
680
|
+
OpenChat = "OpenChat",
|
|
681
|
+
OpenCoOp = "OpenCoOp",
|
|
682
|
+
OpenEvents = "OpenEvents",
|
|
683
|
+
OpenFriends = "OpenFriends",
|
|
684
|
+
OpenInventory = "OpenInventory",
|
|
685
|
+
OpenMap = "OpenMap",
|
|
686
|
+
OpenPaimonMenu = "OpenPaimonMenu",
|
|
687
|
+
OpenPartySetup = "OpenPartySetup",
|
|
688
|
+
OpenQuests = "OpenQuests",
|
|
689
|
+
OpenShortcutWheel = "OpenShortcutWheel",
|
|
690
|
+
OpenWish = "OpenWish",
|
|
691
|
+
QuestNavigation = "QuestNavigation",
|
|
692
|
+
QuickUseGadget = "QuickUseGadget",
|
|
693
|
+
ResetCamera = "ResetCamera",
|
|
694
|
+
ShowCursor = "ShowCursor",
|
|
695
|
+
Sprint = "Sprint",
|
|
696
|
+
SwitchToPartyMember1 = "SwitchToPartyMember1",
|
|
697
|
+
SwitchToPartyMember2 = "SwitchToPartyMember2",
|
|
698
|
+
SwitchToPartyMember3 = "SwitchToPartyMember3",
|
|
699
|
+
SwitchToPartyMember4 = "SwitchToPartyMember4",
|
|
700
|
+
SwitchToPartyMemberAndBurst1 = "SwitchToPartyMemberAndBurst1",
|
|
701
|
+
SwitchToPartyMemberAndBurst2 = "SwitchToPartyMemberAndBurst2",
|
|
702
|
+
SwitchToPartyMemberAndBurst3 = "SwitchToPartyMemberAndBurst3",
|
|
703
|
+
SwitchToPartyMemberAndBurst4 = "SwitchToPartyMemberAndBurst4",
|
|
704
|
+
SwitchWalkRun = "SwitchWalkRun"
|
|
705
|
+
}
|
|
706
|
+
export declare const InputActions: readonly InputAction[];
|
|
707
|
+
//#endregion
|
|
708
|
+
//#region src/models/input/InputState.d.ts
|
|
709
|
+
export interface InputState {
|
|
710
|
+
heldActions: ReadonlySet<InputAction>;
|
|
711
|
+
lookPitch: number;
|
|
712
|
+
lookYaw: number;
|
|
713
|
+
moveForward: number;
|
|
714
|
+
moveRight: number;
|
|
715
|
+
moveUp: number;
|
|
716
|
+
pressedActions: ReadonlySet<InputAction>;
|
|
717
|
+
zoomSteps: number;
|
|
718
|
+
}
|
|
719
|
+
//#endregion
|
|
720
|
+
//#region src/models/camera/FollowCamera.d.ts
|
|
721
|
+
export interface FollowCamera {
|
|
722
|
+
follow: (pivot: Vector3, origin: Vector3, frameSeconds: number) => void;
|
|
723
|
+
look: (input: InputState, facing: number) => void;
|
|
724
|
+
reset: (facing: number) => void;
|
|
725
|
+
readonly yaw: number;
|
|
726
|
+
}
|
|
727
|
+
//#endregion
|
|
728
|
+
//#region src/models/collision/GroundSample.d.ts
|
|
729
|
+
export interface GroundSample {
|
|
730
|
+
height: number;
|
|
731
|
+
normal: Vector3;
|
|
732
|
+
}
|
|
733
|
+
//#endregion
|
|
734
|
+
//#region src/models/collision/GroundQuery.d.ts
|
|
735
|
+
export interface GroundQuery {
|
|
736
|
+
getGround: (x: number, z: number) => GroundSample;
|
|
737
|
+
getWaterLevel: () => number;
|
|
738
|
+
}
|
|
739
|
+
//#endregion
|
|
740
|
+
//#region src/models/collision/CapsulePush.d.ts
|
|
741
|
+
export interface CapsulePush {
|
|
742
|
+
depth: number;
|
|
743
|
+
normal: Vector3;
|
|
744
|
+
}
|
|
745
|
+
//#endregion
|
|
746
|
+
//#region src/models/collision/LandmarkCollider.d.ts
|
|
747
|
+
export interface LandmarkCollider {
|
|
748
|
+
castSphere: (origin: Vector3, direction: Vector3, distance: number, radius: number) => number;
|
|
749
|
+
pushCapsule: (capsule: Capsule) => CapsulePush | undefined;
|
|
750
|
+
syncLandmarks: (root: Object3D) => void;
|
|
751
|
+
}
|
|
752
|
+
//#endregion
|
|
753
|
+
//#region src/models/camera/FollowCameraOptions.d.ts
|
|
754
|
+
export interface FollowCameraOptions {
|
|
755
|
+
camera: PerspectiveCamera;
|
|
756
|
+
ground: GroundQuery;
|
|
757
|
+
landmarkCollider: LandmarkCollider;
|
|
758
|
+
settings: FollowCameraSettings;
|
|
759
|
+
}
|
|
760
|
+
//#endregion
|
|
761
|
+
//#region src/camera/createFollowCamera.d.ts
|
|
762
|
+
export declare const createFollowCamera: ({ camera, ground, landmarkCollider, settings }: FollowCameraOptions) => FollowCamera;
|
|
763
|
+
//#endregion
|
|
764
|
+
//#region src/models/camera/FreeCamera.d.ts
|
|
765
|
+
export interface FreeCamera {
|
|
766
|
+
look: (input: InputState) => void;
|
|
767
|
+
step: (input: InputState, stepSeconds: number) => void;
|
|
768
|
+
}
|
|
769
|
+
//#endregion
|
|
770
|
+
//#region src/models/camera/FreeCameraOptions.d.ts
|
|
771
|
+
export interface FreeCameraOptions {
|
|
772
|
+
camera: PerspectiveCamera;
|
|
773
|
+
ground: GroundQuery;
|
|
774
|
+
}
|
|
775
|
+
//#endregion
|
|
776
|
+
//#region src/camera/createFreeCamera.d.ts
|
|
777
|
+
export declare const createFreeCamera: ({ camera, ground }: FreeCameraOptions) => FreeCamera;
|
|
778
|
+
//#endregion
|
|
779
|
+
//#region src/character/checkTransparentTexels.d.ts
|
|
780
|
+
export declare const checkTransparentTexels: (image: ImageBitmap) => boolean;
|
|
781
|
+
//#endregion
|
|
782
|
+
//#region src/character/constants.d.ts
|
|
783
|
+
export declare const PMX_UNIT_METRES = .08;
|
|
784
|
+
export declare const SHARED_TOON_RAMP_SHADES: readonly number[];
|
|
785
|
+
//#endregion
|
|
786
|
+
//#region src/models/character/CharacterMaterialKind.d.ts
|
|
787
|
+
export declare enum CharacterMaterialKind {
|
|
788
|
+
Body = 0,
|
|
789
|
+
Face = 1,
|
|
790
|
+
Hair = 2
|
|
791
|
+
}
|
|
792
|
+
//#endregion
|
|
793
|
+
//#region src/models/character/FaceDraw.d.ts
|
|
794
|
+
export interface FaceDraw {
|
|
795
|
+
flip: UniformNode<"float", number>;
|
|
796
|
+
flipFactor: number;
|
|
797
|
+
rotateOffset: number;
|
|
798
|
+
threshold: UniformNode<"float", number>;
|
|
799
|
+
}
|
|
800
|
+
//#endregion
|
|
801
|
+
//#region src/models/character/ShadingRegionColours.d.ts
|
|
802
|
+
export type ShadingRegionColours = Record<"five" | "four" | "one" | "three" | "two", Vector3Tuple>;
|
|
803
|
+
//#endregion
|
|
804
|
+
//#region src/models/character/OutlineRegions.d.ts
|
|
805
|
+
export interface OutlineRegions {
|
|
806
|
+
colors: ShadingRegionColours;
|
|
807
|
+
intensities: Record<keyof ShadingRegionColours, number>;
|
|
808
|
+
}
|
|
809
|
+
//#endregion
|
|
810
|
+
//#region src/models/character/RampLayout.d.ts
|
|
811
|
+
export declare enum RampLayout {
|
|
812
|
+
Horizontal = 0,
|
|
813
|
+
Vertical = 1
|
|
814
|
+
}
|
|
815
|
+
//#endregion
|
|
816
|
+
//#region src/models/character/ShadingRegionToggles.d.ts
|
|
817
|
+
export interface ShadingRegionToggles {
|
|
818
|
+
five: boolean;
|
|
819
|
+
four: boolean;
|
|
820
|
+
three: boolean;
|
|
821
|
+
two: boolean;
|
|
822
|
+
}
|
|
823
|
+
//#endregion
|
|
824
|
+
//#region src/models/character/CharacterShadingInputs.d.ts
|
|
825
|
+
export interface CharacterShadingInputs {
|
|
826
|
+
brightness: number;
|
|
827
|
+
color: Vector3Tuple;
|
|
828
|
+
contrastScale: number;
|
|
829
|
+
coolShadowMultiplyColors: ShadingRegionColours;
|
|
830
|
+
coolShadowTone: number;
|
|
831
|
+
desaturateScale: number;
|
|
832
|
+
emissionColor: Vector3Tuple;
|
|
833
|
+
emissionScaler: number;
|
|
834
|
+
faceDraw: FaceDraw;
|
|
835
|
+
faceMap?: Texture;
|
|
836
|
+
faceSoftness: number;
|
|
837
|
+
isCoolShadow: boolean;
|
|
838
|
+
isEmissionFromAlpha: boolean;
|
|
839
|
+
isLightMapAo: boolean;
|
|
840
|
+
isOutlineVertexWeighted: boolean;
|
|
841
|
+
isVertexAo: boolean;
|
|
842
|
+
isVertexRampWidth: boolean;
|
|
843
|
+
kind: CharacterMaterialKind;
|
|
844
|
+
lightArea: number;
|
|
845
|
+
lightMapTexture?: Texture;
|
|
846
|
+
mainTexture?: Texture;
|
|
847
|
+
metalDarkColor: Vector3Tuple;
|
|
848
|
+
metalLightColor: Vector3Tuple;
|
|
849
|
+
metalTexture?: Texture;
|
|
850
|
+
outlineDepths: Vector3Tuple;
|
|
851
|
+
outlineOffset?: {
|
|
852
|
+
blockBChannel: number;
|
|
853
|
+
size: number;
|
|
854
|
+
};
|
|
855
|
+
outlineRegions?: OutlineRegions;
|
|
856
|
+
outlineScales: Vector3Tuple;
|
|
857
|
+
rampLayout: RampLayout;
|
|
858
|
+
rampTexture: Texture;
|
|
859
|
+
rampWidth: number;
|
|
860
|
+
regionTints: Record<"five" | "four" | "three" | "two", Vector3Tuple>;
|
|
861
|
+
regionToggles: ShadingRegionToggles;
|
|
862
|
+
shadowMultiplyColors: ShadingRegionColours;
|
|
863
|
+
shininess: number;
|
|
864
|
+
specularColor: Vector3Tuple;
|
|
865
|
+
specularInShadow: number;
|
|
866
|
+
specularMultiplier: number;
|
|
867
|
+
vertexAo: number;
|
|
868
|
+
vertexRampWidth: number;
|
|
869
|
+
}
|
|
870
|
+
//#endregion
|
|
871
|
+
//#region src/models/character/PmxSphereMode.d.ts
|
|
872
|
+
export declare enum PmxSphereMode {
|
|
873
|
+
Disabled = 0,
|
|
874
|
+
Multiply = 1,
|
|
875
|
+
Add = 2,
|
|
876
|
+
AdditionalUv = 3
|
|
877
|
+
}
|
|
878
|
+
//#endregion
|
|
879
|
+
//#region src/models/character/PmxMaterial.d.ts
|
|
880
|
+
export interface PmxMaterial {
|
|
881
|
+
ambientColor: Vector3Tuple;
|
|
882
|
+
diffuseColor: Vector4Tuple;
|
|
883
|
+
edgeColor: Vector4Tuple;
|
|
884
|
+
edgeSize: number;
|
|
885
|
+
indexCount: number;
|
|
886
|
+
isDoubleSided: boolean;
|
|
887
|
+
isOutlined: boolean;
|
|
888
|
+
isToonShared: boolean;
|
|
889
|
+
name: string;
|
|
890
|
+
specularColor: Vector3Tuple;
|
|
891
|
+
specularity: number;
|
|
892
|
+
sphereMode: PmxSphereMode;
|
|
893
|
+
sphereTextureIndex: number;
|
|
894
|
+
textureIndex: number;
|
|
895
|
+
toonIndex: number;
|
|
896
|
+
}
|
|
897
|
+
//#endregion
|
|
898
|
+
//#region src/models/character/CharacterMaterialOptions.d.ts
|
|
899
|
+
export interface CharacterMaterialOptions {
|
|
900
|
+
isTextureTransparent?: boolean;
|
|
901
|
+
lightUniforms: LightUniforms;
|
|
902
|
+
pmxMaterial: PmxMaterial;
|
|
903
|
+
rampTexture: DataTexture;
|
|
904
|
+
shadingInputs?: Partial<CharacterShadingInputs>;
|
|
905
|
+
sphereTexture?: Texture;
|
|
906
|
+
texture?: Texture;
|
|
907
|
+
toonTexture?: Texture;
|
|
908
|
+
}
|
|
909
|
+
//#endregion
|
|
910
|
+
//#region src/models/nodes/OutlineWidthKnots.d.ts
|
|
911
|
+
export interface OutlineWidthKnots {
|
|
912
|
+
depths: Vector3Tuple;
|
|
913
|
+
scales: Vector3Tuple;
|
|
914
|
+
}
|
|
915
|
+
//#endregion
|
|
916
|
+
//#region src/models/nodes/ToonEdge.d.ts
|
|
917
|
+
export interface ToonEdge {
|
|
918
|
+
color: Node<"vec4"> | Vector4Tuple;
|
|
919
|
+
isVertexWeighted?: boolean;
|
|
920
|
+
offset?: {
|
|
921
|
+
blockBChannel: number;
|
|
922
|
+
size: number;
|
|
923
|
+
};
|
|
924
|
+
size: number;
|
|
925
|
+
widthKnots: OutlineWidthKnots;
|
|
926
|
+
}
|
|
927
|
+
//#endregion
|
|
928
|
+
//#region src/models/nodes/ToonNodeMaterial.d.ts
|
|
929
|
+
export declare class ToonNodeMaterial extends MeshToonNodeMaterial {
|
|
930
|
+
edge?: ToonEdge;
|
|
931
|
+
emissiveNode: Node | null;
|
|
932
|
+
readonly isMeshToonMaterial: boolean;
|
|
933
|
+
override readonly isMeshToonNodeMaterial: boolean;
|
|
934
|
+
sphereMap?: Texture$1;
|
|
935
|
+
constructor(parameters: MeshToonNodeMaterialParameters, isOutlined: boolean, edge?: ToonEdge);
|
|
936
|
+
}
|
|
937
|
+
//#endregion
|
|
938
|
+
//#region src/character/createCharacterMaterial.d.ts
|
|
939
|
+
export declare const createCharacterMaterial: ({ isTextureTransparent, lightUniforms, pmxMaterial: { diffuseColor: [red, green, blue, opacity], edgeColor, edgeSize, isDoubleSided, isOutlined, isToonShared, specularColor, specularity, sphereMode, toonIndex }, rampTexture, shadingInputs: gameShadingInputs, sphereTexture, texture: diffuseTexture, toonTexture }: CharacterMaterialOptions) => ToonNodeMaterial;
|
|
940
|
+
//#endregion
|
|
941
|
+
//#region src/character/createCharacterShadingInputs.d.ts
|
|
942
|
+
export type CharacterShadingOverrides = Partial<CharacterShadingInputs> & {
|
|
943
|
+
rampTexture: Texture;
|
|
944
|
+
};
|
|
945
|
+
export declare const createCharacterShadingInputs: (overrides: CharacterShadingOverrides) => CharacterShadingInputs;
|
|
946
|
+
//#endregion
|
|
947
|
+
//#region src/models/character/PmxBone.d.ts
|
|
948
|
+
export interface PmxBone {
|
|
949
|
+
name: string;
|
|
950
|
+
parentIndex: number;
|
|
951
|
+
position: Vector3Tuple;
|
|
952
|
+
}
|
|
953
|
+
//#endregion
|
|
954
|
+
//#region src/models/character/PmxJointKind.d.ts
|
|
955
|
+
export declare enum PmxJointKind {
|
|
956
|
+
SpringSixDegreesOfFreedom = 0,
|
|
957
|
+
SixDegreesOfFreedom = 1,
|
|
958
|
+
PointToPoint = 2,
|
|
959
|
+
ConeTwist = 3,
|
|
960
|
+
Slider = 4,
|
|
961
|
+
Hinge = 5
|
|
962
|
+
}
|
|
963
|
+
//#endregion
|
|
964
|
+
//#region src/models/character/PmxJoint.d.ts
|
|
965
|
+
export interface PmxJoint {
|
|
966
|
+
firstRigidBodyIndex: number;
|
|
967
|
+
kind: PmxJointKind;
|
|
968
|
+
name: string;
|
|
969
|
+
position: Vector3Tuple;
|
|
970
|
+
rotation: Vector3Tuple;
|
|
971
|
+
rotationMaximum: Vector3Tuple;
|
|
972
|
+
rotationMinimum: Vector3Tuple;
|
|
973
|
+
rotationSpring: Vector3Tuple;
|
|
974
|
+
secondRigidBodyIndex: number;
|
|
975
|
+
translationMaximum: Vector3Tuple;
|
|
976
|
+
translationMinimum: Vector3Tuple;
|
|
977
|
+
translationSpring: Vector3Tuple;
|
|
978
|
+
}
|
|
979
|
+
//#endregion
|
|
980
|
+
//#region src/models/character/PmxMorphKind.d.ts
|
|
981
|
+
export declare enum PmxMorphKind {
|
|
982
|
+
Group = 0,
|
|
983
|
+
Vertex = 1,
|
|
984
|
+
Bone = 2,
|
|
985
|
+
Uv = 3,
|
|
986
|
+
AdditionalUv1 = 4,
|
|
987
|
+
AdditionalUv2 = 5,
|
|
988
|
+
AdditionalUv3 = 6,
|
|
989
|
+
AdditionalUv4 = 7,
|
|
990
|
+
Material = 8,
|
|
991
|
+
Flip = 9,
|
|
992
|
+
Impulse = 10
|
|
993
|
+
}
|
|
994
|
+
//#endregion
|
|
995
|
+
//#region src/models/character/PmxMorph.d.ts
|
|
996
|
+
export interface PmxMorph {
|
|
997
|
+
indices: Uint32Array;
|
|
998
|
+
kind: PmxMorphKind;
|
|
999
|
+
name: string;
|
|
1000
|
+
values: Float32Array;
|
|
1001
|
+
}
|
|
1002
|
+
//#endregion
|
|
1003
|
+
//#region src/models/character/PmxPhysicsMode.d.ts
|
|
1004
|
+
export declare enum PmxPhysicsMode {
|
|
1005
|
+
FollowBone = 0,
|
|
1006
|
+
Physics = 1,
|
|
1007
|
+
PhysicsWithBone = 2
|
|
1008
|
+
}
|
|
1009
|
+
//#endregion
|
|
1010
|
+
//#region src/models/character/PmxRigidBodyShape.d.ts
|
|
1011
|
+
export declare enum PmxRigidBodyShape {
|
|
1012
|
+
Sphere = 0,
|
|
1013
|
+
Box = 1,
|
|
1014
|
+
Capsule = 2
|
|
1015
|
+
}
|
|
1016
|
+
//#endregion
|
|
1017
|
+
//#region src/models/character/PmxRigidBody.d.ts
|
|
1018
|
+
export interface PmxRigidBody {
|
|
1019
|
+
angularDamping: number;
|
|
1020
|
+
boneIndex: number;
|
|
1021
|
+
friction: number;
|
|
1022
|
+
group: number;
|
|
1023
|
+
linearDamping: number;
|
|
1024
|
+
mass: number;
|
|
1025
|
+
name: string;
|
|
1026
|
+
nonCollidingGroups: number;
|
|
1027
|
+
physicsMode: PmxPhysicsMode;
|
|
1028
|
+
position: Vector3Tuple;
|
|
1029
|
+
restitution: number;
|
|
1030
|
+
rotation: Vector3Tuple;
|
|
1031
|
+
shape: PmxRigidBodyShape;
|
|
1032
|
+
size: Vector3Tuple;
|
|
1033
|
+
}
|
|
1034
|
+
//#endregion
|
|
1035
|
+
//#region src/models/character/PmxVertices.d.ts
|
|
1036
|
+
export interface PmxVertices {
|
|
1037
|
+
normals: Float32Array;
|
|
1038
|
+
positions: Float32Array;
|
|
1039
|
+
skinIndices: Uint16Array;
|
|
1040
|
+
skinWeights: Float32Array;
|
|
1041
|
+
subUvs: Float32Array;
|
|
1042
|
+
uvs: Float32Array;
|
|
1043
|
+
}
|
|
1044
|
+
//#endregion
|
|
1045
|
+
//#region src/models/character/PmxModel.d.ts
|
|
1046
|
+
export interface PmxModel {
|
|
1047
|
+
bones: PmxBone[];
|
|
1048
|
+
indices: Uint32Array;
|
|
1049
|
+
joints: PmxJoint[];
|
|
1050
|
+
materials: PmxMaterial[];
|
|
1051
|
+
morphs: PmxMorph[];
|
|
1052
|
+
name: string;
|
|
1053
|
+
rigidBodies: PmxRigidBody[];
|
|
1054
|
+
textures: string[];
|
|
1055
|
+
vertices: PmxVertices;
|
|
1056
|
+
}
|
|
1057
|
+
//#endregion
|
|
1058
|
+
//#region src/character/createPmxGeometry.d.ts
|
|
1059
|
+
export declare const createPmxGeometry: ({ indices, materials, vertices: { normals, positions, skinIndices, skinWeights, subUvs, uvs } }: Pick<PmxModel, "indices" | "materials" | "vertices">) => BufferGeometry;
|
|
1060
|
+
//#endregion
|
|
1061
|
+
//#region src/character/createPmxMesh.d.ts
|
|
1062
|
+
export declare const createPmxMesh: <TMaterial extends Material>(pmxModel: PmxModel, materials: TMaterial[]) => SkinnedMesh<BufferGeometry, TMaterial[]>;
|
|
1063
|
+
//#endregion
|
|
1064
|
+
//#region src/character/createPmxSkeleton.d.ts
|
|
1065
|
+
export declare const createPmxSkeleton: (pmxBones: readonly PmxBone[]) => Skeleton;
|
|
1066
|
+
//#endregion
|
|
1067
|
+
//#region src/character/createPmxTexture.d.ts
|
|
1068
|
+
export declare const createPmxTexture: (blob: Blob) => Promise<Texture>;
|
|
1069
|
+
export declare const createPmxToonTexture: (blob: Blob) => Promise<Texture>;
|
|
1070
|
+
//#endregion
|
|
1071
|
+
//#region src/character/getSharedToonRamp.d.ts
|
|
1072
|
+
export declare const getSharedToonRamp: (toonIndex: number) => DataTexture | undefined;
|
|
1073
|
+
//#endregion
|
|
1074
|
+
//#region src/character/parsePmx.d.ts
|
|
1075
|
+
export declare const parsePmx: (buffer: ArrayBuffer) => PmxModel;
|
|
1076
|
+
//#endregion
|
|
1077
|
+
//#region src/models/character/PmxReader.d.ts
|
|
1078
|
+
export declare class PmxReader {
|
|
1079
|
+
#private;
|
|
1080
|
+
readonly additionalVectorCount: number;
|
|
1081
|
+
readonly boneIndexSize: number;
|
|
1082
|
+
readonly materialIndexSize: number;
|
|
1083
|
+
readonly morphIndexSize: number;
|
|
1084
|
+
readonly rigidBodyIndexSize: number;
|
|
1085
|
+
readonly textureIndexSize: number;
|
|
1086
|
+
readonly vertexIndexSize: number;
|
|
1087
|
+
constructor(buffer: ArrayBuffer);
|
|
1088
|
+
readBoneIndex(): number;
|
|
1089
|
+
readFloat32(): number;
|
|
1090
|
+
readInt32(): number;
|
|
1091
|
+
readMaterialIndex(): number;
|
|
1092
|
+
readMirroredRotation(): Vector3Tuple;
|
|
1093
|
+
readMirroredVector3(): Vector3Tuple;
|
|
1094
|
+
readMirroredVector3Into(target: Float32Array, offset: number): void;
|
|
1095
|
+
readMorphIndex(): number;
|
|
1096
|
+
readRigidBodyIndex(): number;
|
|
1097
|
+
readText(): string;
|
|
1098
|
+
readTextureIndex(): number;
|
|
1099
|
+
readUint8(): number;
|
|
1100
|
+
readUint16(): number;
|
|
1101
|
+
readVector3(): Vector3Tuple;
|
|
1102
|
+
readVertexIndex(): number;
|
|
1103
|
+
skip(byteCount: number): void;
|
|
1104
|
+
}
|
|
1105
|
+
//#endregion
|
|
1106
|
+
//#region src/character/parsePmxBones.d.ts
|
|
1107
|
+
export declare const parsePmxBones: (reader: PmxReader) => PmxBone[];
|
|
1108
|
+
//#endregion
|
|
1109
|
+
//#region src/character/parsePmxJoints.d.ts
|
|
1110
|
+
export declare const parsePmxJoints: (reader: PmxReader) => PmxJoint[];
|
|
1111
|
+
//#endregion
|
|
1112
|
+
//#region src/character/parsePmxMaterials.d.ts
|
|
1113
|
+
export declare const parsePmxMaterials: (reader: PmxReader) => PmxMaterial[];
|
|
1114
|
+
//#endregion
|
|
1115
|
+
//#region src/character/parsePmxMorphs.d.ts
|
|
1116
|
+
export declare const parsePmxMorphs: (reader: PmxReader) => PmxMorph[];
|
|
1117
|
+
//#endregion
|
|
1118
|
+
//#region src/character/parsePmxRigidBodies.d.ts
|
|
1119
|
+
export declare const parsePmxRigidBodies: (reader: PmxReader) => PmxRigidBody[];
|
|
1120
|
+
//#endregion
|
|
1121
|
+
//#region src/character/parsePmxVertices.d.ts
|
|
1122
|
+
export declare const parsePmxVertices: (reader: PmxReader) => PmxVertices;
|
|
1123
|
+
//#endregion
|
|
1124
|
+
//#region src/character/pose/advanceStridePhase.d.ts
|
|
1125
|
+
export declare const advanceStridePhase: (stridePhase: number, speed: number, strideMetres: number, delta: number) => number;
|
|
1126
|
+
//#endregion
|
|
1127
|
+
//#region src/models/locomotion/LocomotionState.d.ts
|
|
1128
|
+
export declare enum LocomotionState {
|
|
1129
|
+
Climb = "Climb",
|
|
1130
|
+
ClimbJump = "ClimbJump",
|
|
1131
|
+
Dash = "Dash",
|
|
1132
|
+
Drown = "Drown",
|
|
1133
|
+
Fall = "Fall",
|
|
1134
|
+
Glide = "Glide",
|
|
1135
|
+
Idle = "Idle",
|
|
1136
|
+
Jump = "Jump",
|
|
1137
|
+
Plunge = "Plunge",
|
|
1138
|
+
Run = "Run",
|
|
1139
|
+
Sprint = "Sprint",
|
|
1140
|
+
Swim = "Swim",
|
|
1141
|
+
SwimDash = "SwimDash",
|
|
1142
|
+
Walk = "Walk"
|
|
1143
|
+
}
|
|
1144
|
+
//#endregion
|
|
1145
|
+
//#region src/models/character/CharacterPoseInput.d.ts
|
|
1146
|
+
export interface CharacterPoseInput {
|
|
1147
|
+
elapsed: number;
|
|
1148
|
+
state: LocomotionState;
|
|
1149
|
+
stridePhase: number;
|
|
1150
|
+
}
|
|
1151
|
+
//#endregion
|
|
1152
|
+
//#region src/models/character/MmdBoneName.d.ts
|
|
1153
|
+
export declare enum MmdBoneName {
|
|
1154
|
+
Center = "センター",
|
|
1155
|
+
Head = "頭",
|
|
1156
|
+
LeftAnkle = "左足首",
|
|
1157
|
+
LeftArm = "左腕",
|
|
1158
|
+
LeftElbow = "左ひじ",
|
|
1159
|
+
LeftKnee = "左ひざ",
|
|
1160
|
+
LeftLeg = "左足",
|
|
1161
|
+
LeftShoulder = "左肩",
|
|
1162
|
+
LeftWrist = "左手首",
|
|
1163
|
+
Lower = "下半身",
|
|
1164
|
+
Neck = "首",
|
|
1165
|
+
RightAnkle = "右足首",
|
|
1166
|
+
RightArm = "右腕",
|
|
1167
|
+
RightElbow = "右ひじ",
|
|
1168
|
+
RightKnee = "右ひざ",
|
|
1169
|
+
RightLeg = "右足",
|
|
1170
|
+
RightShoulder = "右肩",
|
|
1171
|
+
RightWrist = "右手首",
|
|
1172
|
+
Upper = "上半身",
|
|
1173
|
+
Upper2 = "上半身2"
|
|
1174
|
+
}
|
|
1175
|
+
//#endregion
|
|
1176
|
+
//#region src/models/character/CharacterPoseRotations.d.ts
|
|
1177
|
+
export type CharacterPoseRotations = Record<MmdBoneName, Quaternion>;
|
|
1178
|
+
//#endregion
|
|
1179
|
+
//#region src/character/pose/computeCharacterPose.d.ts
|
|
1180
|
+
export declare const computeCharacterPose: ({ elapsed, state, stridePhase }: CharacterPoseInput, rotations: CharacterPoseRotations) => void;
|
|
1181
|
+
//#endregion
|
|
1182
|
+
//#region src/character/pose/constants.d.ts
|
|
1183
|
+
export declare const POSE_BREATH_SECONDS = 4;
|
|
1184
|
+
export declare const POSE_CHEST_BREATH_RADIANS = .02;
|
|
1185
|
+
export declare const POSE_SHOULDER_BREATH_RADIANS = .02;
|
|
1186
|
+
export declare const POSE_ARM_LOWER_RADIANS = 1.2;
|
|
1187
|
+
export declare const POSE_ARM_CHAINS: readonly {
|
|
1188
|
+
arm: MmdBoneName;
|
|
1189
|
+
elbow: MmdBoneName;
|
|
1190
|
+
tDirection: Vector3Tuple;
|
|
1191
|
+
}[];
|
|
1192
|
+
export declare const POSE_ARM_BEND_RADIANS = .2;
|
|
1193
|
+
export declare const POSE_CROSSFADE_SECONDS = .25;
|
|
1194
|
+
export interface PoseGait {
|
|
1195
|
+
armBendRadians: number;
|
|
1196
|
+
armSwingRadians: number;
|
|
1197
|
+
kneeBendRadians: number;
|
|
1198
|
+
leanRadians: number;
|
|
1199
|
+
legSwingRadians: number;
|
|
1200
|
+
strideMetres: number;
|
|
1201
|
+
}
|
|
1202
|
+
export declare const POSE_GAITS: Partial<Record<LocomotionState, PoseGait>>;
|
|
1203
|
+
export interface PoseAirStance {
|
|
1204
|
+
armLowerRadians: number;
|
|
1205
|
+
kneeBendRadians: number;
|
|
1206
|
+
leanRadians: number;
|
|
1207
|
+
}
|
|
1208
|
+
export declare const POSE_AIR_STANCES: Partial<Record<LocomotionState, PoseAirStance>>;
|
|
1209
|
+
export declare const MMD_BONE_NAME_MAP: Record<MmdBoneName, string>;
|
|
1210
|
+
//#endregion
|
|
1211
|
+
//#region src/character/pose/createCharacterPoseRotations.d.ts
|
|
1212
|
+
export declare const createCharacterPoseRotations: () => CharacterPoseRotations;
|
|
1213
|
+
//#endregion
|
|
1214
|
+
//#region src/models/character/CharacterBoneNameMap.d.ts
|
|
1215
|
+
export type CharacterBoneNameMap = Partial<Record<MmdBoneName, string>>;
|
|
1216
|
+
//#endregion
|
|
1217
|
+
//#region src/models/locomotion/Locomotion.d.ts
|
|
1218
|
+
export interface Locomotion {
|
|
1219
|
+
capsuleHeight: number;
|
|
1220
|
+
capsuleRadius: number;
|
|
1221
|
+
climbJumpHeight: number;
|
|
1222
|
+
climbJumpSeconds: number;
|
|
1223
|
+
climbSpeed: number;
|
|
1224
|
+
dashSeconds: number;
|
|
1225
|
+
dashSpeed: number;
|
|
1226
|
+
drownSeconds: number;
|
|
1227
|
+
glideForwardSpeed: number;
|
|
1228
|
+
glideMinHeight: number;
|
|
1229
|
+
glideSinkSpeed: number;
|
|
1230
|
+
gravity: number;
|
|
1231
|
+
jumpHeight: number;
|
|
1232
|
+
maxFallSpeed: number;
|
|
1233
|
+
maxWalkableSlope: number;
|
|
1234
|
+
plungeSpeed: number;
|
|
1235
|
+
runSpeed: number;
|
|
1236
|
+
sprintSpeed: number;
|
|
1237
|
+
stepHeight: number;
|
|
1238
|
+
swimDashSpeed: number;
|
|
1239
|
+
swimDepth: number;
|
|
1240
|
+
swimSpeed: number;
|
|
1241
|
+
walkSpeed: number;
|
|
1242
|
+
}
|
|
1243
|
+
//#endregion
|
|
1244
|
+
//#region src/models/locomotion/LocomotionPhase.d.ts
|
|
1245
|
+
export interface LocomotionPhase {
|
|
1246
|
+
state: LocomotionState;
|
|
1247
|
+
stateSeconds: number;
|
|
1248
|
+
}
|
|
1249
|
+
//#endregion
|
|
1250
|
+
//#region src/character/pose/createCharacterPoser.d.ts
|
|
1251
|
+
export interface CharacterPoser {
|
|
1252
|
+
update: (update: CharacterPoseUpdate) => void;
|
|
1253
|
+
}
|
|
1254
|
+
export interface CharacterPoseUpdate {
|
|
1255
|
+
delta: number;
|
|
1256
|
+
locomotion: Locomotion;
|
|
1257
|
+
phase: LocomotionPhase;
|
|
1258
|
+
}
|
|
1259
|
+
export declare const createCharacterPoser: (skinnedMesh: SkinnedMesh, boneNameMap?: CharacterBoneNameMap) => CharacterPoser;
|
|
1260
|
+
//#endregion
|
|
1261
|
+
//#region src/character/pose/findSkinnedMesh.d.ts
|
|
1262
|
+
export declare const findSkinnedMesh: (object: Object3D) => SkinnedMesh | undefined;
|
|
1263
|
+
//#endregion
|
|
1264
|
+
//#region src/character/shading/constants.d.ts
|
|
1265
|
+
export declare const REGION_FLOORS: {
|
|
1266
|
+
readonly five: 0.6;
|
|
1267
|
+
readonly four: 0.2;
|
|
1268
|
+
readonly three: 0.4;
|
|
1269
|
+
readonly two: 0.8;
|
|
1270
|
+
};
|
|
1271
|
+
export declare const RAMP_ROW_BASE = .05;
|
|
1272
|
+
export declare const COOL_RAMP_ROW_BASE = .55;
|
|
1273
|
+
export declare const RAMP_ROW_STEP = .1;
|
|
1274
|
+
export declare const NEUTRAL_LIGHT_MAP_GREEN = .5;
|
|
1275
|
+
export declare const EMISSION_ALPHA_FLOOR = .01;
|
|
1276
|
+
export declare const TOON_LOW = .05;
|
|
1277
|
+
export declare const TOON_HIGH = .95;
|
|
1278
|
+
export declare const MINIMUM_RAMP_WIDTH_VERTEX = .01;
|
|
1279
|
+
export declare const MINIMUM_OUTLINE_KNOT_SPAN = .001;
|
|
1280
|
+
export declare const OUTLINE_PROJECTION_SCALE = 2.414;
|
|
1281
|
+
export declare const OUTLINE_WIDTH_SCALE = .41425;
|
|
1282
|
+
export declare const OUTLINE_MAIN_TEXTURE_SHARE = .2;
|
|
1283
|
+
export declare const DESATURATION_WEIGHTS: readonly [number, number, number];
|
|
1284
|
+
export declare const HALF_LAMBERT_SCALE = .4975;
|
|
1285
|
+
export declare const HALF_LAMBERT_OFFSET = .5;
|
|
1286
|
+
export declare const DEFAULT_LIGHT_AREA: number;
|
|
1287
|
+
export declare const DEFAULT_RAMP_WIDTH: number;
|
|
1288
|
+
export declare const MINIMUM_FACE_THRESHOLD = 1e-4;
|
|
1289
|
+
export declare const MAXIMUM_FACE_THRESHOLD = .9999;
|
|
1290
|
+
export declare const MAXIMUM_WINDOW_FLOOR = .9989;
|
|
1291
|
+
export declare const FLAT_LIGHT_MAP: Readonly<[number, number, number, number]>;
|
|
1292
|
+
//#endregion
|
|
1293
|
+
//#region src/character/shading/createCharacterShadingNode.d.ts
|
|
1294
|
+
export declare const createCharacterShadingNode: (inputs: CharacterShadingInputs, { lightColor, sunDirection }: Pick<LightUniforms, "lightColor" | "sunDirection">) => Node<"vec3">;
|
|
1295
|
+
//#endregion
|
|
1296
|
+
//#region src/character/shading/createFaceShadeNode.d.ts
|
|
1297
|
+
export declare const createFaceShadeNode: (faceMap: Texture | undefined, softness: number, { flip, threshold }: FaceDraw) => Node<"float">;
|
|
1298
|
+
//#endregion
|
|
1299
|
+
//#region src/character/shading/createOutlineColorNode.d.ts
|
|
1300
|
+
export declare const createOutlineColorNode: ({ color, contrastScale, desaturateScale, lightMapTexture, mainTexture, regionTints, regionToggles }: CharacterShadingInputs, { colors, intensities }: OutlineRegions) => Node<"vec3">;
|
|
1301
|
+
//#endregion
|
|
1302
|
+
//#region src/character/shading/createOutlineScaleNode.d.ts
|
|
1303
|
+
export declare const createOutlineScaleNode: (depths: Vector3Tuple, scales: Vector3Tuple) => Node<"float">;
|
|
1304
|
+
//#endregion
|
|
1305
|
+
//#region src/character/shading/createRampColumnNode.d.ts
|
|
1306
|
+
export declare const createRampColumnNode: (threshold: Node<"float">, lightArea: number, rampWidth: Node<"float">) => Node<"float">;
|
|
1307
|
+
//#endregion
|
|
1308
|
+
//#region src/character/shading/createRampUvNode.d.ts
|
|
1309
|
+
export declare const createRampUvNode: (layout: RampLayout, column: Node<"float">, row: Node<"float">) => Node<"vec2">;
|
|
1310
|
+
//#endregion
|
|
1311
|
+
//#region src/character/shading/createShadingRegionNode.d.ts
|
|
1312
|
+
export declare const createShadingRegionNode: (alpha: Node<"float">, toggles: ShadingRegionToggles) => Node<"float">;
|
|
1313
|
+
//#endregion
|
|
1314
|
+
//#region src/character/shading/createToneNode.d.ts
|
|
1315
|
+
export declare const createToneNode: (colour: Node<"vec3">, desaturateScale: number, contrastScale: number) => Node<"vec3">;
|
|
1316
|
+
//#endregion
|
|
1317
|
+
//#region src/models/character/ToonThresholdNodeInputs.d.ts
|
|
1318
|
+
export interface ToonThresholdNodeInputs {
|
|
1319
|
+
isLightMapAo: boolean;
|
|
1320
|
+
isVertexAo: boolean;
|
|
1321
|
+
lightMapGreen: Node<"float">;
|
|
1322
|
+
sunTerm: Node<"float">;
|
|
1323
|
+
vertexAo: number;
|
|
1324
|
+
}
|
|
1325
|
+
//#endregion
|
|
1326
|
+
//#region src/character/shading/createToonThresholdNode.d.ts
|
|
1327
|
+
export declare const createToonThresholdNode: ({ isLightMapAo, isVertexAo, lightMapGreen, sunTerm, vertexAo }: ToonThresholdNodeInputs) => Node<"float">;
|
|
1328
|
+
//#endregion
|
|
1329
|
+
//#region src/character/shading/getDesaturatedColour.d.ts
|
|
1330
|
+
export declare const getDesaturatedColour: (colour: Vector3, desaturateScale: number) => Vector3;
|
|
1331
|
+
//#endregion
|
|
1332
|
+
//#region src/character/shading/getOutlineDepth.d.ts
|
|
1333
|
+
export declare const getOutlineDepth: (viewZ: number, projectionYScale: number) => number;
|
|
1334
|
+
//#endregion
|
|
1335
|
+
//#region src/character/shading/getOutlineScale.d.ts
|
|
1336
|
+
export declare const getOutlineScale: (depth: number, knotDepths: Vector3, knotScales: Vector3) => number;
|
|
1337
|
+
//#endregion
|
|
1338
|
+
//#region src/character/shading/getRampColumn.d.ts
|
|
1339
|
+
export declare const getRampColumn: (threshold: number, lightArea: number, rampWidth: number) => number;
|
|
1340
|
+
//#endregion
|
|
1341
|
+
//#region src/character/shading/getRampRow.d.ts
|
|
1342
|
+
export declare const getRampRow: (region: number, isCoolShadow: boolean) => number;
|
|
1343
|
+
//#endregion
|
|
1344
|
+
//#region src/models/character/RampWidthInputs.d.ts
|
|
1345
|
+
export interface RampWidthInputs {
|
|
1346
|
+
isVertexRampWidth: boolean;
|
|
1347
|
+
rampWidth: number;
|
|
1348
|
+
vertexRampWidth: number;
|
|
1349
|
+
}
|
|
1350
|
+
//#endregion
|
|
1351
|
+
//#region src/character/shading/getRampWidth.d.ts
|
|
1352
|
+
export declare const getRampWidth: ({ isVertexRampWidth, rampWidth, vertexRampWidth }: RampWidthInputs) => number;
|
|
1353
|
+
//#endregion
|
|
1354
|
+
//#region src/character/shading/getShadingRegion.d.ts
|
|
1355
|
+
export declare const getShadingRegion: (alpha: number, toggles: ShadingRegionToggles) => number;
|
|
1356
|
+
//#endregion
|
|
1357
|
+
//#region src/character/shading/getToneColour.d.ts
|
|
1358
|
+
export declare const getToneColour: (colour: Vector3, desaturateScale: number, contrastScale: number) => Vector3;
|
|
1359
|
+
//#endregion
|
|
1360
|
+
//#region src/character/shading/getToonThreshold.d.ts
|
|
1361
|
+
export interface ToonThresholdInputs {
|
|
1362
|
+
isLightMapAo: boolean;
|
|
1363
|
+
isVertexAo: boolean;
|
|
1364
|
+
lightMapGreen: number;
|
|
1365
|
+
sunTerm: number;
|
|
1366
|
+
vertexAo: number;
|
|
1367
|
+
}
|
|
1368
|
+
export declare const getToonThreshold: ({ isLightMapAo, isVertexAo, lightMapGreen, sunTerm, vertexAo }: ToonThresholdInputs) => number;
|
|
1369
|
+
//#endregion
|
|
1370
|
+
//#region src/character/shading/selectRegionNode.d.ts
|
|
1371
|
+
export declare const selectRegionNode: <TNodeType>(region: Node<"float">, toRegionNode: (regionName: keyof ShadingRegionColours) => Node<TNodeType>) => Node<TNodeType>;
|
|
1372
|
+
//#endregion
|
|
1373
|
+
//#region src/character/shading/updateFaceDraw.d.ts
|
|
1374
|
+
export declare const createFaceDraw: ({ flipFactor, rotateOffset }?: Partial<Pick<FaceDraw, "flipFactor" | "rotateOffset">>) => FaceDraw;
|
|
1375
|
+
export declare const updateFaceDraw: (faceDraw: FaceDraw, lightDirection: Vector3, rootRotation: Quaternion) => void;
|
|
1376
|
+
//#endregion
|
|
1377
|
+
//#region src/models/clock/GameClock.d.ts
|
|
1378
|
+
export interface GameClock {
|
|
1379
|
+
minutes: number;
|
|
1380
|
+
minutesPerSecond: number;
|
|
1381
|
+
}
|
|
1382
|
+
//#endregion
|
|
1383
|
+
//#region src/clock/advanceGameClock.d.ts
|
|
1384
|
+
export declare const advanceGameClock: (gameClock: GameClock, deltaSeconds: number) => void;
|
|
1385
|
+
//#endregion
|
|
1386
|
+
//#region src/clock/constants.d.ts
|
|
1387
|
+
export declare const MINUTES_PER_DAY = 1440;
|
|
1388
|
+
export declare const GAME_MINUTES_PER_SECOND = 1;
|
|
1389
|
+
//#endregion
|
|
1390
|
+
//#region src/collision/constants.d.ts
|
|
1391
|
+
export declare const GROUND_NORMAL_SPAN = .1;
|
|
1392
|
+
export declare const SPHERE_CAST_STRIDE_SHARE = .5;
|
|
1393
|
+
//#endregion
|
|
1394
|
+
//#region src/collision/createGroundQuery.d.ts
|
|
1395
|
+
export declare const createGroundQuery: (getHeight: (x: number, z: number) => number, waterLevel: number) => GroundQuery;
|
|
1396
|
+
//#endregion
|
|
1397
|
+
//#region src/collision/createLandmarkCollider.d.ts
|
|
1398
|
+
export declare const createLandmarkCollider: () => LandmarkCollider;
|
|
1399
|
+
//#endregion
|
|
1400
|
+
//#region src/constants.d.ts
|
|
1401
|
+
export declare const MAX_BYTE = 255;
|
|
1402
|
+
//#endregion
|
|
1403
|
+
//#region src/input/InputActionBindingMap.d.ts
|
|
1404
|
+
export declare const InputActionBindingMap: Readonly<Record<InputAction, readonly (readonly string[])[]>>;
|
|
1405
|
+
//#endregion
|
|
1406
|
+
//#region src/models/input/GamepadButton.d.ts
|
|
1407
|
+
export declare enum GamepadButton {
|
|
1408
|
+
Back = "GamepadBack",
|
|
1409
|
+
DirectionalPadDown = "GamepadDirectionalPadDown",
|
|
1410
|
+
DirectionalPadLeft = "GamepadDirectionalPadLeft",
|
|
1411
|
+
DirectionalPadRight = "GamepadDirectionalPadRight",
|
|
1412
|
+
DirectionalPadUp = "GamepadDirectionalPadUp",
|
|
1413
|
+
FaceBottom = "GamepadFaceBottom",
|
|
1414
|
+
FaceLeft = "GamepadFaceLeft",
|
|
1415
|
+
FaceRight = "GamepadFaceRight",
|
|
1416
|
+
FaceTop = "GamepadFaceTop",
|
|
1417
|
+
LeftBumper = "GamepadLeftBumper",
|
|
1418
|
+
LeftStick = "GamepadLeftStick",
|
|
1419
|
+
LeftTrigger = "GamepadLeftTrigger",
|
|
1420
|
+
RightBumper = "GamepadRightBumper",
|
|
1421
|
+
RightStick = "GamepadRightStick",
|
|
1422
|
+
RightTrigger = "GamepadRightTrigger",
|
|
1423
|
+
Start = "GamepadStart"
|
|
1424
|
+
}
|
|
1425
|
+
//#endregion
|
|
1426
|
+
//#region src/models/input/MouseButton.d.ts
|
|
1427
|
+
export declare enum MouseButton {
|
|
1428
|
+
Auxiliary = "MouseAuxiliary",
|
|
1429
|
+
Primary = "MousePrimary",
|
|
1430
|
+
Secondary = "MouseSecondary"
|
|
1431
|
+
}
|
|
1432
|
+
//#endregion
|
|
1433
|
+
//#region src/input/constants.d.ts
|
|
1434
|
+
export declare const KEY_CODE_FORWARD = "KeyW";
|
|
1435
|
+
export declare const KEY_CODE_BACKWARD = "KeyS";
|
|
1436
|
+
export declare const KEY_CODE_LEFT = "KeyA";
|
|
1437
|
+
export declare const KEY_CODE_RIGHT = "KeyD";
|
|
1438
|
+
export declare const KEY_CODE_UP = "Space";
|
|
1439
|
+
export declare const KEY_CODE_DOWN = "ShiftLeft";
|
|
1440
|
+
export declare const FOCUS_KEY_CODES: readonly string[];
|
|
1441
|
+
export declare const FIELD_SELECTOR = "input, select, textarea, [contenteditable=\"true\"]";
|
|
1442
|
+
export declare const GAMEPAD_BUTTONS: readonly GamepadButton[];
|
|
1443
|
+
export declare const MOUSE_BUTTONS: readonly MouseButton[];
|
|
1444
|
+
export declare const MOUSE_LOOK_RADIANS_PER_PIXEL = .002;
|
|
1445
|
+
export declare const MOUSE_LOOK_MAX_PIXELS_PER_EVENT: number;
|
|
1446
|
+
export declare const GAMEPAD_LOOK_RADIANS_PER_SECOND = 2.5;
|
|
1447
|
+
export declare const GAMEPAD_STICK_DEADZONE = .15;
|
|
1448
|
+
//#endregion
|
|
1449
|
+
//#region src/models/input/Input.d.ts
|
|
1450
|
+
export interface Input {
|
|
1451
|
+
dispose: () => void;
|
|
1452
|
+
press: (code: string) => void;
|
|
1453
|
+
readInput: (frameSeconds: number) => InputState;
|
|
1454
|
+
release: (code: string) => void;
|
|
1455
|
+
setTouchStick: (x: number, y: number) => void;
|
|
1456
|
+
turn: (lookYaw: number, lookPitch: number) => void;
|
|
1457
|
+
}
|
|
1458
|
+
//#endregion
|
|
1459
|
+
//#region src/input/createInput.d.ts
|
|
1460
|
+
export declare const createInput: (target: Window) => Input;
|
|
1461
|
+
//#endregion
|
|
1462
|
+
//#region src/kits/architecture/createBoxesGeometry.d.ts
|
|
1463
|
+
export declare const createBoxesGeometry: (boxes: readonly (readonly number[])[]) => BufferGeometry;
|
|
1464
|
+
//#endregion
|
|
1465
|
+
//#region src/models/kits/architecture/RoofKind.d.ts
|
|
1466
|
+
export declare enum RoofKind {
|
|
1467
|
+
Conical = "Conical",
|
|
1468
|
+
Flat = "Flat"
|
|
1469
|
+
}
|
|
1470
|
+
//#endregion
|
|
1471
|
+
//#region src/models/kits/architecture/BuildingOptions.d.ts
|
|
1472
|
+
export interface BuildingOptions {
|
|
1473
|
+
depth: number;
|
|
1474
|
+
platformHeight: number;
|
|
1475
|
+
roofHeight: number;
|
|
1476
|
+
roofKind: RoofKind;
|
|
1477
|
+
wallHeight: number;
|
|
1478
|
+
wallThickness: number;
|
|
1479
|
+
width: number;
|
|
1480
|
+
}
|
|
1481
|
+
//#endregion
|
|
1482
|
+
//#region src/kits/architecture/createBuildingGeometry.d.ts
|
|
1483
|
+
export declare const createBuildingGeometry: ({ depth, platformHeight, roofHeight, roofKind, wallHeight, wallThickness, width }: BuildingOptions) => BufferGeometry;
|
|
1484
|
+
//#endregion
|
|
1485
|
+
//#region src/models/kits/architecture/LatheSection.d.ts
|
|
1486
|
+
export interface LatheSection {
|
|
1487
|
+
bottomRadius: number;
|
|
1488
|
+
height: number;
|
|
1489
|
+
topRadius: number;
|
|
1490
|
+
}
|
|
1491
|
+
//#endregion
|
|
1492
|
+
//#region src/models/kits/architecture/LatheStackOptions.d.ts
|
|
1493
|
+
export interface LatheStackOptions {
|
|
1494
|
+
isFaceted: boolean;
|
|
1495
|
+
radialSegments: number;
|
|
1496
|
+
sections: LatheSection[];
|
|
1497
|
+
}
|
|
1498
|
+
//#endregion
|
|
1499
|
+
//#region src/kits/architecture/createLatheStackGeometry.d.ts
|
|
1500
|
+
export declare const createLatheStackGeometry: ({ isFaceted, radialSegments, sections }: LatheStackOptions) => BufferGeometry;
|
|
1501
|
+
//#endregion
|
|
1502
|
+
//#region src/models/kits/architecture/PavingStoneShape.d.ts
|
|
1503
|
+
export interface PavingStoneShape {
|
|
1504
|
+
bottom: number;
|
|
1505
|
+
radii: readonly number[];
|
|
1506
|
+
top: number;
|
|
1507
|
+
}
|
|
1508
|
+
//#endregion
|
|
1509
|
+
//#region src/models/kits/architecture/PavingStone.d.ts
|
|
1510
|
+
export interface PavingStone {
|
|
1511
|
+
position: readonly number[];
|
|
1512
|
+
quaternion: readonly number[];
|
|
1513
|
+
scale: readonly number[];
|
|
1514
|
+
shape: PavingStoneShape;
|
|
1515
|
+
}
|
|
1516
|
+
//#endregion
|
|
1517
|
+
//#region src/kits/architecture/createPavingGeometry.d.ts
|
|
1518
|
+
export declare const createPavingGeometry: (stones: readonly PavingStone[]) => BufferGeometry;
|
|
1519
|
+
//#endregion
|
|
1520
|
+
//#region src/kits/architecture/createPavingStoneGeometry.d.ts
|
|
1521
|
+
export declare const createPavingStoneGeometry: ({ bottom, radii, top }: PavingStoneShape) => BufferGeometry;
|
|
1522
|
+
//#endregion
|
|
1523
|
+
//#region src/models/kits/tree/LeafCards.d.ts
|
|
1524
|
+
export interface LeafCards {
|
|
1525
|
+
indices: Uint32Array;
|
|
1526
|
+
normals: Float32Array;
|
|
1527
|
+
positions: Float32Array;
|
|
1528
|
+
uvs: Float32Array;
|
|
1529
|
+
}
|
|
1530
|
+
//#endregion
|
|
1531
|
+
//#region src/kits/createIndexedGeometry.d.ts
|
|
1532
|
+
export declare const createIndexedGeometry: ({ indices, normals, positions, uvs }: LeafCards) => BufferGeometry;
|
|
1533
|
+
//#endregion
|
|
1534
|
+
//#region src/kits/mergeGeometryParts.d.ts
|
|
1535
|
+
export declare const mergeGeometryParts: (parts: BufferGeometry[]) => BufferGeometry;
|
|
1536
|
+
//#endregion
|
|
1537
|
+
//#region src/models/kits/statue/StatueSection.d.ts
|
|
1538
|
+
export interface StatueSection {
|
|
1539
|
+
centre: readonly number[];
|
|
1540
|
+
colors: readonly number[];
|
|
1541
|
+
height: number;
|
|
1542
|
+
radii: readonly number[];
|
|
1543
|
+
}
|
|
1544
|
+
//#endregion
|
|
1545
|
+
//#region src/models/kits/statue/StatueSurface.d.ts
|
|
1546
|
+
export interface StatueSurface {
|
|
1547
|
+
colors: Float32Array;
|
|
1548
|
+
indices: Uint32Array;
|
|
1549
|
+
positions: Float32Array;
|
|
1550
|
+
}
|
|
1551
|
+
//#endregion
|
|
1552
|
+
//#region src/kits/statue/computeStatueSurface.d.ts
|
|
1553
|
+
export declare const computeStatueSurface: (sections: readonly StatueSection[]) => StatueSurface;
|
|
1554
|
+
//#endregion
|
|
1555
|
+
//#region src/models/kits/statue/StatueStack.d.ts
|
|
1556
|
+
export interface StatueStack {
|
|
1557
|
+
position: readonly number[];
|
|
1558
|
+
rotation: readonly number[];
|
|
1559
|
+
sections: StatueSection[];
|
|
1560
|
+
}
|
|
1561
|
+
//#endregion
|
|
1562
|
+
//#region src/models/kits/statue/StatuePart.d.ts
|
|
1563
|
+
export interface StatuePart extends StatueStack {
|
|
1564
|
+
part: string;
|
|
1565
|
+
}
|
|
1566
|
+
//#endregion
|
|
1567
|
+
//#region src/kits/statue/createStatueGeometries.d.ts
|
|
1568
|
+
export declare const createStatueGeometries: (parts: readonly StatuePart[]) => Record<string, BufferGeometry>;
|
|
1569
|
+
//#endregion
|
|
1570
|
+
//#region src/models/kits/tree/TreeCluster.d.ts
|
|
1571
|
+
export interface TreeCluster {
|
|
1572
|
+
leafArea: number;
|
|
1573
|
+
radius: number;
|
|
1574
|
+
x: number;
|
|
1575
|
+
y: number;
|
|
1576
|
+
z: number;
|
|
1577
|
+
}
|
|
1578
|
+
//#endregion
|
|
1579
|
+
//#region src/models/kits/tree/TreeNormalField.d.ts
|
|
1580
|
+
export interface TreeNormalField {
|
|
1581
|
+
cellSize: number;
|
|
1582
|
+
normals: readonly number[];
|
|
1583
|
+
origin: readonly number[];
|
|
1584
|
+
size: readonly number[];
|
|
1585
|
+
}
|
|
1586
|
+
//#endregion
|
|
1587
|
+
//#region src/models/kits/tree/TreeTubePoint.d.ts
|
|
1588
|
+
export interface TreeTubePoint {
|
|
1589
|
+
radius: number;
|
|
1590
|
+
x: number;
|
|
1591
|
+
y: number;
|
|
1592
|
+
z: number;
|
|
1593
|
+
}
|
|
1594
|
+
//#endregion
|
|
1595
|
+
//#region src/models/kits/tree/TreeTube.d.ts
|
|
1596
|
+
export type TreeTube = readonly [TreeTubePoint, TreeTubePoint, ...TreeTubePoint[]];
|
|
1597
|
+
//#endregion
|
|
1598
|
+
//#region src/models/kits/tree/TreeOptions.d.ts
|
|
1599
|
+
export interface TreeOptions {
|
|
1600
|
+
cardSize: number;
|
|
1601
|
+
clusters: readonly TreeCluster[];
|
|
1602
|
+
leafAreaScale: number;
|
|
1603
|
+
limbs: readonly TreeTube[];
|
|
1604
|
+
normalField?: TreeNormalField;
|
|
1605
|
+
roots: readonly TreeTube[];
|
|
1606
|
+
seed: number;
|
|
1607
|
+
}
|
|
1608
|
+
//#endregion
|
|
1609
|
+
//#region src/kits/tree/computeLeafCards.d.ts
|
|
1610
|
+
export declare const computeLeafCards: (clusters: readonly TreeCluster[], { cardSize, leafAreaScale, normalField, seed }: Pick<TreeOptions, "cardSize" | "leafAreaScale" | "normalField" | "seed">) => LeafCards;
|
|
1611
|
+
//#endregion
|
|
1612
|
+
//#region src/models/kits/tree/TreeTubes.d.ts
|
|
1613
|
+
export interface TreeTubes {
|
|
1614
|
+
indices: Uint32Array;
|
|
1615
|
+
normals: Float32Array;
|
|
1616
|
+
positions: Float32Array;
|
|
1617
|
+
uvs: Float32Array;
|
|
1618
|
+
}
|
|
1619
|
+
//#endregion
|
|
1620
|
+
//#region src/kits/tree/computeTreeTubes.d.ts
|
|
1621
|
+
export declare const computeTreeTubes: (tubes: readonly TreeTube[]) => TreeTubes;
|
|
1622
|
+
//#endregion
|
|
1623
|
+
//#region src/models/kits/tree/TreeGeometry.d.ts
|
|
1624
|
+
export interface TreeGeometry {
|
|
1625
|
+
branchGeometry: BufferGeometry;
|
|
1626
|
+
leafGeometry: BufferGeometry;
|
|
1627
|
+
}
|
|
1628
|
+
//#endregion
|
|
1629
|
+
//#region src/kits/tree/createTreeGeometry.d.ts
|
|
1630
|
+
export declare const createTreeGeometry: ({ limbs, roots, ...treeOptions }: TreeOptions) => TreeGeometry;
|
|
1631
|
+
//#endregion
|
|
1632
|
+
//#region src/kits/tree/sampleTreeNormalField.d.ts
|
|
1633
|
+
export declare const sampleTreeNormalField: ({ cellSize, normals, origin, size }: TreeNormalField, position: [number, number, number]) => [number, number, number] | undefined;
|
|
1634
|
+
//#endregion
|
|
1635
|
+
//#region src/kits/writeQuadIndices.d.ts
|
|
1636
|
+
export declare const writeQuadIndices: (indices: Uint32Array, indexStart: number, vertexStart: number) => void;
|
|
1637
|
+
//#endregion
|
|
1638
|
+
//#region src/models/locomotion/LocomotionContact.d.ts
|
|
1639
|
+
export interface LocomotionContact {
|
|
1640
|
+
isFacingWall: boolean;
|
|
1641
|
+
isGrounded: boolean;
|
|
1642
|
+
isHighAboveGround: boolean;
|
|
1643
|
+
isInDeepWater: boolean;
|
|
1644
|
+
isRising: boolean;
|
|
1645
|
+
}
|
|
1646
|
+
//#endregion
|
|
1647
|
+
//#region src/models/locomotion/LocomotionInput.d.ts
|
|
1648
|
+
export interface LocomotionInput {
|
|
1649
|
+
isSprintHeld: boolean;
|
|
1650
|
+
isWalking: boolean;
|
|
1651
|
+
moveForward: number;
|
|
1652
|
+
moveRight: number;
|
|
1653
|
+
pressedActions: ReadonlySet<InputAction>;
|
|
1654
|
+
}
|
|
1655
|
+
//#endregion
|
|
1656
|
+
//#region src/locomotion/computeLocomotionState.d.ts
|
|
1657
|
+
export declare const computeLocomotionState: (phase: LocomotionPhase, input: LocomotionInput, contact: LocomotionContact, stamina: number, locomotion: Locomotion) => LocomotionState;
|
|
1658
|
+
//#endregion
|
|
1659
|
+
//#region src/locomotion/constants.d.ts
|
|
1660
|
+
export declare const STAMINA_MAX = 100;
|
|
1661
|
+
export declare const STAMINA_REFILL_PER_SECOND = 25;
|
|
1662
|
+
export declare const STAMINA_REFILL_DELAY_SECONDS = 1.5;
|
|
1663
|
+
export declare const DASH_STAMINA_COST = 18;
|
|
1664
|
+
export declare const SPRINT_STAMINA_PER_SECOND = 18;
|
|
1665
|
+
export declare const CLIMB_JUMP_STAMINA_COST = 25;
|
|
1666
|
+
export declare const SWIM_STROKE_STAMINA_COST = 4;
|
|
1667
|
+
export declare const SWIM_DASH_STAMINA_COST = 2;
|
|
1668
|
+
export declare const SWIM_DASH_STAMINA_PER_SECOND = 10.2;
|
|
1669
|
+
export declare const CLIMB_START_STAMINA = 5;
|
|
1670
|
+
export declare const GLIDE_STAMINA_PER_SECOND = 3;
|
|
1671
|
+
export declare const CLIMB_STAMINA_PER_SECOND = 2;
|
|
1672
|
+
export declare const SWIM_STROKE_SECONDS = 1.67;
|
|
1673
|
+
export declare const STAMINA_REFILL_STATES: readonly LocomotionState[];
|
|
1674
|
+
export declare const AIR_LOCOMOTION_STATES: readonly LocomotionState[];
|
|
1675
|
+
export declare const CLIMB_LOCOMOTION_STATES: readonly LocomotionState[];
|
|
1676
|
+
export declare const WATER_LOCOMOTION_STATES: readonly LocomotionState[];
|
|
1677
|
+
export declare const GROUND_LOCOMOTION_STATES: readonly LocomotionState[];
|
|
1678
|
+
export declare const WALK_MOVE_MAGNITUDE = .5;
|
|
1679
|
+
export declare const GROUND_CONTACT_DISTANCE = .05;
|
|
1680
|
+
export declare const GROUND_PRESS_SPEED = 1;
|
|
1681
|
+
export declare const WALL_PRESS_SPEED = 1;
|
|
1682
|
+
export declare const WALL_PROBE_DISTANCE = .1;
|
|
1683
|
+
export declare const STEEP_SLIDE_SPEED = 4;
|
|
1684
|
+
export declare const CLIMB_REGRAB_SECONDS = .5;
|
|
1685
|
+
//#endregion
|
|
1686
|
+
//#region src/models/locomotion/Stamina.d.ts
|
|
1687
|
+
export interface Stamina {
|
|
1688
|
+
checkCanSpend: (amount: number) => boolean;
|
|
1689
|
+
maximum: number;
|
|
1690
|
+
refill: () => void;
|
|
1691
|
+
spend: (amount: number) => void;
|
|
1692
|
+
step: (phase: LocomotionPhase, isEntered: boolean, isMoving: boolean, stepSeconds: number) => void;
|
|
1693
|
+
value: number;
|
|
1694
|
+
}
|
|
1695
|
+
//#endregion
|
|
1696
|
+
//#region src/models/locomotion/CharacterController.d.ts
|
|
1697
|
+
export interface CharacterController {
|
|
1698
|
+
face: (facing: number) => void;
|
|
1699
|
+
readonly facing: number;
|
|
1700
|
+
readonly heldPresses: ReadonlySet<InputAction>;
|
|
1701
|
+
holdPresses: (input: InputState) => void;
|
|
1702
|
+
readonly phase: Readonly<LocomotionPhase>;
|
|
1703
|
+
place: (position: Vector3, facing: number) => void;
|
|
1704
|
+
readonly position: Vector3;
|
|
1705
|
+
readonly previousPosition: Vector3;
|
|
1706
|
+
readonly stamina: Stamina;
|
|
1707
|
+
step: (input: InputState, cameraYaw: number, locomotion: Locomotion, stepSeconds: number) => void;
|
|
1708
|
+
}
|
|
1709
|
+
//#endregion
|
|
1710
|
+
//#region src/models/locomotion/CharacterControllerOptions.d.ts
|
|
1711
|
+
export interface CharacterControllerOptions {
|
|
1712
|
+
getStaminaConsumptionMultiplier?: () => number;
|
|
1713
|
+
ground: GroundQuery;
|
|
1714
|
+
landmarkCollider: LandmarkCollider;
|
|
1715
|
+
position: Vector3;
|
|
1716
|
+
staminaMaximum: number;
|
|
1717
|
+
}
|
|
1718
|
+
//#endregion
|
|
1719
|
+
//#region src/locomotion/createCharacterController.d.ts
|
|
1720
|
+
export declare const createCharacterController: ({ getStaminaConsumptionMultiplier, ground, landmarkCollider, position, staminaMaximum }: CharacterControllerOptions) => CharacterController;
|
|
1721
|
+
//#endregion
|
|
1722
|
+
//#region src/locomotion/createStamina.d.ts
|
|
1723
|
+
export declare const createStamina: (maximum: number, getStaminaConsumptionMultiplier?: () => number) => Stamina;
|
|
1724
|
+
//#endregion
|
|
1725
|
+
//#region src/materials/addSmoothLoop.d.ts
|
|
1726
|
+
export declare const addSmoothLoop: (path: Path2D, points: readonly (readonly [number, number])[]) => void;
|
|
1727
|
+
//#endregion
|
|
1728
|
+
//#region src/models/materials/RampOptions.d.ts
|
|
1729
|
+
export interface RampOptions {
|
|
1730
|
+
resolution: number;
|
|
1731
|
+
shade: number;
|
|
1732
|
+
softness: number;
|
|
1733
|
+
terminator: number;
|
|
1734
|
+
}
|
|
1735
|
+
//#endregion
|
|
1736
|
+
//#region src/materials/computeRampValues.d.ts
|
|
1737
|
+
export declare const computeRampValues: ({ resolution, shade, softness, terminator }: RampOptions) => Uint8Array;
|
|
1738
|
+
//#endregion
|
|
1739
|
+
//#region src/materials/createRampTexture.d.ts
|
|
1740
|
+
export declare const createRampTexture: (rampOptions: RampOptions) => DataTexture;
|
|
1741
|
+
//#endregion
|
|
1742
|
+
//#region src/models/character/PmxBoneFlag.d.ts
|
|
1743
|
+
export declare enum PmxBoneFlag {
|
|
1744
|
+
IndexedTail = 1,
|
|
1745
|
+
InverseKinematics = 32,
|
|
1746
|
+
InheritRotation = 256,
|
|
1747
|
+
InheritTranslation = 512,
|
|
1748
|
+
FixedAxis = 1024,
|
|
1749
|
+
LocalAxes = 2048,
|
|
1750
|
+
ExternalParent = 8192
|
|
1751
|
+
}
|
|
1752
|
+
//#endregion
|
|
1753
|
+
//#region src/models/character/PmxMaterialFlag.d.ts
|
|
1754
|
+
export declare enum PmxMaterialFlag {
|
|
1755
|
+
DoubleSided = 1,
|
|
1756
|
+
Outlined = 16
|
|
1757
|
+
}
|
|
1758
|
+
//#endregion
|
|
1759
|
+
//#region src/models/character/PmxTextEncoding.d.ts
|
|
1760
|
+
export declare enum PmxTextEncoding {
|
|
1761
|
+
Utf16LittleEndian = 0,
|
|
1762
|
+
Utf8 = 1
|
|
1763
|
+
}
|
|
1764
|
+
//#endregion
|
|
1765
|
+
//#region src/models/character/PmxWeightDeform.d.ts
|
|
1766
|
+
export declare enum PmxWeightDeform {
|
|
1767
|
+
OneBone = 0,
|
|
1768
|
+
TwoBones = 1,
|
|
1769
|
+
FourBones = 2,
|
|
1770
|
+
Spherical = 3,
|
|
1771
|
+
DualQuaternion = 4
|
|
1772
|
+
}
|
|
1773
|
+
//#endregion
|
|
1774
|
+
//#region src/models/vegetation/Impostor.d.ts
|
|
1775
|
+
export interface Impostor {
|
|
1776
|
+
albedoTarget: RenderTarget;
|
|
1777
|
+
bottom: number;
|
|
1778
|
+
height: number;
|
|
1779
|
+
normalTarget: RenderTarget;
|
|
1780
|
+
width: number;
|
|
1781
|
+
}
|
|
1782
|
+
//#endregion
|
|
1783
|
+
//#region src/models/nodes/ImpostorMaterialOptions.d.ts
|
|
1784
|
+
export interface ImpostorMaterialOptions {
|
|
1785
|
+
fade: Node<"float">;
|
|
1786
|
+
impostor: Impostor;
|
|
1787
|
+
lightUniforms: LightUniforms;
|
|
1788
|
+
rampTexture: DataTexture;
|
|
1789
|
+
}
|
|
1790
|
+
//#endregion
|
|
1791
|
+
//#region src/models/nodes/ObjectSurface.d.ts
|
|
1792
|
+
export declare class ObjectSurface {
|
|
1793
|
+
amplitudes: number[];
|
|
1794
|
+
color: Color;
|
|
1795
|
+
texelsPerMetre: number;
|
|
1796
|
+
constructor(color: Color, amplitudes: number[], texelsPerMetre: number);
|
|
1797
|
+
}
|
|
1798
|
+
//#endregion
|
|
1799
|
+
//#region src/models/wind/WindUniforms.d.ts
|
|
1800
|
+
export interface WindUniforms {
|
|
1801
|
+
direction: UniformNode<"vec2", Vector2>;
|
|
1802
|
+
gustSpeed: UniformNode<"float", number>;
|
|
1803
|
+
gustStrength: UniformNode<"float", number>;
|
|
1804
|
+
gustWidth: UniformNode<"float", number>;
|
|
1805
|
+
strength: UniformNode<"float", number>;
|
|
1806
|
+
}
|
|
1807
|
+
//#endregion
|
|
1808
|
+
//#region src/models/nodes/PrecipitationMaterialOptions.d.ts
|
|
1809
|
+
export interface PrecipitationMaterialOptions {
|
|
1810
|
+
lightUniforms: LightUniforms;
|
|
1811
|
+
precipitationUniforms: PrecipitationUniforms;
|
|
1812
|
+
windUniforms: WindUniforms;
|
|
1813
|
+
}
|
|
1814
|
+
//#endregion
|
|
1815
|
+
//#region src/models/nodes/SharedToonOutlinePassNode.d.ts
|
|
1816
|
+
export declare class SharedToonOutlinePassNode extends ToonOutlinePassNode {
|
|
1817
|
+
#private;
|
|
1818
|
+
alphaNode: Node<"float">;
|
|
1819
|
+
colorNode: Node<"vec3">;
|
|
1820
|
+
thicknessNode: Node<"float">;
|
|
1821
|
+
_getOutlineMaterial(originalMaterial: Material$1): NodeMaterial;
|
|
1822
|
+
override compileAsync(renderer: Renderer): Promise<void>;
|
|
1823
|
+
override updateBefore(frame: NodeFrame): boolean | undefined;
|
|
1824
|
+
}
|
|
1825
|
+
//#endregion
|
|
1826
|
+
//#region src/models/vegetation/GroundCapture.d.ts
|
|
1827
|
+
export interface GroundCapture {
|
|
1828
|
+
camera: OrthographicCamera;
|
|
1829
|
+
center: UniformNode<"vec2", Vector2>;
|
|
1830
|
+
material: MeshBasicNodeMaterial;
|
|
1831
|
+
renderTarget: RenderTarget;
|
|
1832
|
+
size: number;
|
|
1833
|
+
}
|
|
1834
|
+
//#endregion
|
|
1835
|
+
//#region src/models/water/WaterUniforms.d.ts
|
|
1836
|
+
export interface WaterUniforms {
|
|
1837
|
+
causticStrength: UniformNode<"float", number>;
|
|
1838
|
+
deepColor: UniformNode<"color", Color>;
|
|
1839
|
+
deepDepth: UniformNode<"float", number>;
|
|
1840
|
+
foamColor: UniformNode<"color", Color>;
|
|
1841
|
+
foamDepth: UniformNode<"float", number>;
|
|
1842
|
+
level: UniformNode<"float", number>;
|
|
1843
|
+
shallowColor: UniformNode<"color", Color>;
|
|
1844
|
+
underwaterFogColor: UniformNode<"color", Color>;
|
|
1845
|
+
underwaterFogDensity: UniformNode<"float", number>;
|
|
1846
|
+
}
|
|
1847
|
+
//#endregion
|
|
1848
|
+
//#region src/models/nodes/SplashMaterialOptions.d.ts
|
|
1849
|
+
export interface SplashMaterialOptions {
|
|
1850
|
+
groundCapture: GroundCapture;
|
|
1851
|
+
lightUniforms: LightUniforms;
|
|
1852
|
+
precipitationUniforms: PrecipitationUniforms;
|
|
1853
|
+
waterUniforms: WaterUniforms;
|
|
1854
|
+
}
|
|
1855
|
+
//#endregion
|
|
1856
|
+
//#region src/models/nodes/StoneLight.d.ts
|
|
1857
|
+
export interface StoneLight {
|
|
1858
|
+
harmonics: (readonly number[])[];
|
|
1859
|
+
hazeColor: readonly number[];
|
|
1860
|
+
hazeScatterColor: readonly number[];
|
|
1861
|
+
heightDarkening: number;
|
|
1862
|
+
heightFade: readonly number[];
|
|
1863
|
+
ramp: (readonly number[])[];
|
|
1864
|
+
}
|
|
1865
|
+
//#endregion
|
|
1866
|
+
//#region src/models/nodes/StoneLightUniforms.d.ts
|
|
1867
|
+
export interface StoneLightUniforms {
|
|
1868
|
+
harmonics: UniformArrayNode<"vec3">;
|
|
1869
|
+
hazeColor: UniformNode<"color", Color>;
|
|
1870
|
+
hazeScatterColor: UniformNode<"color", Color>;
|
|
1871
|
+
heightDarkening: UniformNode<"float", number>;
|
|
1872
|
+
heightFade: UniformNode<"color", Color>;
|
|
1873
|
+
ramp: DataTexture;
|
|
1874
|
+
sunRadiance: UniformNode<"color", Color>;
|
|
1875
|
+
}
|
|
1876
|
+
//#endregion
|
|
1877
|
+
//#region src/models/nodes/StoneLightingModel.d.ts
|
|
1878
|
+
export declare class StoneLightingModel extends LightingModel {
|
|
1879
|
+
readonly stoneLight: StoneLightUniforms;
|
|
1880
|
+
constructor(stoneLight: StoneLightUniforms);
|
|
1881
|
+
createDarkeningNode(): Node<"float">;
|
|
1882
|
+
override direct({ lightColor, lightDirection, reflectedLight }: LightingModelDirectInput): void;
|
|
1883
|
+
override indirect(builder: NodeBuilder): void;
|
|
1884
|
+
}
|
|
1885
|
+
//#endregion
|
|
1886
|
+
//#region src/models/nodes/StoneMaterialOptions.d.ts
|
|
1887
|
+
export interface StoneMaterialOptions {
|
|
1888
|
+
albedo: string;
|
|
1889
|
+
glowRange: number;
|
|
1890
|
+
rimColor: readonly number[];
|
|
1891
|
+
rimPower: number;
|
|
1892
|
+
rimStrength: number;
|
|
1893
|
+
smoothness: number;
|
|
1894
|
+
specularColor: readonly number[];
|
|
1895
|
+
}
|
|
1896
|
+
//#endregion
|
|
1897
|
+
//#region src/models/nodes/StoneNodeMaterial.d.ts
|
|
1898
|
+
export declare class StoneNodeMaterial extends NodeMaterial {
|
|
1899
|
+
emissiveNode: Node | null;
|
|
1900
|
+
readonly stoneLight: StoneLightUniforms;
|
|
1901
|
+
constructor(stoneLight: StoneLightUniforms);
|
|
1902
|
+
override setupLightingModel(): StoneLightingModel;
|
|
1903
|
+
}
|
|
1904
|
+
//#endregion
|
|
1905
|
+
//#region src/models/nodes/SurfaceDetail.d.ts
|
|
1906
|
+
export interface SurfaceDetail {
|
|
1907
|
+
bands: number[];
|
|
1908
|
+
metresPerTexel: number;
|
|
1909
|
+
variance: number;
|
|
1910
|
+
}
|
|
1911
|
+
//#endregion
|
|
1912
|
+
//#region src/models/nodes/ToonMaterialOptions.d.ts
|
|
1913
|
+
export interface ToonMaterialOptions {
|
|
1914
|
+
color?: ColorRepresentation;
|
|
1915
|
+
detail?: SurfaceDetail;
|
|
1916
|
+
isObjectSurface?: boolean;
|
|
1917
|
+
isOutlined?: boolean;
|
|
1918
|
+
isVertexColors?: boolean;
|
|
1919
|
+
lightUniforms: LightUniforms;
|
|
1920
|
+
rampTexture: DataTexture;
|
|
1921
|
+
}
|
|
1922
|
+
//#endregion
|
|
1923
|
+
//#region src/models/nodes/createOutlineMaterial.d.ts
|
|
1924
|
+
export declare const createOutlineMaterial: (colorNode: Node<"vec4">, thicknessNode: Node<"float">) => NodeMaterial;
|
|
1925
|
+
export declare const createGameOutlineMaterial: (colorNode: Node<"vec4">, widthNode: Node<"float">, offsetNode: Node<"float">) => NodeMaterial;
|
|
1926
|
+
//#endregion
|
|
1927
|
+
//#region src/models/nodes/getGameOutlineOffset.d.ts
|
|
1928
|
+
export declare const getGameOutlineOffset: (viewPosition: Vector3, blue: number, blockBChannel: number, size: number) => Vector3;
|
|
1929
|
+
//#endregion
|
|
1930
|
+
//#region src/models/post/GradeOptions.d.ts
|
|
1931
|
+
export interface GradeOptions {
|
|
1932
|
+
contrast: number;
|
|
1933
|
+
highlightTint: readonly [number, number, number];
|
|
1934
|
+
saturation: number;
|
|
1935
|
+
shadowTint: readonly [number, number, number];
|
|
1936
|
+
size: number;
|
|
1937
|
+
}
|
|
1938
|
+
//#endregion
|
|
1939
|
+
//#region src/models/post/PostPipeline.d.ts
|
|
1940
|
+
export interface PostPipeline {
|
|
1941
|
+
bloomNode?: BloomNode;
|
|
1942
|
+
compileAsync: () => Promise<void>;
|
|
1943
|
+
dispose: () => void;
|
|
1944
|
+
godraysNode?: GodraysNode;
|
|
1945
|
+
renderPipeline: RenderPipeline;
|
|
1946
|
+
}
|
|
1947
|
+
//#endregion
|
|
1948
|
+
//#region src/models/post/SightUniforms.d.ts
|
|
1949
|
+
export interface SightUniforms {
|
|
1950
|
+
origin: UniformNode<"vec2", Vector2>;
|
|
1951
|
+
radius: UniformNode<"float", number>;
|
|
1952
|
+
strength: UniformNode<"float", number>;
|
|
1953
|
+
}
|
|
1954
|
+
//#endregion
|
|
1955
|
+
//#region src/models/renderer/AntialiasingMode.d.ts
|
|
1956
|
+
export declare enum AntialiasingMode {
|
|
1957
|
+
Smaa = "Smaa",
|
|
1958
|
+
Traa = "Traa"
|
|
1959
|
+
}
|
|
1960
|
+
//#endregion
|
|
1961
|
+
//#region src/models/renderer/QualityTierSettings.d.ts
|
|
1962
|
+
export interface QualityTierSettings {
|
|
1963
|
+
antialiasingMode: AntialiasingMode;
|
|
1964
|
+
cascadeCount: number;
|
|
1965
|
+
godraysStepCount: number;
|
|
1966
|
+
grassDensity: number;
|
|
1967
|
+
isBloomEnabled: boolean;
|
|
1968
|
+
isOcclusionEnabled: boolean;
|
|
1969
|
+
maxPixelRatio: number;
|
|
1970
|
+
shadowMapSize: number;
|
|
1971
|
+
}
|
|
1972
|
+
//#endregion
|
|
1973
|
+
//#region src/models/post/PostPipelineOptions.d.ts
|
|
1974
|
+
export interface PostPipelineOptions {
|
|
1975
|
+
camera: Camera;
|
|
1976
|
+
fogUniforms: FogUniforms;
|
|
1977
|
+
godraysLight?: DirectionalLight;
|
|
1978
|
+
gradeLutTexture?: Data3DTexture;
|
|
1979
|
+
isBloomed?: boolean;
|
|
1980
|
+
occlusionRadius?: number;
|
|
1981
|
+
postUniforms: PostUniforms;
|
|
1982
|
+
qualityTierSettings: QualityTierSettings;
|
|
1983
|
+
renderer: Renderer;
|
|
1984
|
+
scene: Scene;
|
|
1985
|
+
sight?: {
|
|
1986
|
+
litScene: Scene;
|
|
1987
|
+
uniforms: SightUniforms;
|
|
1988
|
+
};
|
|
1989
|
+
stoneLight?: StoneLightUniforms;
|
|
1990
|
+
}
|
|
1991
|
+
//#endregion
|
|
1992
|
+
//#region src/models/renderer/QualityTier.d.ts
|
|
1993
|
+
export declare enum QualityTier {
|
|
1994
|
+
High = "High",
|
|
1995
|
+
Low = "Low",
|
|
1996
|
+
Medium = "Medium"
|
|
1997
|
+
}
|
|
1998
|
+
//#endregion
|
|
1999
|
+
//#region src/models/renderer/ScreenCamera.d.ts
|
|
2000
|
+
export interface ScreenCamera {
|
|
2001
|
+
aspect: number;
|
|
2002
|
+
fov: number;
|
|
2003
|
+
pitch: number;
|
|
2004
|
+
yaw: number;
|
|
2005
|
+
}
|
|
2006
|
+
//#endregion
|
|
2007
|
+
//#region src/models/scene/SceneMaterial.d.ts
|
|
2008
|
+
export interface SceneMaterial {
|
|
2009
|
+
colors: Record<string, [number, number, number, number]>;
|
|
2010
|
+
floats: Record<string, number>;
|
|
2011
|
+
keywords: string[];
|
|
2012
|
+
name: string;
|
|
2013
|
+
shader?: string;
|
|
2014
|
+
textures: Record<string, {
|
|
2015
|
+
name: string;
|
|
2016
|
+
offset: [number, number];
|
|
2017
|
+
scale: [number, number];
|
|
2018
|
+
}>;
|
|
2019
|
+
}
|
|
2020
|
+
//#endregion
|
|
2021
|
+
//#region src/models/scene/ScenePlacement.d.ts
|
|
2022
|
+
export interface ScenePlacement {
|
|
2023
|
+
materials: string[];
|
|
2024
|
+
mesh: string;
|
|
2025
|
+
position: [number, number, number];
|
|
2026
|
+
rotation: [number, number, number, number];
|
|
2027
|
+
scale: [number, number, number];
|
|
2028
|
+
}
|
|
2029
|
+
//#endregion
|
|
2030
|
+
//#region src/models/scene/SceneLayout.d.ts
|
|
2031
|
+
export interface SceneLayout {
|
|
2032
|
+
materials: Record<string, SceneMaterial>;
|
|
2033
|
+
placements: ScenePlacement[];
|
|
2034
|
+
}
|
|
2035
|
+
//#endregion
|
|
2036
|
+
//#region src/models/simulation/FixedStepLoop.d.ts
|
|
2037
|
+
export interface FixedStepLoop {
|
|
2038
|
+
advance: (deltaSeconds: number) => void;
|
|
2039
|
+
getStepShare: () => number;
|
|
2040
|
+
}
|
|
2041
|
+
//#endregion
|
|
2042
|
+
//#region src/models/terrain/TerrainSelection.d.ts
|
|
2043
|
+
export interface TerrainSelection {
|
|
2044
|
+
count: number;
|
|
2045
|
+
keys: Float64Array;
|
|
2046
|
+
}
|
|
2047
|
+
//#endregion
|
|
2048
|
+
//#region src/models/streaming/TileStreamer.d.ts
|
|
2049
|
+
export interface TileStreamer<TTile> {
|
|
2050
|
+
dispose: () => void;
|
|
2051
|
+
fail: (key: number) => boolean;
|
|
2052
|
+
get: (key: number) => TTile | undefined;
|
|
2053
|
+
has: (key: number) => boolean;
|
|
2054
|
+
isSettled: (key: number) => boolean;
|
|
2055
|
+
pendingKeys: () => number[];
|
|
2056
|
+
receive: (key: number, tile: TTile) => void;
|
|
2057
|
+
refresh: (checkIsChanged: (key: number) => boolean) => void;
|
|
2058
|
+
update: (wanted: TerrainSelection, drawn: TerrainSelection, surrounding: TerrainSelection) => void;
|
|
2059
|
+
}
|
|
2060
|
+
//#endregion
|
|
2061
|
+
//#region src/models/streaming/TileStreamerOptions.d.ts
|
|
2062
|
+
export interface TileStreamerOptions<TTile> {
|
|
2063
|
+
disposeTile: (tile: TTile) => void;
|
|
2064
|
+
maxCachedCount: number;
|
|
2065
|
+
maxPendingCount: number;
|
|
2066
|
+
requestTile: (key: number) => void;
|
|
2067
|
+
}
|
|
2068
|
+
//#endregion
|
|
2069
|
+
//#region src/models/terrain/TerrainBounds.d.ts
|
|
2070
|
+
export interface TerrainBounds {
|
|
2071
|
+
maxX: number;
|
|
2072
|
+
maxZ: number;
|
|
2073
|
+
minX: number;
|
|
2074
|
+
minZ: number;
|
|
2075
|
+
}
|
|
2076
|
+
//#endregion
|
|
2077
|
+
//#region src/models/terrain/TerrainRing.d.ts
|
|
2078
|
+
export interface TerrainRing {
|
|
2079
|
+
add: (tile: TerrainTile) => void;
|
|
2080
|
+
dispose: () => void;
|
|
2081
|
+
draw: (keys: readonly number[]) => void;
|
|
2082
|
+
mesh: Mesh;
|
|
2083
|
+
remove: (key: number) => void;
|
|
2084
|
+
}
|
|
2085
|
+
//#endregion
|
|
2086
|
+
//#region src/models/terrain/TerrainTileArrays.d.ts
|
|
2087
|
+
export type TerrainTileArrays = Pick<TerrainTile, "coarseColors" | "coarseNormals" | "coarsePositions" | "colors" | "normals" | "positions">;
|
|
2088
|
+
//#endregion
|
|
2089
|
+
//#region src/models/vegetation/GrassBlade.d.ts
|
|
2090
|
+
export interface GrassBlade {
|
|
2091
|
+
indices: Uint16Array;
|
|
2092
|
+
positions: Float32Array;
|
|
2093
|
+
}
|
|
2094
|
+
//#endregion
|
|
2095
|
+
//#region src/models/vegetation/GrassRing.d.ts
|
|
2096
|
+
export interface GrassRing {
|
|
2097
|
+
cellsPerSide: number;
|
|
2098
|
+
fadeEnd: number;
|
|
2099
|
+
fadeStart: number;
|
|
2100
|
+
innerRadius: number;
|
|
2101
|
+
scale: number;
|
|
2102
|
+
spacing: number;
|
|
2103
|
+
}
|
|
2104
|
+
//#endregion
|
|
2105
|
+
//#region src/models/vegetation/GrassOptions.d.ts
|
|
2106
|
+
export interface GrassOptions {
|
|
2107
|
+
bladeHeight: number;
|
|
2108
|
+
bladeWidth: number;
|
|
2109
|
+
cameraGround: UniformNode<"vec2", Vector2>;
|
|
2110
|
+
density: UniformNode<"float", number>;
|
|
2111
|
+
groundCapture: GroundCapture;
|
|
2112
|
+
lightUniforms: LightUniforms;
|
|
2113
|
+
rampTexture: DataTexture;
|
|
2114
|
+
ring: GrassRing;
|
|
2115
|
+
waterUniforms: Pick<WaterUniforms, "level">;
|
|
2116
|
+
windUniforms: WindUniforms;
|
|
2117
|
+
}
|
|
2118
|
+
//#endregion
|
|
2119
|
+
//#region src/models/vegetation/ImpostorPart.d.ts
|
|
2120
|
+
export interface ImpostorPart {
|
|
2121
|
+
color: ColorRepresentation;
|
|
2122
|
+
geometry: BufferGeometry;
|
|
2123
|
+
opacityNode?: Node<"float">;
|
|
2124
|
+
}
|
|
2125
|
+
//#endregion
|
|
2126
|
+
//#region src/models/water/RiverCoursePoint.d.ts
|
|
2127
|
+
export interface RiverCoursePoint {
|
|
2128
|
+
level: number;
|
|
2129
|
+
width: number;
|
|
2130
|
+
x: number;
|
|
2131
|
+
z: number;
|
|
271
2132
|
}
|
|
272
2133
|
//#endregion
|
|
273
|
-
//#region src/
|
|
274
|
-
export interface
|
|
275
|
-
|
|
276
|
-
|
|
2134
|
+
//#region src/models/water/UnderwaterFogState.d.ts
|
|
2135
|
+
export interface UnderwaterFogState {
|
|
2136
|
+
aboveDensity: number;
|
|
2137
|
+
aboveHeightFalloff: number;
|
|
2138
|
+
aboveMaxOpacity: number;
|
|
2139
|
+
aboveStartDistance: number;
|
|
2140
|
+
isUnderwater: boolean;
|
|
2141
|
+
underwaterDensity: number;
|
|
277
2142
|
}
|
|
278
2143
|
//#endregion
|
|
279
|
-
//#region src/
|
|
280
|
-
export
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
export declare const computeTreeSkeleton: ({ branchLength, mainBranchCount, seed, trunkHeight, trunkRadius }: Pick<TreeOptions, "branchLength" | "mainBranchCount" | "seed" | "trunkHeight" | "trunkRadius">) => TreeSkeleton;
|
|
284
|
-
//#endregion
|
|
285
|
-
//#region src/kits/tree/createTreeGeometry.d.ts
|
|
286
|
-
export declare const createTreeGeometry: (treeOptions: TreeOptions) => TreeGeometry;
|
|
287
|
-
//#endregion
|
|
288
|
-
//#region src/materials/RampOptions.d.ts
|
|
289
|
-
export interface RampOptions {
|
|
290
|
-
resolution: number;
|
|
291
|
-
softness: number;
|
|
292
|
-
terminator: number;
|
|
2144
|
+
//#region src/models/water/WaterFlow.d.ts
|
|
2145
|
+
export interface WaterFlow {
|
|
2146
|
+
direction: UniformNode<"vec2", Vector2>;
|
|
2147
|
+
speed: UniformNode<"float", number>;
|
|
293
2148
|
}
|
|
294
2149
|
//#endregion
|
|
295
|
-
//#region src/
|
|
296
|
-
export
|
|
2150
|
+
//#region src/models/water/WaterfallSheet.d.ts
|
|
2151
|
+
export interface WaterfallSheet {
|
|
2152
|
+
across: Vector3;
|
|
2153
|
+
drop: number;
|
|
2154
|
+
lip: Vector3;
|
|
2155
|
+
width: number;
|
|
2156
|
+
}
|
|
297
2157
|
//#endregion
|
|
298
|
-
//#region src/
|
|
299
|
-
export
|
|
2158
|
+
//#region src/models/world/GroundPoint.d.ts
|
|
2159
|
+
export interface GroundPoint {
|
|
2160
|
+
x: number;
|
|
2161
|
+
z: number;
|
|
2162
|
+
}
|
|
300
2163
|
//#endregion
|
|
301
|
-
//#region src/
|
|
302
|
-
export declare const
|
|
2164
|
+
//#region src/nodes/applyStoneLight.d.ts
|
|
2165
|
+
export declare const applyStoneLight: ({ harmonics, hazeColor, hazeScatterColor, heightDarkening, heightFade, ramp }: StoneLight, { harmonics: harmonicsUniform, hazeColor: hazeColorUniform, hazeScatterColor: hazeScatterColorUniform, heightDarkening: heightDarkeningUniform, heightFade: heightFadeUniform, ramp: rampTexture, sunRadiance }: StoneLightUniforms, light: DirectionalLight) => void;
|
|
303
2166
|
//#endregion
|
|
304
|
-
//#region src/nodes/
|
|
305
|
-
export
|
|
306
|
-
albedo: string;
|
|
307
|
-
rimColor: readonly number[];
|
|
308
|
-
rimPower: number;
|
|
309
|
-
rimStrength: number;
|
|
310
|
-
smoothness: number;
|
|
311
|
-
specularColor: readonly number[];
|
|
312
|
-
}
|
|
2167
|
+
//#region src/nodes/computeStoneDarkening.d.ts
|
|
2168
|
+
export declare const computeStoneDarkening: (height: number, heightDarkening: number) => number;
|
|
313
2169
|
//#endregion
|
|
314
|
-
//#region src/nodes/
|
|
315
|
-
export
|
|
316
|
-
color?: ColorRepresentation;
|
|
317
|
-
isOutlined?: boolean;
|
|
318
|
-
isVertexColors?: boolean;
|
|
319
|
-
lightUniforms: LightUniforms;
|
|
320
|
-
rampTexture: DataTexture;
|
|
321
|
-
}
|
|
2170
|
+
//#region src/nodes/computeStoneHarmonics.d.ts
|
|
2171
|
+
export declare const computeStoneHarmonics: ([x, y, z]: readonly number[], harmonics: number[]) => void;
|
|
322
2172
|
//#endregion
|
|
323
|
-
//#region src/nodes/
|
|
324
|
-
export declare
|
|
325
|
-
emissiveNode: Node | null;
|
|
326
|
-
override readonly isMeshToonNodeMaterial: boolean;
|
|
327
|
-
constructor(parameters: MeshToonNodeMaterialParameters, isOutlined: boolean);
|
|
328
|
-
}
|
|
2173
|
+
//#region src/nodes/computeStoneRampCoordinate.d.ts
|
|
2174
|
+
export declare const computeStoneRampCoordinate: (facing: number, visibility: number) => number;
|
|
329
2175
|
//#endregion
|
|
330
|
-
//#region src/
|
|
331
|
-
export interface
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
deepDepth: UniformNode<"float", number>;
|
|
335
|
-
foamColor: UniformNode<"color", Color>;
|
|
336
|
-
foamDepth: UniformNode<"float", number>;
|
|
337
|
-
level: UniformNode<"float", number>;
|
|
338
|
-
shallowColor: UniformNode<"color", Color>;
|
|
339
|
-
underwaterFogColor: UniformNode<"color", Color>;
|
|
340
|
-
underwaterFogDensity: UniformNode<"float", number>;
|
|
2176
|
+
//#region src/nodes/computeSurfaceOctaves.d.ts
|
|
2177
|
+
export interface SurfaceOctave {
|
|
2178
|
+
amplitude: number;
|
|
2179
|
+
frequency: number;
|
|
341
2180
|
}
|
|
2181
|
+
export declare const computeSurfaceOctaves: ({ bands, metresPerTexel, variance }: SurfaceDetail) => SurfaceOctave[];
|
|
2182
|
+
//#endregion
|
|
2183
|
+
//#region src/nodes/constants.d.ts
|
|
2184
|
+
export declare const LEAST_DIVISOR = 1e-4;
|
|
2185
|
+
export declare const STONE_SHADOW_EXPONENT = .2;
|
|
2186
|
+
export declare const STONE_RAMP_KNOT_COUNT = 16;
|
|
2187
|
+
export declare const STONE_HARMONIC_COUNT = 9;
|
|
2188
|
+
export declare const STONE_MASK_OUTPUT = "stoneMask";
|
|
2189
|
+
export declare const STONE_HEIGHT_FALLOFF = .05;
|
|
2190
|
+
export declare const STONE_DARKENING_TOP = 20;
|
|
2191
|
+
export declare const WET_DARKENING = .35;
|
|
2192
|
+
export declare const WET_SHEEN_POWER = 32;
|
|
2193
|
+
export declare const WET_SHEEN_STRENGTH = .25;
|
|
2194
|
+
export declare const SURFACE_DETAIL_BAND_SIGMAS: number[];
|
|
2195
|
+
export declare const SURFACE_OCTAVE_TEXEL_FREQUENCIES: number[];
|
|
2196
|
+
export declare const SURFACE_DETAIL_RENDER_GAIN = 4;
|
|
2197
|
+
export declare const OBJECT_SURFACE_KEY = "surface";
|
|
2198
|
+
export declare const OBJECT_FADE_KEY = "fade";
|
|
2199
|
+
export declare const LEAF_SHAPE_WIDTH = .8;
|
|
2200
|
+
export declare const LEAF_SHAPE_KEPT_SHARE: number;
|
|
342
2201
|
//#endregion
|
|
343
2202
|
//#region src/nodes/createCausticsNode.d.ts
|
|
344
2203
|
export declare const createCausticsNode: ({ lightColor }: Pick<LightUniforms, "lightColor">, { causticStrength, deepDepth, level }: Pick<WaterUniforms, "causticStrength" | "deepDepth" | "level">) => Node<"vec3">;
|
|
345
2204
|
//#endregion
|
|
346
|
-
//#region src/nodes/
|
|
347
|
-
export declare const
|
|
2205
|
+
//#region src/nodes/createCloudLayerNode.d.ts
|
|
2206
|
+
export declare const createCloudLayerNode: ({ center, curl, curlAmplitude, curlSpeed, curlTiling, density, direction: cloudDirection, elapsedTime, height: layerHeight, lightDirection, normal, normalYScale, opacity, profile, smoothness, sunBrightness, sunRimLightRadius, tiling, turn, weather, wisps, wispsCoverage, wispsElapsedTime, wispsOpacity, wispsTurn }: CloudLayerUniforms, { cloudCoverage, cloudFrontBackBlend, cloudLitBackColor, cloudLitColor, cloudShadeBackColor, cloudShadeColor, cloudSunBrighten, moonDirection, moonGlowColor, sunDirection, sunHaloColor, sunHaloSize }: SkyUniforms, direction: Node<"vec3">) => Node<"vec4">;
|
|
348
2207
|
//#endregion
|
|
349
|
-
//#region src/
|
|
350
|
-
export
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
gustWidth: UniformNode<"float", number>;
|
|
355
|
-
strength: UniformNode<"float", number>;
|
|
356
|
-
}
|
|
2208
|
+
//#region src/nodes/createDitherFadeNode.d.ts
|
|
2209
|
+
export declare const createDitherFadeNode: (visibility: Node<"float">) => Node<"bool">;
|
|
2210
|
+
//#endregion
|
|
2211
|
+
//#region src/nodes/createImpostorMaterial.d.ts
|
|
2212
|
+
export declare const createImpostorMaterial: ({ fade, impostor, lightUniforms, rampTexture }: ImpostorMaterialOptions) => ToonNodeMaterial;
|
|
357
2213
|
//#endregion
|
|
358
2214
|
//#region src/nodes/createLeafMaterial.d.ts
|
|
359
2215
|
export declare const createLeafMaterial: (toonMaterialOptions: ToonMaterialOptions, windUniforms?: WindUniforms) => ToonNodeMaterial;
|
|
360
2216
|
//#endregion
|
|
2217
|
+
//#region src/nodes/createLeafShapeNode.d.ts
|
|
2218
|
+
export declare const createLeafShapeNode: () => Node<"float">;
|
|
2219
|
+
//#endregion
|
|
361
2220
|
//#region src/nodes/createLightUniforms.d.ts
|
|
362
2221
|
export declare const createLightUniforms: () => LightUniforms;
|
|
363
2222
|
//#endregion
|
|
2223
|
+
//#region src/nodes/createLightningBoltMaterial.d.ts
|
|
2224
|
+
export declare const createLightningBoltMaterial: (flash: UniformNode<"float", number>) => MeshBasicNodeMaterial;
|
|
2225
|
+
//#endregion
|
|
2226
|
+
//#region src/nodes/createObjectFadeNode.d.ts
|
|
2227
|
+
export declare const createObjectFadeNode: () => Node<"float">;
|
|
2228
|
+
//#endregion
|
|
2229
|
+
//#region src/nodes/createObjectSurfaceNode.d.ts
|
|
2230
|
+
export declare const createObjectSurfaceNode: () => Node<"vec3">;
|
|
2231
|
+
//#endregion
|
|
2232
|
+
//#region src/nodes/createPrecipitationMaterial.d.ts
|
|
2233
|
+
export declare const createPrecipitationMaterial: ({ lightUniforms, precipitationUniforms, windUniforms }: PrecipitationMaterialOptions) => MeshBasicNodeMaterial;
|
|
2234
|
+
//#endregion
|
|
364
2235
|
//#region src/nodes/createRimNode.d.ts
|
|
365
2236
|
export declare const createRimNode: ({ rimColor, rimStrength, sunDirection }: LightUniforms) => Node<"vec3">;
|
|
366
2237
|
//#endregion
|
|
@@ -368,71 +2239,84 @@ export declare const createRimNode: ({ rimColor, rimStrength, sunDirection }: Li
|
|
|
368
2239
|
export declare const createSkyColorNode: ({ frontBackBlend, haloColor, haloHeight, horizonBackColor, horizonBand, horizonColor, sunDirection, sunHaloColor, sunHaloSize, zenithBackColor, zenithColor }: SkyUniforms, gradient: Texture, direction: Node<"vec3">) => Node<"vec3">;
|
|
369
2240
|
//#endregion
|
|
370
2241
|
//#region src/nodes/createSkyNode.d.ts
|
|
371
|
-
export declare const createSkyNode: (uniforms: SkyUniforms, gradient: Texture) => Node<"vec3">;
|
|
2242
|
+
export declare const createSkyNode: (uniforms: SkyUniforms, gradient: Texture, cloudLayer?: CloudLayerUniforms) => Node<"vec3">;
|
|
2243
|
+
//#endregion
|
|
2244
|
+
//#region src/nodes/createSplashMaterial.d.ts
|
|
2245
|
+
export declare const createSplashMaterial: ({ groundCapture, lightUniforms, precipitationUniforms, waterUniforms }: SplashMaterialOptions) => MeshBasicNodeMaterial;
|
|
2246
|
+
//#endregion
|
|
2247
|
+
//#region src/nodes/createStoneGlowNode.d.ts
|
|
2248
|
+
export declare const createStoneGlowNode: ({ glowRange, rimColor, rimPower, rimStrength }: Pick<StoneMaterialOptions, "glowRange" | "rimColor" | "rimPower" | "rimStrength">) => Node<"vec3">;
|
|
2249
|
+
//#endregion
|
|
2250
|
+
//#region src/nodes/createStoneLightUniforms.d.ts
|
|
2251
|
+
export declare const createStoneLightUniforms: () => StoneLightUniforms;
|
|
372
2252
|
//#endregion
|
|
373
2253
|
//#region src/nodes/createStoneMaterial.d.ts
|
|
374
|
-
export declare const createStoneMaterial: (
|
|
2254
|
+
export declare const createStoneMaterial: (options: StoneMaterialOptions, stoneLight: StoneLightUniforms, glowNode?: Node<"vec3">) => StoneNodeMaterial;
|
|
2255
|
+
//#endregion
|
|
2256
|
+
//#region src/nodes/createSunVisibilityNode.d.ts
|
|
2257
|
+
export declare const createSunVisibilityNode: (lightColor: Node, sunRadiance: UniformNode<"color", Color>) => Node<"float">;
|
|
2258
|
+
//#endregion
|
|
2259
|
+
//#region src/nodes/createSurfaceDetailNode.d.ts
|
|
2260
|
+
export declare const createSurfaceDetailNode: (amplitudes: Node<"float">[], texelsPerMetre: Node<"float">) => Node<"float">;
|
|
375
2261
|
//#endregion
|
|
376
2262
|
//#region src/nodes/createToonMaterial.d.ts
|
|
377
|
-
export declare const createToonMaterial: ({ color, isOutlined, isVertexColors, lightUniforms, rampTexture }: ToonMaterialOptions) => ToonNodeMaterial;
|
|
2263
|
+
export declare const createToonMaterial: ({ color, detail, isObjectSurface, isOutlined, isVertexColors, lightUniforms, rampTexture }: ToonMaterialOptions) => ToonNodeMaterial;
|
|
378
2264
|
//#endregion
|
|
379
2265
|
//#region src/nodes/createWaterMaterial.d.ts
|
|
380
|
-
export declare const createWaterMaterial: ({ lightColor, sunDirection }: Pick<LightUniforms, "lightColor" | "sunDirection">, { horizonColor, zenithColor }: Pick<SkyUniforms, "horizonColor" | "zenithColor">, { deepColor, deepDepth, foamColor, foamDepth, shallowColor }: WaterUniforms) => MeshBasicNodeMaterial;
|
|
2266
|
+
export declare const createWaterMaterial: ({ lightColor, sunDirection }: Pick<LightUniforms, "lightColor" | "sunDirection">, { horizonColor, zenithColor }: Pick<SkyUniforms, "horizonColor" | "zenithColor">, { deepColor, deepDepth, foamColor, foamDepth, shallowColor }: WaterUniforms, { direction, speed }: WaterFlow, bendFoam?: Node<"float">) => MeshBasicNodeMaterial;
|
|
2267
|
+
//#endregion
|
|
2268
|
+
//#region src/nodes/createWaterfallMaterial.d.ts
|
|
2269
|
+
export declare const createWaterfallMaterial: ({ foamColor }: Pick<WaterUniforms, "foamColor">) => MeshBasicNodeMaterial;
|
|
2270
|
+
//#endregion
|
|
2271
|
+
//#region src/nodes/createWetDarkeningNode.d.ts
|
|
2272
|
+
export declare const createWetDarkeningNode: ({ wetness }: Pick<LightUniforms, "wetness">) => Node<"float">;
|
|
2273
|
+
//#endregion
|
|
2274
|
+
//#region src/nodes/createWetSheenNode.d.ts
|
|
2275
|
+
export declare const createWetSheenNode: ({ lightColor, sunDirection, wetness }: LightUniforms) => Node<"vec3">;
|
|
381
2276
|
//#endregion
|
|
382
2277
|
//#region src/nodes/createWindNode.d.ts
|
|
383
2278
|
export declare const createWindNode: ({ direction, gustSpeed, gustStrength, gustWidth, strength }: WindUniforms, groundPosition: Node<"vec2">) => Node<"vec2">;
|
|
384
2279
|
//#endregion
|
|
385
|
-
//#region src/
|
|
386
|
-
export declare const
|
|
2280
|
+
//#region src/nodes/getCloudSunColors.d.ts
|
|
2281
|
+
export declare const getCloudSunColors: ({ cloudFrontBackBlend, cloudLitBackColor, cloudLitColor, cloudShadeBackColor, cloudShadeColor }: Pick<SkyUniforms, "cloudFrontBackBlend" | "cloudLitBackColor" | "cloudLitColor" | "cloudShadeBackColor" | "cloudShadeColor">, sunCosine: Node<"float">) => {
|
|
2282
|
+
lit: Node<"vec3">;
|
|
2283
|
+
shade: Node<"vec3">;
|
|
2284
|
+
};
|
|
387
2285
|
//#endregion
|
|
388
|
-
//#region src/
|
|
389
|
-
export
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
shadowTint: readonly [number, number, number];
|
|
394
|
-
size: number;
|
|
395
|
-
}
|
|
2286
|
+
//#region src/nodes/sampleGroundCapture.d.ts
|
|
2287
|
+
export declare const sampleGroundCapture: (groundCapture: GroundCapture, ground: Node<"vec2">) => {
|
|
2288
|
+
captured: Node<"vec4">;
|
|
2289
|
+
isInsideCapture: Node<"float">;
|
|
2290
|
+
};
|
|
396
2291
|
//#endregion
|
|
397
|
-
//#region src/
|
|
398
|
-
export
|
|
399
|
-
bloomNode?: BloomNode;
|
|
400
|
-
godraysNode?: GodraysNode;
|
|
401
|
-
renderPipeline: RenderPipeline;
|
|
402
|
-
}
|
|
2292
|
+
//#region src/nodes/setObjectFade.d.ts
|
|
2293
|
+
export declare const setObjectFade: (object: Object3D, fade: number) => void;
|
|
403
2294
|
//#endregion
|
|
404
|
-
//#region src/
|
|
405
|
-
export declare
|
|
406
|
-
Smaa = "Smaa",
|
|
407
|
-
Traa = "Traa"
|
|
408
|
-
}
|
|
2295
|
+
//#region src/nodes/setObjectSurface.d.ts
|
|
2296
|
+
export declare const setObjectSurface: (object: Object3D, color: ColorRepresentation, detail?: SurfaceDetail) => void;
|
|
409
2297
|
//#endregion
|
|
410
|
-
//#region src/
|
|
411
|
-
export
|
|
412
|
-
|
|
413
|
-
cascadeCount: number;
|
|
414
|
-
godraysStepCount: number;
|
|
415
|
-
grassDensity: number;
|
|
416
|
-
isBloomEnabled: boolean;
|
|
417
|
-
maxPixelRatio: number;
|
|
418
|
-
shadowMapSize: number;
|
|
419
|
-
}
|
|
2298
|
+
//#region src/noise/constants.d.ts
|
|
2299
|
+
export declare const SPECTRAL_RADIAL_BIN_COUNT = 16;
|
|
2300
|
+
export declare const SPECTRAL_ANGULAR_BIN_COUNT = 8;
|
|
420
2301
|
//#endregion
|
|
421
|
-
//#region src/
|
|
422
|
-
export
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
2302
|
+
//#region src/noise/createSimplexNoise.d.ts
|
|
2303
|
+
export declare const createSimplexNoise: (seed: number) => ((x: number, y: number) => number);
|
|
2304
|
+
//#endregion
|
|
2305
|
+
//#region src/noise/getSpectralBin.d.ts
|
|
2306
|
+
export declare const getSpectralBin: (column: number, row: number, width: number, height: number) => number | undefined;
|
|
2307
|
+
//#endregion
|
|
2308
|
+
//#region src/noise/synthesizeSpectralNoise.d.ts
|
|
2309
|
+
export declare const synthesizeSpectralNoise: ({ channels, height, width }: SpectralNoiseProfile, random: () => number) => Float32Array[];
|
|
2310
|
+
//#endregion
|
|
2311
|
+
//#region src/noise/transformFourierGrid.d.ts
|
|
2312
|
+
export declare const transformFourierGrid: (real: Float64Array, imaginary: Float64Array, width: number, height: number) => void;
|
|
432
2313
|
//#endregion
|
|
433
2314
|
//#region src/post/computeGradeLut.d.ts
|
|
434
2315
|
export declare const computeGradeLut: ({ contrast, highlightTint, saturation, shadowTint, size }: GradeOptions) => Uint8Array;
|
|
435
2316
|
//#endregion
|
|
2317
|
+
//#region src/post/computeWhiteBalance.d.ts
|
|
2318
|
+
export declare const computeWhiteBalance: ({ temperature, tint }: WhiteBalance, whiteBalance?: Matrix3) => Matrix3;
|
|
2319
|
+
//#endregion
|
|
436
2320
|
//#region src/post/createFogUniforms.d.ts
|
|
437
2321
|
export declare const createFogUniforms: () => FogUniforms;
|
|
438
2322
|
//#endregion
|
|
@@ -443,207 +2327,205 @@ export declare const createGodraysLight: (shadowMapSize: number, halfExtent: num
|
|
|
443
2327
|
export declare const createGradeLutTexture: (gradeOptions: GradeOptions) => Data3DTexture;
|
|
444
2328
|
//#endregion
|
|
445
2329
|
//#region src/post/createHeightFogNode.d.ts
|
|
446
|
-
export declare const createHeightFogNode: (colorNode: Node<"vec4">, depthNode: TextureNode, camera: Camera, { baseHeight, color, density, heightFalloff, scatterColor, scatterDirection, scatterPower, scatterStrength, startDistance }: FogUniforms
|
|
2330
|
+
export declare const createHeightFogNode: (colorNode: Node<"vec4">, depthNode: TextureNode, camera: Camera, { baseHeight, color, density, heightFalloff, maxOpacity, scatterColor, scatterDirection, scatterPower, scatterStrength, startDistance }: FogUniforms, stoneHaze?: Pick<StoneLightUniforms, "hazeColor" | "hazeScatterColor"> & {
|
|
2331
|
+
maskNode: TextureNode;
|
|
2332
|
+
}) => Node<"vec4">;
|
|
2333
|
+
//#endregion
|
|
2334
|
+
//#region src/post/createOcclusionNode.d.ts
|
|
2335
|
+
export declare const createOcclusionNode: (depthNode: TextureNode, camera: Camera, radius: number) => GTAONode;
|
|
447
2336
|
//#endregion
|
|
448
2337
|
//#region src/post/createPostPipeline.d.ts
|
|
449
|
-
export declare const createPostPipeline: ({ camera, fogUniforms, godraysLight, gradeLutTexture, postUniforms: { godraysColor, gradeIntensity, outlineColor, outlineFadeDistance, outlineThickness }, qualityTierSettings: { antialiasingMode, godraysStepCount, isBloomEnabled }, renderer, scene }: PostPipelineOptions) => PostPipeline;
|
|
2338
|
+
export declare const createPostPipeline: ({ camera, fogUniforms, godraysLight, gradeLutTexture, isBloomed, occlusionRadius, postUniforms: { godraysColor, gradeIntensity, outlineColor, outlineFadeDistance, outlineThickness, whiteBalance }, qualityTierSettings: { antialiasingMode, godraysStepCount, isBloomEnabled, isOcclusionEnabled }, renderer, scene, sight, stoneLight }: PostPipelineOptions) => PostPipeline;
|
|
450
2339
|
//#endregion
|
|
451
2340
|
//#region src/post/createPostUniforms.d.ts
|
|
452
2341
|
export declare const createPostUniforms: () => PostUniforms;
|
|
453
2342
|
//#endregion
|
|
454
|
-
//#region src/post/
|
|
455
|
-
export declare const
|
|
2343
|
+
//#region src/post/createSightNode.d.ts
|
|
2344
|
+
export declare const createSightNode: (colorNode: Node<"vec4">, depthNode: TextureNode, camera: Camera, litPass: PassNode, { origin, radius, strength }: SightUniforms) => Node<"vec4">;
|
|
456
2345
|
//#endregion
|
|
457
|
-
//#region src/post/
|
|
458
|
-
export declare const
|
|
2346
|
+
//#region src/post/createSightUniforms.d.ts
|
|
2347
|
+
export declare const createSightUniforms: () => SightUniforms;
|
|
459
2348
|
//#endregion
|
|
460
|
-
//#region src/
|
|
461
|
-
export declare const
|
|
2349
|
+
//#region src/post/toSceneColor.d.ts
|
|
2350
|
+
export declare const toSceneColor: (displayColor: Color, sceneColor?: Color) => Color;
|
|
462
2351
|
//#endregion
|
|
463
|
-
//#region src/
|
|
464
|
-
export declare
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
}
|
|
2352
|
+
//#region src/post/toneMapGenshin.d.ts
|
|
2353
|
+
export declare const toneMapGenshin: (sceneColor: readonly [number, number, number], toneMapped?: [number, number, number]) => [number, number, number];
|
|
2354
|
+
//#endregion
|
|
2355
|
+
//#region src/post/toneMapGenshinNode.d.ts
|
|
2356
|
+
export declare const toneMapGenshinNode: (sceneColor: Node<"vec3">) => Node<"vec3">;
|
|
469
2357
|
//#endregion
|
|
470
2358
|
//#region src/renderer/QualityTierSettingsMap.d.ts
|
|
471
2359
|
export declare const QualityTierSettingsMap: Readonly<Record<QualityTier, QualityTierSettings>>;
|
|
472
2360
|
//#endregion
|
|
2361
|
+
//#region src/renderer/attachInspector.d.ts
|
|
2362
|
+
export declare const attachInspector: (renderer: Renderer) => Promise<Inspector>;
|
|
2363
|
+
//#endregion
|
|
473
2364
|
//#region src/renderer/constants.d.ts
|
|
474
2365
|
export declare const GENSHIN_TONE_MAPPING: ToneMapping;
|
|
2366
|
+
export declare const GENSHIN_TONE_CONTRAST = .5;
|
|
2367
|
+
export declare const GENSHIN_TONE_EXPOSURE = 1;
|
|
2368
|
+
export declare const TONE_CONTRAST_OFFSET = .01;
|
|
2369
|
+
export declare const TONE_CURVE_LIFT = 1e-4;
|
|
2370
|
+
export declare const TONE_CURVE_FLOOR: number;
|
|
475
2371
|
//#endregion
|
|
476
|
-
//#region src/renderer/
|
|
477
|
-
export declare const
|
|
478
|
-
aspect: number;
|
|
479
|
-
fov: number;
|
|
480
|
-
pitch: number;
|
|
481
|
-
yaw: number;
|
|
482
|
-
}, [x, y]: [number, number]) => Vector3;
|
|
483
|
-
//#endregion
|
|
484
|
-
//#region src/scene/SceneMaterial.d.ts
|
|
485
|
-
export interface SceneMaterial {
|
|
486
|
-
colors: Record<string, [number, number, number, number]>;
|
|
487
|
-
floats: Record<string, number>;
|
|
488
|
-
name: string;
|
|
489
|
-
textures: Record<string, {
|
|
490
|
-
name: string;
|
|
491
|
-
offset: [number, number];
|
|
492
|
-
scale: [number, number];
|
|
493
|
-
}>;
|
|
494
|
-
}
|
|
2372
|
+
//#region src/renderer/createGenshinRenderer.d.ts
|
|
2373
|
+
export declare const createGenshinRenderer: (canvas: HTMLCanvasElement) => WebGPURenderer;
|
|
495
2374
|
//#endregion
|
|
496
|
-
//#region src/
|
|
497
|
-
export
|
|
498
|
-
materials: string[];
|
|
499
|
-
mesh: string;
|
|
500
|
-
position: [number, number, number];
|
|
501
|
-
rotation: [number, number, number, number];
|
|
502
|
-
scale: [number, number, number];
|
|
503
|
-
}
|
|
2375
|
+
//#region src/renderer/createInstancedMesh.d.ts
|
|
2376
|
+
export declare const createInstancedMesh: <TGeometry extends BufferGeometry, TMaterial extends Material | Material[]>(geometry: TGeometry, material: TMaterial, count: number) => InstancedMesh<TGeometry, TMaterial>;
|
|
504
2377
|
//#endregion
|
|
505
|
-
//#region src/
|
|
506
|
-
export
|
|
507
|
-
materials: Record<string, SceneMaterial>;
|
|
508
|
-
placements: ScenePlacement[];
|
|
509
|
-
}
|
|
2378
|
+
//#region src/renderer/getScreenDirection.d.ts
|
|
2379
|
+
export declare const getScreenDirection: ({ aspect, fov, pitch, yaw }: ScreenCamera, [x, y]: [number, number]) => Vector3;
|
|
510
2380
|
//#endregion
|
|
511
|
-
//#region src/
|
|
512
|
-
export
|
|
513
|
-
count: number;
|
|
514
|
-
keys: Float64Array;
|
|
515
|
-
}
|
|
2381
|
+
//#region src/simulation/constants.d.ts
|
|
2382
|
+
export declare const MAX_STEPS_PER_FRAME = 5;
|
|
516
2383
|
//#endregion
|
|
517
|
-
//#region src/
|
|
518
|
-
export
|
|
519
|
-
dispose: () => void;
|
|
520
|
-
get: (key: number) => TTile | undefined;
|
|
521
|
-
has: (key: number) => boolean;
|
|
522
|
-
receive: (key: number, tile: TTile) => void;
|
|
523
|
-
update: (wanted: TerrainSelection, drawn: TerrainSelection) => void;
|
|
524
|
-
}
|
|
2384
|
+
//#region src/simulation/createFixedStepLoop.d.ts
|
|
2385
|
+
export declare const createFixedStepLoop: (stepSeconds: number, step: () => void) => FixedStepLoop;
|
|
525
2386
|
//#endregion
|
|
526
|
-
//#region src/streaming/
|
|
527
|
-
export
|
|
528
|
-
disposeTile: (tile: TTile) => void;
|
|
529
|
-
maxCachedCount: number;
|
|
530
|
-
maxPendingCount: number;
|
|
531
|
-
requestTile: (key: number) => void;
|
|
532
|
-
}
|
|
2387
|
+
//#region src/streaming/constants.d.ts
|
|
2388
|
+
export declare const MAX_TILE_ATTEMPTS = 3;
|
|
533
2389
|
//#endregion
|
|
534
2390
|
//#region src/streaming/createTileStreamer.d.ts
|
|
535
2391
|
export declare const createTileStreamer: <TTile>({ disposeTile, maxCachedCount, maxPendingCount, requestTile }: TileStreamerOptions<TTile>) => TileStreamer<TTile>;
|
|
536
2392
|
//#endregion
|
|
537
|
-
//#region src/terrain/
|
|
538
|
-
export
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
finestTileSize: number;
|
|
542
|
-
levelCount: number;
|
|
543
|
-
maxHeight: number;
|
|
544
|
-
minHeight: number;
|
|
545
|
-
morphShare: number;
|
|
546
|
-
}
|
|
2393
|
+
//#region src/terrain/TerrainFeatureKindBlendMap.d.ts
|
|
2394
|
+
export declare const TerrainFeatureKindBlendMap: { [K in TerrainFeatureKind]: (feature: Extract<TerrainFeature, {
|
|
2395
|
+
kind: K;
|
|
2396
|
+
}>, x: number, z: number) => number; };
|
|
547
2397
|
//#endregion
|
|
548
|
-
//#region src/terrain/
|
|
549
|
-
export
|
|
550
|
-
coarsePositions: Float32Array;
|
|
551
|
-
colors: Float32Array;
|
|
552
|
-
key: number;
|
|
553
|
-
normals: Float32Array;
|
|
554
|
-
positions: Float32Array;
|
|
555
|
-
}
|
|
2398
|
+
//#region src/terrain/blendGridNodes.d.ts
|
|
2399
|
+
export declare const blendGridNodes: (values: readonly number[], sizeX: number, sizeZ: number, column: number, row: number) => number;
|
|
556
2400
|
//#endregion
|
|
557
|
-
//#region src/terrain/
|
|
558
|
-
export
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
2401
|
+
//#region src/terrain/checkTerrainBoundsOverlap.d.ts
|
|
2402
|
+
export declare const checkTerrainBoundsOverlap: (first: TerrainBounds, second: TerrainBounds) => boolean;
|
|
2403
|
+
//#endregion
|
|
2404
|
+
//#region src/terrain/checkTerrainDrawsChanged.d.ts
|
|
2405
|
+
export declare const checkTerrainDrawsChanged: ({ finestTileSize }: Pick<TerrainOptions, "finestTileSize">, previous: TerrainSelection, next: TerrainSelection, center: Vector3Like, halfSize: number) => boolean;
|
|
2406
|
+
//#endregion
|
|
2407
|
+
//#region src/terrain/checkTerrainTileCasts.d.ts
|
|
2408
|
+
export declare const checkTerrainTileCasts: ({ finestRange }: Pick<TerrainOptions, "finestRange">, key: number, shadowReach: number) => boolean;
|
|
563
2409
|
//#endregion
|
|
564
2410
|
//#region src/terrain/computeTerrainIndices.d.ts
|
|
565
2411
|
export declare const computeTerrainIndices: (cellsPerSide: number) => Uint16Array | Uint32Array;
|
|
566
2412
|
//#endregion
|
|
567
|
-
//#region src/terrain/computeTerrainTile.d.ts
|
|
568
|
-
export declare const computeTerrainTile: ({ cellsPerSide, finestTileSize, getHeight, key, writeColor }: TerrainTileOptions) => TerrainTile;
|
|
569
|
-
//#endregion
|
|
570
2413
|
//#region src/terrain/constants.d.ts
|
|
571
2414
|
export declare const TILE_INDEX_OFFSET: number;
|
|
572
2415
|
export declare const TILE_INDEX_SPAN: number;
|
|
573
2416
|
export declare const TERRAIN_LAYER = 1;
|
|
2417
|
+
export declare const TERRAIN_RING_INITIAL_TILE_COUNT = 64;
|
|
2418
|
+
export declare const TERRAIN_CELL_SIZE = 64;
|
|
2419
|
+
export declare const GAUSSIAN_REACH_WIDTHS = 3;
|
|
2420
|
+
export declare const TERRAIN_HEIGHT_PADDING = 2;
|
|
2421
|
+
//#endregion
|
|
2422
|
+
//#region src/terrain/createGaussianHillsHeight.d.ts
|
|
2423
|
+
export declare const createGaussianHillsHeight: ({ base, hills }: GaussianHills) => ((x: number, z: number) => number);
|
|
2424
|
+
//#endregion
|
|
2425
|
+
//#region src/terrain/createResidualHeight.d.ts
|
|
2426
|
+
export declare const createResidualHeight: ({ amplitude, fade, octaves, scale, seed }: TerrainResidual) => ((x: number, z: number) => number);
|
|
2427
|
+
//#endregion
|
|
2428
|
+
//#region src/terrain/createTerrainFeaturesBlend.d.ts
|
|
2429
|
+
export declare const createTerrainFeaturesBlend: (features: readonly TerrainFeature[]) => ((x: number, z: number) => number);
|
|
2430
|
+
//#endregion
|
|
2431
|
+
//#region src/terrain/createTerrainFeaturesHeight.d.ts
|
|
2432
|
+
export declare const createTerrainFeaturesHeight: (features: readonly TerrainFeature[]) => ((x: number, z: number) => number);
|
|
574
2433
|
//#endregion
|
|
575
2434
|
//#region src/terrain/createTerrainMaterial.d.ts
|
|
576
|
-
export declare const createTerrainMaterial: (
|
|
2435
|
+
export declare const createTerrainMaterial: (terrainOptions: Pick<TerrainOptions, "finestRange" | "finestTileSize" | "maxHeight" | "minHeight">, eye: UniformNode<"vec3", Vector3>, toonMaterialOptions: Pick<ToonMaterialOptions, "lightUniforms" | "rampTexture">, waterUniforms?: WaterUniforms) => ToonNodeMaterial;
|
|
2436
|
+
//#endregion
|
|
2437
|
+
//#region src/terrain/createTerrainRing.d.ts
|
|
2438
|
+
export declare const createTerrainRing: ({ cellsPerSide, finestTileSize }: Pick<TerrainOptions, "cellsPerSide" | "finestTileSize">, tileIndices: Uint16Array | Uint32Array, material: Material) => TerrainRing;
|
|
577
2439
|
//#endregion
|
|
578
2440
|
//#region src/terrain/createTerrainSelection.d.ts
|
|
579
2441
|
export declare const createTerrainSelection: (capacity: number) => TerrainSelection;
|
|
580
2442
|
//#endregion
|
|
581
2443
|
//#region src/terrain/createTerrainTileGeometry.d.ts
|
|
582
|
-
export declare const createTerrainTileGeometry: ({ coarsePositions, colors, normals, positions }:
|
|
2444
|
+
export declare const createTerrainTileGeometry: ({ coarseColors, coarseNormals, coarsePositions, colors, normals, positions }: TerrainTileArrays, index: BufferAttribute, boundingBox: Box3) => BufferGeometry;
|
|
2445
|
+
//#endregion
|
|
2446
|
+
//#region src/terrain/fileByCell.d.ts
|
|
2447
|
+
export declare const fileByCell: <T>(items: readonly T[], getBounds: (item: T) => TerrainBounds) => ((x: number, z: number) => readonly T[]);
|
|
2448
|
+
//#endregion
|
|
2449
|
+
//#region src/terrain/getCliffBlend.d.ts
|
|
2450
|
+
export declare const getCliffBlend: (feature: CliffFeature, x: number, z: number) => number;
|
|
2451
|
+
//#endregion
|
|
2452
|
+
//#region src/terrain/getGaussianHillBlend.d.ts
|
|
2453
|
+
export declare const getGaussianHillBlend: ({ width, x: hillX, z: hillZ }: Pick<GaussianHill, "width" | "x" | "z">, x: number, z: number) => number;
|
|
583
2454
|
//#endregion
|
|
584
2455
|
//#region src/terrain/getParentTerrainTileKey.d.ts
|
|
585
2456
|
export declare const getParentTerrainTileKey: (key: number) => number;
|
|
586
2457
|
//#endregion
|
|
587
|
-
//#region src/terrain/
|
|
588
|
-
export declare const
|
|
2458
|
+
//#region src/terrain/getPlateauBlend.d.ts
|
|
2459
|
+
export declare const getPlateauBlend: (feature: PlateauFeature, x: number, z: number) => number;
|
|
2460
|
+
//#endregion
|
|
2461
|
+
//#region src/terrain/getRidgeBlend.d.ts
|
|
2462
|
+
export declare const getRidgeBlend: (feature: RidgeFeature, x: number, z: number) => number;
|
|
2463
|
+
//#endregion
|
|
2464
|
+
//#region src/terrain/getSegmentBounds.d.ts
|
|
2465
|
+
export declare const getSegmentBounds: (startX: number, startZ: number, endX: number, endZ: number, reach: number) => TerrainBounds;
|
|
2466
|
+
//#endregion
|
|
2467
|
+
//#region src/terrain/getTerrainFeatureBounds.d.ts
|
|
2468
|
+
export declare const getTerrainFeatureBounds: (feature: TerrainFeature) => TerrainBounds;
|
|
2469
|
+
//#endregion
|
|
2470
|
+
//#region src/terrain/getTerrainMorphStart.d.ts
|
|
2471
|
+
export declare const getTerrainMorphStart: ({ finestRange, finestTileSize }: Pick<TerrainOptions, "finestRange" | "finestTileSize">) => number;
|
|
2472
|
+
//#endregion
|
|
2473
|
+
//#region src/terrain/getTerrainOverlayBounds.d.ts
|
|
2474
|
+
export declare const getTerrainOverlayBounds: (shape: TerrainShape) => TerrainBounds;
|
|
2475
|
+
//#endregion
|
|
2476
|
+
//#region src/terrain/getTerrainShapeLevel.d.ts
|
|
2477
|
+
export declare const getTerrainShapeLevel: ({ base, hills }: GaussianHills, baseUnder: number) => PlateauFeature | undefined;
|
|
2478
|
+
//#endregion
|
|
2479
|
+
//#region src/terrain/getTerrainTileBounds.d.ts
|
|
2480
|
+
export declare const getTerrainTileBounds: (key: number, finestTileSize: number, cellsPerSide: number) => TerrainBounds;
|
|
589
2481
|
//#endregion
|
|
590
2482
|
//#region src/terrain/getTerrainTileKey.d.ts
|
|
591
2483
|
export declare const getTerrainTileKey: (level: number, column: number, row: number) => number;
|
|
592
2484
|
//#endregion
|
|
593
|
-
//#region src/terrain/
|
|
594
|
-
export declare const
|
|
595
|
-
//#endregion
|
|
596
|
-
//#region src/terrain/getTerrainTileRow.d.ts
|
|
597
|
-
export declare const getTerrainTileRow: (key: number) => number;
|
|
2485
|
+
//#region src/terrain/measureSegment.d.ts
|
|
2486
|
+
export declare const measureSegment: ({ endX, endZ, startX, startZ }: Pick<RidgeFeature, "endX" | "endZ" | "startX" | "startZ">, x: number, z: number) => Float64Array;
|
|
598
2487
|
//#endregion
|
|
599
2488
|
//#region src/terrain/resolveTerrainDraws.d.ts
|
|
600
2489
|
export declare const resolveTerrainDraws: ({ levelCount }: Pick<TerrainOptions, "levelCount">, wanted: TerrainSelection, checkTileLoaded: (key: number) => boolean, draws: TerrainSelection) => TerrainSelection;
|
|
601
2490
|
//#endregion
|
|
2491
|
+
//#region src/terrain/sampleGroundLayerField.d.ts
|
|
2492
|
+
export declare const sampleGroundLayerField: ({ cellSize, layers, origin, size }: GroundLayerField, x: number, z: number, weights: Record<GroundLayer, number>) => void;
|
|
2493
|
+
//#endregion
|
|
2494
|
+
//#region src/terrain/sampleTerrainResidualFade.d.ts
|
|
2495
|
+
export declare const sampleTerrainResidualFade: ({ cellSize, clearings, origin, size, weights }: TerrainResidualFade, x: number, z: number) => number;
|
|
2496
|
+
//#endregion
|
|
602
2497
|
//#region src/terrain/selectTerrainTiles.d.ts
|
|
603
2498
|
export declare const selectTerrainTiles: (terrainOptions: TerrainOptions, eye: Vector3Like, frustum: Frustum | undefined, selection: TerrainSelection) => TerrainSelection;
|
|
604
2499
|
//#endregion
|
|
605
|
-
//#region src/
|
|
606
|
-
export
|
|
607
|
-
indices: Uint16Array;
|
|
608
|
-
positions: Float32Array;
|
|
609
|
-
}
|
|
610
|
-
//#endregion
|
|
611
|
-
//#region src/vegetation/GrassRing.d.ts
|
|
612
|
-
export interface GrassRing {
|
|
613
|
-
cellsPerSide: number;
|
|
614
|
-
fadeEnd: number;
|
|
615
|
-
fadeStart: number;
|
|
616
|
-
innerRadius: number;
|
|
617
|
-
scale: number;
|
|
618
|
-
spacing: number;
|
|
619
|
-
}
|
|
2500
|
+
//#region src/terrain/writeTerrainRingIndices.d.ts
|
|
2501
|
+
export declare const writeTerrainRingIndices: (ringIndices: Uint32Array, tileIndices: Uint16Array | Uint32Array, drawnOrdinals: readonly number[], vertexCount: number) => number;
|
|
620
2502
|
//#endregion
|
|
621
|
-
//#region src/
|
|
622
|
-
export
|
|
623
|
-
camera: OrthographicCamera;
|
|
624
|
-
center: UniformNode<"vec2", Vector2>;
|
|
625
|
-
material: MeshBasicNodeMaterial;
|
|
626
|
-
renderTarget: RenderTarget;
|
|
627
|
-
size: number;
|
|
628
|
-
}
|
|
2503
|
+
//#region src/terrain/writeTerrainRingTile.d.ts
|
|
2504
|
+
export declare const writeTerrainRingTile: (ring: TerrainTileArrays, base: number, tile: TerrainTile, finestTileSize: number) => void;
|
|
629
2505
|
//#endregion
|
|
630
|
-
//#region src/vegetation/
|
|
631
|
-
export
|
|
632
|
-
bladeHeight: number;
|
|
633
|
-
bladeWidth: number;
|
|
634
|
-
cameraGround: UniformNode<"vec2", Vector2>;
|
|
635
|
-
density: UniformNode<"float", number>;
|
|
636
|
-
groundCapture: GroundCapture;
|
|
637
|
-
lightUniforms: LightUniforms;
|
|
638
|
-
rampTexture: DataTexture;
|
|
639
|
-
ring: GrassRing;
|
|
640
|
-
waterUniforms: Pick<WaterUniforms, "level">;
|
|
641
|
-
windUniforms: WindUniforms;
|
|
642
|
-
}
|
|
2506
|
+
//#region src/vegetation/bakeImpostor.d.ts
|
|
2507
|
+
export declare const bakeImpostor: (renderer: Renderer, parts: readonly ImpostorPart[], resolution: number) => Impostor;
|
|
643
2508
|
//#endregion
|
|
644
2509
|
//#region src/vegetation/computeGrassBlade.d.ts
|
|
645
2510
|
export declare const computeGrassBlade: (segmentCount: number) => GrassBlade;
|
|
646
2511
|
//#endregion
|
|
2512
|
+
//#region src/vegetation/constants.d.ts
|
|
2513
|
+
export declare const IMPOSTOR_RESOLUTION = 256;
|
|
2514
|
+
export declare const IMPOSTOR_SWITCH_HEIGHTS = 10;
|
|
2515
|
+
export declare const IMPOSTOR_CROSSFADE_SHARE = .1;
|
|
2516
|
+
export declare const FLOWER_BEND_PER_WIND = .12;
|
|
2517
|
+
export declare const FLOWER_MATRIX_ATTRIBUTE_NAMES: readonly ["flowerMatrix0", "flowerMatrix1", "flowerMatrix2", "flowerMatrix3"];
|
|
2518
|
+
export declare const FLOWER_COLOR_ATTRIBUTE_NAME = "flowerColor";
|
|
2519
|
+
//#endregion
|
|
2520
|
+
//#region src/vegetation/createFlowerGeometry.d.ts
|
|
2521
|
+
export declare const createFlowerGeometry: () => BufferGeometry;
|
|
2522
|
+
//#endregion
|
|
2523
|
+
//#region src/vegetation/createFlowerMaterial.d.ts
|
|
2524
|
+
export declare const createFlowerMaterial: (toonMaterialOptions: Pick<ToonMaterialOptions, "lightUniforms" | "rampTexture">, windUniforms: WindUniforms) => ToonNodeMaterial;
|
|
2525
|
+
//#endregion
|
|
2526
|
+
//#region src/vegetation/createFlowerTileGeometry.d.ts
|
|
2527
|
+
export declare const createFlowerTileGeometry: (matrices: Float32Array, colors: Float32Array) => InstancedBufferGeometry;
|
|
2528
|
+
//#endregion
|
|
647
2529
|
//#region src/vegetation/createGrassGeometry.d.ts
|
|
648
2530
|
export declare const createGrassGeometry: (segmentCount: number, bladeCount: number) => InstancedBufferGeometry;
|
|
649
2531
|
//#endregion
|
|
@@ -656,35 +2538,35 @@ export declare const createGroundCapture: (size: number, resolution: number) =>
|
|
|
656
2538
|
//#region src/vegetation/renderGroundCapture.d.ts
|
|
657
2539
|
export declare const renderGroundCapture: (renderer: Renderer, scene: Scene, { camera, center, material, renderTarget }: GroundCapture, { maxHeight }: Pick<TerrainOptions, "maxHeight">, worldCenter: Vector3Like, origin: Vector3Like) => void;
|
|
658
2540
|
//#endregion
|
|
659
|
-
//#region src/water/
|
|
660
|
-
export
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
}
|
|
2541
|
+
//#region src/water/constants.d.ts
|
|
2542
|
+
export declare const RIVER_BEND_FOAM_ATTRIBUTE = "bendFoam";
|
|
2543
|
+
export declare const BEND_FOAM_FULL_RADIUS_WIDTHS = 2;
|
|
2544
|
+
//#endregion
|
|
2545
|
+
//#region src/water/createRiverGeometry.d.ts
|
|
2546
|
+
export declare const createRiverGeometry: (course: readonly RiverCoursePoint[]) => BufferGeometry;
|
|
666
2547
|
//#endregion
|
|
667
2548
|
//#region src/water/createUnderwaterFogState.d.ts
|
|
668
2549
|
export declare const createUnderwaterFogState: () => UnderwaterFogState;
|
|
669
2550
|
//#endregion
|
|
2551
|
+
//#region src/water/createWaterFlowUniforms.d.ts
|
|
2552
|
+
export declare const createWaterFlowUniforms: () => WaterFlow;
|
|
2553
|
+
//#endregion
|
|
670
2554
|
//#region src/water/createWaterUniforms.d.ts
|
|
671
2555
|
export declare const createWaterUniforms: () => WaterUniforms;
|
|
672
2556
|
//#endregion
|
|
2557
|
+
//#region src/water/createWaterfallGeometry.d.ts
|
|
2558
|
+
export declare const createWaterfallGeometry: ({ across, drop, lip, width }: WaterfallSheet) => BufferGeometry;
|
|
2559
|
+
//#endregion
|
|
673
2560
|
//#region src/water/updateUnderwaterFog.d.ts
|
|
674
|
-
export declare const updateUnderwaterFog: (eyeHeight: number, { level, underwaterFogColor, underwaterFogDensity }: Pick<WaterUniforms, "level" | "underwaterFogColor" | "underwaterFogDensity">, { color, density, heightFalloff, startDistance }: FogUniforms, underwaterFogState: UnderwaterFogState) => void;
|
|
2561
|
+
export declare const updateUnderwaterFog: (eyeHeight: number, { level, underwaterFogColor, underwaterFogDensity }: Pick<WaterUniforms, "level" | "underwaterFogColor" | "underwaterFogDensity">, { color, density, heightFalloff, maxOpacity, startDistance }: FogUniforms, underwaterFogState: UnderwaterFogState) => void;
|
|
675
2562
|
//#endregion
|
|
676
2563
|
//#region src/wind/createWindUniforms.d.ts
|
|
677
2564
|
export declare const createWindUniforms: () => WindUniforms;
|
|
678
2565
|
//#endregion
|
|
679
|
-
//#region src/world/GroundPoint.d.ts
|
|
680
|
-
export interface GroundPoint {
|
|
681
|
-
x: number;
|
|
682
|
-
z: number;
|
|
683
|
-
}
|
|
684
|
-
//#endregion
|
|
685
2566
|
//#region src/world/computeOriginShift.d.ts
|
|
686
2567
|
export declare const computeOriginShift: (cameraPosition: Vector3, threshold: number, step: number, shift: Vector3) => boolean;
|
|
687
2568
|
//#endregion
|
|
688
2569
|
//#region src/world/computeOutlineDistance.d.ts
|
|
689
2570
|
export declare const computeOutlineDistance: (outline: readonly GroundPoint[], x: number, z: number) => number;
|
|
690
|
-
//#endregion
|
|
2571
|
+
//#endregion
|
|
2572
|
+
export { CliffFeature, GaussianHill, GaussianHills, GroundBand, GroundLayer, GroundLayerColors, GroundLayerField, GroundLayers, GroundPaint, GroundPathSegment, PlateauFeature, RidgeFeature, ScatterOptions, TerrainFeature, TerrainFeatureKind, TerrainOptions, TerrainResidual, TerrainResidualClearing, TerrainResidualFade, TerrainShape, TerrainTile, TerrainTileOptions, computeScatterPoints, computeTerrainTile, createGroundLayerWeights, createGroundPaintColor, createSeededRandom, createTerrainShapeHeight, getTerrainTileColumn, getTerrainTileLevel, getTerrainTileRow };
|