genshin-engine 3.8.1 → 4.0.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 +2 -2
- package/dist/index.d.ts +556 -247
- package/dist/index.js +894 -195
- package/package.json +8 -7
package/dist/index.d.ts
CHANGED
|
@@ -1,25 +1,12 @@
|
|
|
1
|
-
import { BufferAttribute, BufferGeometry, Camera, CanvasTexture, Color, ColorRepresentation, Data3DTexture, DataTexture, DirectionalLight,
|
|
2
|
-
import { MeshBasicNodeMaterial, MeshToonNodeMaterial, MeshToonNodeMaterialParameters, Node, RenderPipeline, RenderTarget, Renderer,
|
|
1
|
+
import { BufferAttribute, BufferGeometry, Camera, CanvasTexture, Color, ColorRepresentation, Data3DTexture, DataTexture, DirectionalLight, Frustum, HemisphereLight, InstancedBufferGeometry, Matrix4, OrthographicCamera, Scene, Sprite, Texture, ToneMapping, Vector2, Vector3, Vector3Like } from "three";
|
|
2
|
+
import { LightingModel, LightingModelDirectInput, MeshBasicNodeMaterial, MeshToonNodeMaterial, MeshToonNodeMaterialParameters, Node, NodeBuilder, NodeMaterial, RenderPipeline, RenderTarget, Renderer, TextureNode, UniformArrayNode, UniformNode, WebGPURenderer } from "three/webgpu";
|
|
3
3
|
import { CSMShadowNode } from "three/examples/jsm/csm/CSMShadowNode.js";
|
|
4
|
+
import GTAONode from "three/examples/jsm/tsl/display/GTAONode.js";
|
|
4
5
|
import BloomNode from "three/examples/jsm/tsl/display/BloomNode.js";
|
|
5
6
|
import GodraysNode from "three/examples/jsm/tsl/display/GodraysNode.js";
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
distanceRange: [number, number];
|
|
10
|
-
heightRange: [number, number];
|
|
11
|
-
seed: number;
|
|
12
|
-
widthRange: [number, number];
|
|
13
|
-
}
|
|
14
|
-
//#endregion
|
|
15
|
-
//#region src/atmosphere/CloudSprite.d.ts
|
|
16
|
-
export interface CloudSprite {
|
|
17
|
-
lit: [number, number][][];
|
|
18
|
-
outline: [number, number][][];
|
|
19
|
-
}
|
|
20
|
-
//#endregion
|
|
21
|
-
//#region src/atmosphere/SkyKeyframe.d.ts
|
|
22
|
-
export interface SkyKeyframe {
|
|
7
|
+
import { Inspector } from "three/examples/jsm/inspector/Inspector.js";
|
|
8
|
+
//#region src/models/atmosphere/BaseSkyState.d.ts
|
|
9
|
+
export interface BaseSkyState {
|
|
23
10
|
cloudLitColor: Color;
|
|
24
11
|
cloudShadeColor: Color;
|
|
25
12
|
hemisphereGroundColor: Color;
|
|
@@ -28,35 +15,67 @@ export interface SkyKeyframe {
|
|
|
28
15
|
horizonColor: Color;
|
|
29
16
|
lightColor: Color;
|
|
30
17
|
lightIntensity: number;
|
|
31
|
-
minutes: number;
|
|
32
18
|
starIntensity: number;
|
|
33
19
|
zenithColor: Color;
|
|
34
20
|
}
|
|
35
21
|
//#endregion
|
|
36
|
-
//#region src/atmosphere/
|
|
37
|
-
export interface
|
|
22
|
+
//#region src/models/atmosphere/SkyShape.d.ts
|
|
23
|
+
export interface SkyShape {
|
|
24
|
+
frontBackBlend: number;
|
|
25
|
+
haloHeight: number;
|
|
26
|
+
horizonBand: number;
|
|
27
|
+
moonSize: number;
|
|
28
|
+
sunHaloSize: number;
|
|
29
|
+
}
|
|
30
|
+
//#endregion
|
|
31
|
+
//#region src/models/atmosphere/SkyState.d.ts
|
|
32
|
+
export interface SkyState extends BaseSkyState {
|
|
33
|
+
cloudLitBackColor?: Color;
|
|
34
|
+
cloudShadeBackColor?: Color;
|
|
38
35
|
fogColor?: Color;
|
|
36
|
+
fogDensity?: number;
|
|
37
|
+
fogHeightFalloff?: number;
|
|
38
|
+
fogMaxOpacity?: number;
|
|
39
|
+
haloColor?: Color;
|
|
40
|
+
horizonBackColor?: Color;
|
|
39
41
|
lightDirection: Vector3;
|
|
40
42
|
moonDirection: Vector3;
|
|
43
|
+
moonGlowColor?: Color;
|
|
44
|
+
shape?: SkyShape;
|
|
41
45
|
sunDirection: Vector3;
|
|
46
|
+
sunHaloColor?: Color;
|
|
47
|
+
zenithBackColor?: Color;
|
|
42
48
|
}
|
|
43
49
|
//#endregion
|
|
44
|
-
//#region src/atmosphere/SkyUniforms.d.ts
|
|
50
|
+
//#region src/models/atmosphere/SkyUniforms.d.ts
|
|
45
51
|
export interface SkyUniforms {
|
|
46
52
|
cloudCoverage: UniformNode<"float", number>;
|
|
47
53
|
cloudDrift: UniformNode<"vec2", Vector2>;
|
|
54
|
+
cloudFrontBackBlend: UniformNode<"float", number>;
|
|
55
|
+
cloudLitBackColor: UniformNode<"color", Color>;
|
|
48
56
|
cloudLitColor: UniformNode<"color", Color>;
|
|
57
|
+
cloudShadeBackColor: UniformNode<"color", Color>;
|
|
49
58
|
cloudShadeColor: UniformNode<"color", Color>;
|
|
59
|
+
cloudSunBrighten: UniformNode<"float", number>;
|
|
60
|
+
frontBackBlend: UniformNode<"float", number>;
|
|
61
|
+
haloColor: UniformNode<"color", Color>;
|
|
62
|
+
haloHeight: UniformNode<"float", number>;
|
|
63
|
+
horizonBackColor: UniformNode<"color", Color>;
|
|
50
64
|
horizonBand: UniformNode<"float", number>;
|
|
51
65
|
horizonColor: UniformNode<"color", Color>;
|
|
52
66
|
lightColor: UniformNode<"color", Color>;
|
|
53
67
|
moonDirection: UniformNode<"vec3", Vector3>;
|
|
68
|
+
moonGlowColor: UniformNode<"color", Color>;
|
|
69
|
+
moonSize: UniformNode<"float", number>;
|
|
54
70
|
starIntensity: UniformNode<"float", number>;
|
|
55
71
|
sunDirection: UniformNode<"vec3", Vector3>;
|
|
72
|
+
sunHaloColor: UniformNode<"color", Color>;
|
|
73
|
+
sunHaloSize: UniformNode<"float", number>;
|
|
74
|
+
zenithBackColor: UniformNode<"color", Color>;
|
|
56
75
|
zenithColor: UniformNode<"color", Color>;
|
|
57
76
|
}
|
|
58
77
|
//#endregion
|
|
59
|
-
//#region src/nodes/LightUniforms.d.ts
|
|
78
|
+
//#region src/models/nodes/LightUniforms.d.ts
|
|
60
79
|
export interface LightUniforms {
|
|
61
80
|
lightColor: UniformNode<"color", Color>;
|
|
62
81
|
rimColor: UniformNode<"color", Color>;
|
|
@@ -64,12 +83,13 @@ export interface LightUniforms {
|
|
|
64
83
|
sunDirection: UniformNode<"vec3", Vector3>;
|
|
65
84
|
}
|
|
66
85
|
//#endregion
|
|
67
|
-
//#region src/post/FogUniforms.d.ts
|
|
86
|
+
//#region src/models/post/FogUniforms.d.ts
|
|
68
87
|
export interface FogUniforms {
|
|
69
88
|
baseHeight: UniformNode<"float", number>;
|
|
70
89
|
color: UniformNode<"color", Color>;
|
|
71
90
|
density: UniformNode<"float", number>;
|
|
72
91
|
heightFalloff: UniformNode<"float", number>;
|
|
92
|
+
maxOpacity: UniformNode<"float", number>;
|
|
73
93
|
scatterColor: UniformNode<"color", Color>;
|
|
74
94
|
scatterDirection: UniformNode<"vec3", Vector3>;
|
|
75
95
|
scatterPower: UniformNode<"float", number>;
|
|
@@ -77,7 +97,7 @@ export interface FogUniforms {
|
|
|
77
97
|
startDistance: UniformNode<"float", number>;
|
|
78
98
|
}
|
|
79
99
|
//#endregion
|
|
80
|
-
//#region src/post/PostUniforms.d.ts
|
|
100
|
+
//#region src/models/post/PostUniforms.d.ts
|
|
81
101
|
export interface PostUniforms {
|
|
82
102
|
godraysColor: UniformNode<"color", Color>;
|
|
83
103
|
gradeIntensity: UniformNode<"float", number>;
|
|
@@ -86,10 +106,10 @@ export interface PostUniforms {
|
|
|
86
106
|
outlineThickness: UniformNode<"float", number>;
|
|
87
107
|
}
|
|
88
108
|
//#endregion
|
|
89
|
-
//#region src/atmosphere/SkyTargets.d.ts
|
|
109
|
+
//#region src/models/atmosphere/SkyTargets.d.ts
|
|
90
110
|
export interface SkyTargets {
|
|
91
111
|
fogUniforms: FogUniforms;
|
|
92
|
-
godraysLight
|
|
112
|
+
godraysLight?: DirectionalLight;
|
|
93
113
|
hemisphere: HemisphereLight;
|
|
94
114
|
light: DirectionalLight;
|
|
95
115
|
lightDistance: number;
|
|
@@ -98,34 +118,57 @@ export interface SkyTargets {
|
|
|
98
118
|
skyUniforms: SkyUniforms;
|
|
99
119
|
}
|
|
100
120
|
//#endregion
|
|
101
|
-
//#region src/atmosphere/SunLight.d.ts
|
|
102
|
-
export interface SunLight {
|
|
103
|
-
cascadedShadowNode: CSMShadowNode;
|
|
104
|
-
light: DirectionalLight;
|
|
105
|
-
}
|
|
106
|
-
//#endregion
|
|
107
|
-
//#region src/atmosphere/SunLightOptions.d.ts
|
|
108
|
-
export interface SunLightOptions {
|
|
109
|
-
cascadeCount: number;
|
|
110
|
-
maxFar: number;
|
|
111
|
-
shadowMapSize: number;
|
|
112
|
-
}
|
|
113
|
-
//#endregion
|
|
114
121
|
//#region src/atmosphere/applySkyState.d.ts
|
|
115
122
|
export declare const applySkyState: (skyState: SkyState, { fogUniforms, godraysLight, hemisphere, light, lightDistance, lightUniforms, postUniforms, skyUniforms }: SkyTargets) => void;
|
|
116
123
|
//#endregion
|
|
117
124
|
//#region src/atmosphere/computeSunDirection.d.ts
|
|
118
125
|
export declare const computeSunDirection: (minutes: number, tilt: number, sunDirection: Vector3) => Vector3;
|
|
119
126
|
//#endregion
|
|
127
|
+
//#region src/models/atmosphere/SkyGradient.d.ts
|
|
128
|
+
export interface SkyGradient {
|
|
129
|
+
green: readonly number[];
|
|
130
|
+
red: readonly number[];
|
|
131
|
+
}
|
|
132
|
+
//#endregion
|
|
133
|
+
//#region src/atmosphere/constants.d.ts
|
|
134
|
+
export declare const DEFAULT_SKY_SHAPE: Readonly<SkyShape>;
|
|
135
|
+
export declare const DEFAULT_SKY_GRADIENT: SkyGradient;
|
|
136
|
+
//#endregion
|
|
137
|
+
//#region src/models/atmosphere/CloudSprite.d.ts
|
|
138
|
+
export interface CloudSprite {
|
|
139
|
+
lit: [number, number][][];
|
|
140
|
+
outline: [number, number][][];
|
|
141
|
+
}
|
|
142
|
+
//#endregion
|
|
120
143
|
//#region src/atmosphere/createCloudAtlasTexture.d.ts
|
|
121
|
-
export declare const getCloudAtlasColumns: (spriteCount: number) => number;
|
|
122
144
|
export declare const createCloudAtlasTexture: (sprites: readonly CloudSprite[], cellSize: number) => CanvasTexture<OffscreenCanvas>;
|
|
123
145
|
//#endregion
|
|
124
|
-
//#region src/atmosphere/
|
|
125
|
-
export
|
|
126
|
-
|
|
146
|
+
//#region src/models/atmosphere/CloudBandSprite.d.ts
|
|
147
|
+
export interface CloudBandSprite {
|
|
148
|
+
cover: UniformNode<"float", number>;
|
|
149
|
+
dispose: () => void;
|
|
150
|
+
places: [number, number, number][];
|
|
151
|
+
sprite: Sprite;
|
|
152
|
+
}
|
|
153
|
+
//#endregion
|
|
154
|
+
//#region src/models/atmosphere/CloudBandSpriteOptions.d.ts
|
|
155
|
+
export interface CloudBandSpriteOptions {
|
|
156
|
+
aspect: number;
|
|
127
157
|
spriteCount: number;
|
|
128
|
-
}
|
|
158
|
+
}
|
|
159
|
+
//#endregion
|
|
160
|
+
//#region src/models/atmosphere/CloudPlacement.d.ts
|
|
161
|
+
export interface CloudPlacement {
|
|
162
|
+
position: [number, number, number];
|
|
163
|
+
spriteIndex: number;
|
|
164
|
+
width: number;
|
|
165
|
+
}
|
|
166
|
+
//#endregion
|
|
167
|
+
//#region src/atmosphere/createCloudBandSprite.d.ts
|
|
168
|
+
export declare const createCloudBandSprite: (atlas: Texture, clouds: readonly CloudPlacement[], { aspect, spriteCount }: CloudBandSpriteOptions, skyUniforms: SkyUniforms) => CloudBandSprite;
|
|
169
|
+
//#endregion
|
|
170
|
+
//#region src/atmosphere/createSkyGradientTexture.d.ts
|
|
171
|
+
export declare const createSkyGradientTexture: ({ green, red }: SkyGradient) => DataTexture;
|
|
129
172
|
//#endregion
|
|
130
173
|
//#region src/atmosphere/createSkyState.d.ts
|
|
131
174
|
export declare const createSkyState: () => SkyState;
|
|
@@ -133,20 +176,172 @@ export declare const createSkyState: () => SkyState;
|
|
|
133
176
|
//#region src/atmosphere/createSkyUniforms.d.ts
|
|
134
177
|
export declare const createSkyUniforms: () => SkyUniforms;
|
|
135
178
|
//#endregion
|
|
179
|
+
//#region src/models/atmosphere/SunLight.d.ts
|
|
180
|
+
export interface SunLight {
|
|
181
|
+
cascadedShadowNode: CSMShadowNode;
|
|
182
|
+
light: DirectionalLight;
|
|
183
|
+
}
|
|
184
|
+
//#endregion
|
|
185
|
+
//#region src/models/atmosphere/SunLightOptions.d.ts
|
|
186
|
+
export interface SunLightOptions {
|
|
187
|
+
cascadeCount: number;
|
|
188
|
+
maxFar: number;
|
|
189
|
+
shadowMapSize: number;
|
|
190
|
+
}
|
|
191
|
+
//#endregion
|
|
136
192
|
//#region src/atmosphere/createSunLight.d.ts
|
|
137
193
|
export declare const createSunLight: ({ cascadeCount, maxFar, shadowMapSize }: SunLightOptions) => SunLight;
|
|
138
194
|
//#endregion
|
|
195
|
+
//#region src/atmosphere/getCloudAtlasColumns.d.ts
|
|
196
|
+
export declare const getCloudAtlasColumns: (spriteCount: number) => number;
|
|
197
|
+
//#endregion
|
|
198
|
+
//#region src/atmosphere/orderByViewDepth.d.ts
|
|
199
|
+
export declare const orderByViewDepth: (places: readonly (readonly number[])[], { elements }: Matrix4, depths: Float64Array, order: Uint32Array) => boolean;
|
|
200
|
+
//#endregion
|
|
201
|
+
//#region src/models/atmosphere/CloudBandOptions.d.ts
|
|
202
|
+
export interface CloudBandOptions {
|
|
203
|
+
count: number;
|
|
204
|
+
distanceRange: [number, number];
|
|
205
|
+
heightRange: [number, number];
|
|
206
|
+
seed: number;
|
|
207
|
+
widthRange: [number, number];
|
|
208
|
+
}
|
|
209
|
+
//#endregion
|
|
139
210
|
//#region src/atmosphere/placeCloudBand.d.ts
|
|
140
|
-
export declare const placeCloudBand: ({ count, distanceRange: [near, far], heightRange: [low, high], seed, widthRange: [narrow, wide] }: CloudBandOptions, spriteCount: number) =>
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
211
|
+
export declare const placeCloudBand: ({ count, distanceRange: [near, far], heightRange: [low, high], seed, widthRange: [narrow, wide] }: CloudBandOptions, spriteCount: number) => CloudPlacement[];
|
|
212
|
+
//#endregion
|
|
213
|
+
//#region src/models/atmosphere/SkyKeyframe.d.ts
|
|
214
|
+
export interface SkyKeyframe extends BaseSkyState {
|
|
215
|
+
minutes: number;
|
|
216
|
+
}
|
|
145
217
|
//#endregion
|
|
146
218
|
//#region src/atmosphere/sampleSkyState.d.ts
|
|
147
219
|
export declare const sampleSkyState: (skyKeyframes: readonly SkyKeyframe[], minutes: number, tilt: number, skyState: SkyState) => SkyState;
|
|
148
220
|
//#endregion
|
|
149
|
-
//#region src/
|
|
221
|
+
//#region src/models/audio/MusicNote.d.ts
|
|
222
|
+
export interface MusicNote {
|
|
223
|
+
duration: number;
|
|
224
|
+
pitch: number;
|
|
225
|
+
start: number;
|
|
226
|
+
velocity: number;
|
|
227
|
+
}
|
|
228
|
+
//#endregion
|
|
229
|
+
//#region src/models/audio/Instrument.d.ts
|
|
230
|
+
export interface Instrument {
|
|
231
|
+
attack: number;
|
|
232
|
+
decay: number;
|
|
233
|
+
harmonics: number[];
|
|
234
|
+
level: number;
|
|
235
|
+
noiseBands: number[];
|
|
236
|
+
release: number;
|
|
237
|
+
sustain: number;
|
|
238
|
+
tuning: number;
|
|
239
|
+
}
|
|
240
|
+
//#endregion
|
|
241
|
+
//#region src/models/audio/MusicVoice.d.ts
|
|
242
|
+
export interface MusicVoice {
|
|
243
|
+
instrument: Instrument;
|
|
244
|
+
notes: MusicNote[];
|
|
245
|
+
}
|
|
246
|
+
//#endregion
|
|
247
|
+
//#region src/models/audio/ScheduledMusicNote.d.ts
|
|
248
|
+
export interface ScheduledMusicNote {
|
|
249
|
+
note: MusicNote;
|
|
250
|
+
time: number;
|
|
251
|
+
voice: MusicVoice;
|
|
252
|
+
}
|
|
253
|
+
//#endregion
|
|
254
|
+
//#region src/models/audio/MusicSegment.d.ts
|
|
255
|
+
export interface MusicSegment {
|
|
256
|
+
duration: number;
|
|
257
|
+
expression: number[];
|
|
258
|
+
voices: MusicVoice[];
|
|
259
|
+
}
|
|
260
|
+
//#endregion
|
|
261
|
+
//#region src/models/audio/ScheduledMusicSegment.d.ts
|
|
262
|
+
export interface ScheduledMusicSegment {
|
|
263
|
+
segment: MusicSegment;
|
|
264
|
+
start: number;
|
|
265
|
+
}
|
|
266
|
+
//#endregion
|
|
267
|
+
//#region src/audio/collectMusicNotes.d.ts
|
|
268
|
+
export declare const collectMusicNotes: ({ segment, start }: ScheduledMusicSegment, from: number, to: number) => ScheduledMusicNote[];
|
|
269
|
+
//#endregion
|
|
270
|
+
//#region src/models/audio/Music.d.ts
|
|
271
|
+
export interface Music {
|
|
272
|
+
isLooping: boolean;
|
|
273
|
+
order: number[];
|
|
274
|
+
segments: MusicSegment[];
|
|
275
|
+
}
|
|
276
|
+
//#endregion
|
|
277
|
+
//#region src/audio/collectMusicSegments.d.ts
|
|
278
|
+
export declare const collectMusicSegments: ({ isLooping, order, segments }: Music, from: number, to: number) => ScheduledMusicSegment[];
|
|
279
|
+
//#endregion
|
|
280
|
+
//#region src/audio/computeNoiseSamples.d.ts
|
|
281
|
+
export declare const computeNoiseSamples: (noiseBands: readonly number[], sampleRate: number) => Float32Array;
|
|
282
|
+
//#endregion
|
|
283
|
+
//#region src/models/audio/SoundEffect.d.ts
|
|
284
|
+
export interface SoundEffect {
|
|
285
|
+
frameSeconds: number;
|
|
286
|
+
levels: number[][];
|
|
287
|
+
}
|
|
288
|
+
//#endregion
|
|
289
|
+
//#region src/audio/computeSoundEffectSamples.d.ts
|
|
290
|
+
export declare const computeSoundEffectSamples: ({ frameSeconds, levels }: SoundEffect, sampleRate: number) => Float32Array;
|
|
291
|
+
//#endregion
|
|
292
|
+
//#region src/audio/constants.d.ts
|
|
293
|
+
export declare const MUSIC_LOOKAHEAD_SECONDS = 2;
|
|
294
|
+
export declare const MUSIC_SCHEDULE_INTERVAL_MS = 500;
|
|
295
|
+
export declare const RELEASE_TIME_CONSTANTS = 7;
|
|
296
|
+
export declare const MUSIC_NOISE_LENGTH: number;
|
|
297
|
+
export declare const MUSIC_NOISE_BAND_CENTRES: number[];
|
|
298
|
+
export declare const MUSIC_EXPRESSION_WINDOW_SECONDS = 8;
|
|
299
|
+
export declare const A4_PITCH = 69;
|
|
300
|
+
export declare const A4_FREQUENCY = 440;
|
|
301
|
+
export declare const MIDI_VELOCITY_MAX = 127;
|
|
302
|
+
//#endregion
|
|
303
|
+
//#region src/audio/createInstrumentWave.d.ts
|
|
304
|
+
export declare const createInstrumentWave: (context: BaseAudioContext, harmonics: number[]) => PeriodicWave;
|
|
305
|
+
//#endregion
|
|
306
|
+
//#region src/models/audio/MusicPlayer.d.ts
|
|
307
|
+
export interface MusicPlayer {
|
|
308
|
+
start: () => void;
|
|
309
|
+
stop: () => void;
|
|
310
|
+
}
|
|
311
|
+
//#endregion
|
|
312
|
+
//#region src/audio/createMusicPlayer.d.ts
|
|
313
|
+
export declare const createMusicPlayer: (context: AudioContext, music: Music, destination?: AudioNode) => MusicPlayer;
|
|
314
|
+
//#endregion
|
|
315
|
+
//#region src/audio/createNoiseBuffer.d.ts
|
|
316
|
+
export declare const createNoiseBuffer: (context: BaseAudioContext, noiseBands: number[]) => AudioBuffer | undefined;
|
|
317
|
+
//#endregion
|
|
318
|
+
//#region src/audio/createSoundEffectBuffer.d.ts
|
|
319
|
+
export declare const createSoundEffectBuffer: (context: BaseAudioContext, soundEffect: SoundEffect) => AudioBuffer;
|
|
320
|
+
//#endregion
|
|
321
|
+
//#region src/audio/renderMusicSegment.d.ts
|
|
322
|
+
export declare const renderMusicSegment: (music: Music, segmentIndex: number, sampleRate: number) => Promise<AudioBuffer>;
|
|
323
|
+
//#endregion
|
|
324
|
+
//#region src/audio/scheduleMusicExpression.d.ts
|
|
325
|
+
export declare const scheduleMusicExpression: (gain: AudioParam, expression: number[], start: number) => void;
|
|
326
|
+
//#endregion
|
|
327
|
+
//#region src/audio/scheduleMusicNote.d.ts
|
|
328
|
+
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;
|
|
329
|
+
//#endregion
|
|
330
|
+
//#region src/models/audio/MusicSampleRange.d.ts
|
|
331
|
+
export interface MusicSampleRange {
|
|
332
|
+
highKey: number;
|
|
333
|
+
highVelocity: number;
|
|
334
|
+
lowKey: number;
|
|
335
|
+
lowVelocity: number;
|
|
336
|
+
}
|
|
337
|
+
//#endregion
|
|
338
|
+
//#region src/audio/selectMusicSample.d.ts
|
|
339
|
+
export declare const selectMusicSample: <T extends MusicSampleRange>(samples: T[], pitch: number, velocity: number) => T | undefined;
|
|
340
|
+
//#endregion
|
|
341
|
+
//#region src/audio/transformFourier.d.ts
|
|
342
|
+
export declare const transformFourier: (real: Float64Array, imaginary: Float64Array) => void;
|
|
343
|
+
//#endregion
|
|
344
|
+
//#region src/models/clock/GameClock.d.ts
|
|
150
345
|
export interface GameClock {
|
|
151
346
|
minutes: number;
|
|
152
347
|
minutesPerSecond: number;
|
|
@@ -159,44 +354,36 @@ export declare const advanceGameClock: (gameClock: GameClock, deltaSeconds: numb
|
|
|
159
354
|
export declare const MINUTES_PER_DAY = 1440;
|
|
160
355
|
export declare const GAME_MINUTES_PER_SECOND = 1;
|
|
161
356
|
//#endregion
|
|
162
|
-
//#region src/
|
|
357
|
+
//#region src/constants.d.ts
|
|
358
|
+
export declare const MAX_BYTE = 255;
|
|
359
|
+
//#endregion
|
|
360
|
+
//#region src/kits/architecture/createBoxesGeometry.d.ts
|
|
361
|
+
export declare const createBoxesGeometry: (boxes: readonly (readonly number[])[]) => BufferGeometry;
|
|
362
|
+
//#endregion
|
|
363
|
+
//#region src/models/kits/architecture/LatheSection.d.ts
|
|
163
364
|
export interface LatheSection {
|
|
164
365
|
bottomRadius: number;
|
|
165
366
|
height: number;
|
|
166
367
|
topRadius: number;
|
|
167
368
|
}
|
|
168
369
|
//#endregion
|
|
169
|
-
//#region src/kits/architecture/LatheStackOptions.d.ts
|
|
370
|
+
//#region src/models/kits/architecture/LatheStackOptions.d.ts
|
|
170
371
|
export interface LatheStackOptions {
|
|
171
372
|
isFaceted: boolean;
|
|
172
373
|
radialSegments: number;
|
|
173
374
|
sections: LatheSection[];
|
|
174
375
|
}
|
|
175
376
|
//#endregion
|
|
176
|
-
//#region src/kits/architecture/SilhouetteOptions.d.ts
|
|
177
|
-
export interface SilhouetteOptions {
|
|
178
|
-
contours: [number, number][][];
|
|
179
|
-
depth: [number, number];
|
|
180
|
-
}
|
|
181
|
-
//#endregion
|
|
182
377
|
//#region src/kits/architecture/createLatheStackGeometry.d.ts
|
|
183
378
|
export declare const createLatheStackGeometry: ({ isFaceted, radialSegments, sections }: LatheStackOptions) => BufferGeometry;
|
|
184
379
|
//#endregion
|
|
185
|
-
//#region src/kits/
|
|
186
|
-
export declare const
|
|
380
|
+
//#region src/kits/mergeGeometryParts.d.ts
|
|
381
|
+
export declare const mergeGeometryParts: (parts: BufferGeometry[]) => BufferGeometry;
|
|
187
382
|
//#endregion
|
|
188
383
|
//#region src/kits/statue/createStatueGeometry.d.ts
|
|
189
384
|
export declare const createStatueGeometry: () => BufferGeometry;
|
|
190
385
|
//#endregion
|
|
191
|
-
//#region src/kits/tree/
|
|
192
|
-
export interface BranchSegment {
|
|
193
|
-
end: Vector3;
|
|
194
|
-
endRadius: number;
|
|
195
|
-
start: Vector3;
|
|
196
|
-
startRadius: number;
|
|
197
|
-
}
|
|
198
|
-
//#endregion
|
|
199
|
-
//#region src/kits/tree/LeafCards.d.ts
|
|
386
|
+
//#region src/models/kits/tree/LeafCards.d.ts
|
|
200
387
|
export interface LeafCards {
|
|
201
388
|
indices: Uint32Array;
|
|
202
389
|
normals: Float32Array;
|
|
@@ -204,13 +391,7 @@ export interface LeafCards {
|
|
|
204
391
|
uvs: Float32Array;
|
|
205
392
|
}
|
|
206
393
|
//#endregion
|
|
207
|
-
//#region src/kits/tree/
|
|
208
|
-
export interface TreeGeometry {
|
|
209
|
-
branchGeometry: BufferGeometry;
|
|
210
|
-
leafGeometry: BufferGeometry;
|
|
211
|
-
}
|
|
212
|
-
//#endregion
|
|
213
|
-
//#region src/kits/tree/TreeOptions.d.ts
|
|
394
|
+
//#region src/models/kits/tree/TreeOptions.d.ts
|
|
214
395
|
export interface TreeOptions {
|
|
215
396
|
branchLength: number;
|
|
216
397
|
cardSize: number;
|
|
@@ -222,22 +403,39 @@ export interface TreeOptions {
|
|
|
222
403
|
trunkRadius: number;
|
|
223
404
|
}
|
|
224
405
|
//#endregion
|
|
225
|
-
//#region src/kits/tree/
|
|
406
|
+
//#region src/kits/tree/computeLeafCards.d.ts
|
|
407
|
+
export declare const computeLeafCards: (clusterCenters: readonly Vector3[], { cardSize, cardsPerCluster, clusterRadius, seed }: Pick<TreeOptions, "cardSize" | "cardsPerCluster" | "clusterRadius" | "seed">) => LeafCards;
|
|
408
|
+
//#endregion
|
|
409
|
+
//#region src/models/kits/tree/BranchSegment.d.ts
|
|
410
|
+
export interface BranchSegment {
|
|
411
|
+
end: Vector3;
|
|
412
|
+
endRadius: number;
|
|
413
|
+
start: Vector3;
|
|
414
|
+
startRadius: number;
|
|
415
|
+
}
|
|
416
|
+
//#endregion
|
|
417
|
+
//#region src/models/kits/tree/TreeSkeleton.d.ts
|
|
226
418
|
export interface TreeSkeleton {
|
|
227
419
|
branchSegments: BranchSegment[];
|
|
228
420
|
clusterCenters: Vector3[];
|
|
229
421
|
}
|
|
230
422
|
//#endregion
|
|
231
|
-
//#region src/kits/tree/computeLeafCards.d.ts
|
|
232
|
-
export declare const computeLeafCards: (clusterCenters: readonly Vector3[], { cardSize, cardsPerCluster, clusterRadius, seed }: Pick<TreeOptions, "cardSize" | "cardsPerCluster" | "clusterRadius" | "seed">) => LeafCards;
|
|
233
|
-
//#endregion
|
|
234
423
|
//#region src/kits/tree/computeTreeSkeleton.d.ts
|
|
235
424
|
export declare const computeTreeSkeleton: ({ branchLength, mainBranchCount, seed, trunkHeight, trunkRadius }: Pick<TreeOptions, "branchLength" | "mainBranchCount" | "seed" | "trunkHeight" | "trunkRadius">) => TreeSkeleton;
|
|
236
425
|
//#endregion
|
|
426
|
+
//#region src/models/kits/tree/TreeGeometry.d.ts
|
|
427
|
+
export interface TreeGeometry {
|
|
428
|
+
branchGeometry: BufferGeometry;
|
|
429
|
+
leafGeometry: BufferGeometry;
|
|
430
|
+
}
|
|
431
|
+
//#endregion
|
|
237
432
|
//#region src/kits/tree/createTreeGeometry.d.ts
|
|
238
433
|
export declare const createTreeGeometry: (treeOptions: TreeOptions) => TreeGeometry;
|
|
239
434
|
//#endregion
|
|
240
|
-
//#region src/materials/
|
|
435
|
+
//#region src/materials/addSmoothLoop.d.ts
|
|
436
|
+
export declare const addSmoothLoop: (path: Path2D, points: readonly (readonly [number, number])[]) => void;
|
|
437
|
+
//#endregion
|
|
438
|
+
//#region src/models/materials/RampOptions.d.ts
|
|
241
439
|
export interface RampOptions {
|
|
242
440
|
resolution: number;
|
|
243
441
|
softness: number;
|
|
@@ -250,7 +448,52 @@ export declare const computeRampValues: ({ resolution, softness, terminator }: R
|
|
|
250
448
|
//#region src/materials/createRampTexture.d.ts
|
|
251
449
|
export declare const createRampTexture: (rampOptions: RampOptions) => DataTexture;
|
|
252
450
|
//#endregion
|
|
253
|
-
//#region src/nodes/
|
|
451
|
+
//#region src/models/nodes/StoneLight.d.ts
|
|
452
|
+
export interface StoneLight {
|
|
453
|
+
harmonics: (readonly number[])[];
|
|
454
|
+
hazeColor: readonly number[];
|
|
455
|
+
hazeScatterColor: readonly number[];
|
|
456
|
+
heightFade: readonly number[];
|
|
457
|
+
ramp: (readonly number[])[];
|
|
458
|
+
}
|
|
459
|
+
//#endregion
|
|
460
|
+
//#region src/models/nodes/StoneLightUniforms.d.ts
|
|
461
|
+
export interface StoneLightUniforms {
|
|
462
|
+
harmonics: UniformArrayNode<"vec3">;
|
|
463
|
+
hazeColor: UniformNode<"color", Color>;
|
|
464
|
+
hazeScatterColor: UniformNode<"color", Color>;
|
|
465
|
+
heightFade: UniformNode<"color", Color>;
|
|
466
|
+
ramp: DataTexture;
|
|
467
|
+
sunRadiance: UniformNode<"color", Color>;
|
|
468
|
+
}
|
|
469
|
+
//#endregion
|
|
470
|
+
//#region src/models/nodes/StoneLightingModel.d.ts
|
|
471
|
+
export declare class StoneLightingModel extends LightingModel {
|
|
472
|
+
readonly stoneLight: StoneLightUniforms;
|
|
473
|
+
constructor(stoneLight: StoneLightUniforms);
|
|
474
|
+
override direct({ lightColor, lightDirection, reflectedLight }: LightingModelDirectInput): void;
|
|
475
|
+
override indirect(builder: NodeBuilder): void;
|
|
476
|
+
}
|
|
477
|
+
//#endregion
|
|
478
|
+
//#region src/models/nodes/StoneMaterialOptions.d.ts
|
|
479
|
+
export interface StoneMaterialOptions {
|
|
480
|
+
albedo: string;
|
|
481
|
+
rimColor: readonly number[];
|
|
482
|
+
rimPower: number;
|
|
483
|
+
rimStrength: number;
|
|
484
|
+
smoothness: number;
|
|
485
|
+
specularColor: readonly number[];
|
|
486
|
+
}
|
|
487
|
+
//#endregion
|
|
488
|
+
//#region src/models/nodes/StoneNodeMaterial.d.ts
|
|
489
|
+
export declare class StoneNodeMaterial extends NodeMaterial {
|
|
490
|
+
emissiveNode: Node | null;
|
|
491
|
+
readonly stoneLight: StoneLightUniforms;
|
|
492
|
+
constructor(stoneLight: StoneLightUniforms);
|
|
493
|
+
override setupLightingModel(): StoneLightingModel;
|
|
494
|
+
}
|
|
495
|
+
//#endregion
|
|
496
|
+
//#region src/models/nodes/ToonMaterialOptions.d.ts
|
|
254
497
|
export interface ToonMaterialOptions {
|
|
255
498
|
color?: ColorRepresentation;
|
|
256
499
|
isOutlined?: boolean;
|
|
@@ -259,66 +502,14 @@ export interface ToonMaterialOptions {
|
|
|
259
502
|
rampTexture: DataTexture;
|
|
260
503
|
}
|
|
261
504
|
//#endregion
|
|
262
|
-
//#region src/nodes/ToonNodeMaterial.d.ts
|
|
505
|
+
//#region src/models/nodes/ToonNodeMaterial.d.ts
|
|
263
506
|
export declare class ToonNodeMaterial extends MeshToonNodeMaterial {
|
|
264
507
|
emissiveNode: Node | null;
|
|
265
508
|
override readonly isMeshToonNodeMaterial: boolean;
|
|
266
509
|
constructor(parameters: MeshToonNodeMaterialParameters, isOutlined: boolean);
|
|
267
510
|
}
|
|
268
511
|
//#endregion
|
|
269
|
-
//#region src/
|
|
270
|
-
export interface WaterUniforms {
|
|
271
|
-
causticStrength: UniformNode<"float", number>;
|
|
272
|
-
deepColor: UniformNode<"color", Color>;
|
|
273
|
-
deepDepth: UniformNode<"float", number>;
|
|
274
|
-
foamColor: UniformNode<"color", Color>;
|
|
275
|
-
foamDepth: UniformNode<"float", number>;
|
|
276
|
-
level: UniformNode<"float", number>;
|
|
277
|
-
shallowColor: UniformNode<"color", Color>;
|
|
278
|
-
underwaterFogColor: UniformNode<"color", Color>;
|
|
279
|
-
underwaterFogDensity: UniformNode<"float", number>;
|
|
280
|
-
}
|
|
281
|
-
//#endregion
|
|
282
|
-
//#region src/nodes/createCausticsNode.d.ts
|
|
283
|
-
export declare const createCausticsNode: ({ lightColor }: Pick<LightUniforms, "lightColor">, { causticStrength, deepDepth, level }: Pick<WaterUniforms, "causticStrength" | "deepDepth" | "level">) => Node<"vec3">;
|
|
284
|
-
//#endregion
|
|
285
|
-
//#region src/nodes/createGenshinRenderer.d.ts
|
|
286
|
-
export declare const createGenshinRenderer: (canvas: HTMLCanvasElement) => WebGPURenderer;
|
|
287
|
-
//#endregion
|
|
288
|
-
//#region src/wind/WindUniforms.d.ts
|
|
289
|
-
export interface WindUniforms {
|
|
290
|
-
direction: UniformNode<"vec2", Vector2>;
|
|
291
|
-
gustSpeed: UniformNode<"float", number>;
|
|
292
|
-
gustStrength: UniformNode<"float", number>;
|
|
293
|
-
gustWidth: UniformNode<"float", number>;
|
|
294
|
-
strength: UniformNode<"float", number>;
|
|
295
|
-
}
|
|
296
|
-
//#endregion
|
|
297
|
-
//#region src/nodes/createLeafMaterial.d.ts
|
|
298
|
-
export declare const createLeafMaterial: (toonMaterialOptions: ToonMaterialOptions, windUniforms?: WindUniforms) => ToonNodeMaterial;
|
|
299
|
-
//#endregion
|
|
300
|
-
//#region src/nodes/createLightUniforms.d.ts
|
|
301
|
-
export declare const createLightUniforms: () => LightUniforms;
|
|
302
|
-
//#endregion
|
|
303
|
-
//#region src/nodes/createRimNode.d.ts
|
|
304
|
-
export declare const createRimNode: ({ rimColor, rimStrength, sunDirection }: LightUniforms) => Node<"vec3">;
|
|
305
|
-
//#endregion
|
|
306
|
-
//#region src/nodes/createSkyNode.d.ts
|
|
307
|
-
export declare const createSkyNode: ({ cloudCoverage, cloudDrift, cloudLitColor, cloudShadeColor, horizonBand, horizonColor, lightColor, moonDirection, starIntensity, sunDirection, zenithColor }: SkyUniforms) => Node<"vec3">;
|
|
308
|
-
//#endregion
|
|
309
|
-
//#region src/nodes/createToonMaterial.d.ts
|
|
310
|
-
export declare const createToonMaterial: ({ color, isOutlined, isVertexColors, lightUniforms, rampTexture }: ToonMaterialOptions) => ToonNodeMaterial;
|
|
311
|
-
//#endregion
|
|
312
|
-
//#region src/nodes/createWaterMaterial.d.ts
|
|
313
|
-
export declare const createWaterMaterial: ({ lightColor, sunDirection }: Pick<LightUniforms, "lightColor" | "sunDirection">, { horizonColor, zenithColor }: Pick<SkyUniforms, "horizonColor" | "zenithColor">, { deepColor, deepDepth, foamColor, foamDepth, shallowColor }: WaterUniforms) => MeshBasicNodeMaterial;
|
|
314
|
-
//#endregion
|
|
315
|
-
//#region src/nodes/createWindNode.d.ts
|
|
316
|
-
export declare const createWindNode: ({ direction, gustSpeed, gustStrength, gustWidth, strength }: WindUniforms, groundPosition: Node<"vec2">) => Node<"vec2">;
|
|
317
|
-
//#endregion
|
|
318
|
-
//#region src/noise/createSimplexNoise.d.ts
|
|
319
|
-
export declare const createSimplexNoise: (seed: number) => ((x: number, y: number) => number);
|
|
320
|
-
//#endregion
|
|
321
|
-
//#region src/post/GradeOptions.d.ts
|
|
512
|
+
//#region src/models/post/GradeOptions.d.ts
|
|
322
513
|
export interface GradeOptions {
|
|
323
514
|
contrast: number;
|
|
324
515
|
highlightTint: readonly [number, number, number];
|
|
@@ -327,91 +518,63 @@ export interface GradeOptions {
|
|
|
327
518
|
size: number;
|
|
328
519
|
}
|
|
329
520
|
//#endregion
|
|
330
|
-
//#region src/post/PostPipeline.d.ts
|
|
521
|
+
//#region src/models/post/PostPipeline.d.ts
|
|
331
522
|
export interface PostPipeline {
|
|
332
523
|
bloomNode?: BloomNode;
|
|
524
|
+
dispose: () => void;
|
|
333
525
|
godraysNode?: GodraysNode;
|
|
334
526
|
renderPipeline: RenderPipeline;
|
|
335
527
|
}
|
|
336
528
|
//#endregion
|
|
337
|
-
//#region src/renderer/AntialiasingMode.d.ts
|
|
529
|
+
//#region src/models/renderer/AntialiasingMode.d.ts
|
|
338
530
|
export declare enum AntialiasingMode {
|
|
339
531
|
Smaa = "Smaa",
|
|
340
532
|
Traa = "Traa"
|
|
341
533
|
}
|
|
342
534
|
//#endregion
|
|
343
|
-
//#region src/renderer/QualityTierSettings.d.ts
|
|
535
|
+
//#region src/models/renderer/QualityTierSettings.d.ts
|
|
344
536
|
export interface QualityTierSettings {
|
|
345
537
|
antialiasingMode: AntialiasingMode;
|
|
346
538
|
cascadeCount: number;
|
|
347
539
|
godraysStepCount: number;
|
|
348
540
|
grassDensity: number;
|
|
349
541
|
isBloomEnabled: boolean;
|
|
542
|
+
isOcclusionEnabled: boolean;
|
|
350
543
|
maxPixelRatio: number;
|
|
351
544
|
shadowMapSize: number;
|
|
352
545
|
}
|
|
353
546
|
//#endregion
|
|
354
|
-
//#region src/post/PostPipelineOptions.d.ts
|
|
547
|
+
//#region src/models/post/PostPipelineOptions.d.ts
|
|
355
548
|
export interface PostPipelineOptions {
|
|
356
549
|
camera: Camera;
|
|
357
550
|
fogUniforms: FogUniforms;
|
|
358
|
-
godraysLight
|
|
359
|
-
gradeLutTexture
|
|
551
|
+
godraysLight?: DirectionalLight;
|
|
552
|
+
gradeLutTexture?: Data3DTexture;
|
|
553
|
+
isBloomed?: boolean;
|
|
554
|
+
occlusionRadius?: number;
|
|
360
555
|
postUniforms: PostUniforms;
|
|
361
556
|
qualityTierSettings: QualityTierSettings;
|
|
362
557
|
renderer: Renderer;
|
|
363
558
|
scene: Scene;
|
|
559
|
+
stoneLight?: StoneLightUniforms;
|
|
364
560
|
}
|
|
365
561
|
//#endregion
|
|
366
|
-
//#region src/
|
|
367
|
-
export declare const computeGradeLut: ({ contrast, highlightTint, saturation, shadowTint, size }: GradeOptions) => Uint8Array;
|
|
368
|
-
//#endregion
|
|
369
|
-
//#region src/post/createFogUniforms.d.ts
|
|
370
|
-
export declare const createFogUniforms: () => FogUniforms;
|
|
371
|
-
//#endregion
|
|
372
|
-
//#region src/post/createGodraysLight.d.ts
|
|
373
|
-
export declare const createGodraysLight: (shadowMapSize: number, halfExtent: number) => DirectionalLight;
|
|
374
|
-
//#endregion
|
|
375
|
-
//#region src/post/createGradeLutTexture.d.ts
|
|
376
|
-
export declare const createGradeLutTexture: (gradeOptions: GradeOptions) => Data3DTexture;
|
|
377
|
-
//#endregion
|
|
378
|
-
//#region src/post/createHeightFogNode.d.ts
|
|
379
|
-
export declare const createHeightFogNode: (colorNode: Node<"vec4">, depthNode: TextureNode, camera: Camera, { baseHeight, color, density, heightFalloff, scatterColor, scatterDirection, scatterPower, scatterStrength, startDistance }: FogUniforms) => Node<"vec4">;
|
|
380
|
-
//#endregion
|
|
381
|
-
//#region src/post/createPostPipeline.d.ts
|
|
382
|
-
export declare const createPostPipeline: ({ camera, fogUniforms, godraysLight, gradeLutTexture, postUniforms: { godraysColor, gradeIntensity, outlineColor, outlineFadeDistance, outlineThickness }, qualityTierSettings: { antialiasingMode, godraysStepCount, isBloomEnabled }, renderer, scene }: PostPipelineOptions) => PostPipeline;
|
|
383
|
-
//#endregion
|
|
384
|
-
//#region src/post/createPostUniforms.d.ts
|
|
385
|
-
export declare const createPostUniforms: () => PostUniforms;
|
|
386
|
-
//#endregion
|
|
387
|
-
//#region src/post/toSceneColor.d.ts
|
|
388
|
-
export declare const toSceneColor: (displayColor: Color) => Color;
|
|
389
|
-
//#endregion
|
|
390
|
-
//#region src/random/createSeededRandom.d.ts
|
|
391
|
-
export declare const createSeededRandom: (seed: number) => (() => number);
|
|
392
|
-
//#endregion
|
|
393
|
-
//#region src/renderer/QualityTier.d.ts
|
|
562
|
+
//#region src/models/renderer/QualityTier.d.ts
|
|
394
563
|
export declare enum QualityTier {
|
|
395
564
|
High = "High",
|
|
396
565
|
Low = "Low",
|
|
397
566
|
Medium = "Medium"
|
|
398
567
|
}
|
|
399
568
|
//#endregion
|
|
400
|
-
//#region src/renderer/
|
|
401
|
-
export
|
|
402
|
-
//#endregion
|
|
403
|
-
//#region src/renderer/constants.d.ts
|
|
404
|
-
export declare const GENSHIN_TONE_MAPPING: ToneMapping;
|
|
405
|
-
//#endregion
|
|
406
|
-
//#region src/renderer/getScreenDirection.d.ts
|
|
407
|
-
export declare const getScreenDirection: ({ aspect, fov, pitch, yaw }: {
|
|
569
|
+
//#region src/models/renderer/ScreenCamera.d.ts
|
|
570
|
+
export interface ScreenCamera {
|
|
408
571
|
aspect: number;
|
|
409
572
|
fov: number;
|
|
410
573
|
pitch: number;
|
|
411
574
|
yaw: number;
|
|
412
|
-
}
|
|
575
|
+
}
|
|
413
576
|
//#endregion
|
|
414
|
-
//#region src/scene/SceneMaterial.d.ts
|
|
577
|
+
//#region src/models/scene/SceneMaterial.d.ts
|
|
415
578
|
export interface SceneMaterial {
|
|
416
579
|
colors: Record<string, [number, number, number, number]>;
|
|
417
580
|
floats: Record<string, number>;
|
|
@@ -423,7 +586,7 @@ export interface SceneMaterial {
|
|
|
423
586
|
}>;
|
|
424
587
|
}
|
|
425
588
|
//#endregion
|
|
426
|
-
//#region src/scene/ScenePlacement.d.ts
|
|
589
|
+
//#region src/models/scene/ScenePlacement.d.ts
|
|
427
590
|
export interface ScenePlacement {
|
|
428
591
|
materials: string[];
|
|
429
592
|
mesh: string;
|
|
@@ -432,28 +595,28 @@ export interface ScenePlacement {
|
|
|
432
595
|
scale: [number, number, number];
|
|
433
596
|
}
|
|
434
597
|
//#endregion
|
|
435
|
-
//#region src/scene/SceneLayout.d.ts
|
|
598
|
+
//#region src/models/scene/SceneLayout.d.ts
|
|
436
599
|
export interface SceneLayout {
|
|
437
600
|
materials: Record<string, SceneMaterial>;
|
|
438
601
|
placements: ScenePlacement[];
|
|
439
602
|
}
|
|
440
603
|
//#endregion
|
|
441
|
-
//#region src/terrain/TerrainSelection.d.ts
|
|
604
|
+
//#region src/models/terrain/TerrainSelection.d.ts
|
|
442
605
|
export interface TerrainSelection {
|
|
443
606
|
count: number;
|
|
444
607
|
keys: Float64Array;
|
|
445
608
|
}
|
|
446
609
|
//#endregion
|
|
447
|
-
//#region src/streaming/TileStreamer.d.ts
|
|
610
|
+
//#region src/models/streaming/TileStreamer.d.ts
|
|
448
611
|
export interface TileStreamer<TTile> {
|
|
449
612
|
dispose: () => void;
|
|
450
613
|
get: (key: number) => TTile | undefined;
|
|
451
614
|
has: (key: number) => boolean;
|
|
452
615
|
receive: (key: number, tile: TTile) => void;
|
|
453
|
-
update: (wanted: TerrainSelection, drawn: TerrainSelection) => void;
|
|
616
|
+
update: (wanted: TerrainSelection, drawn: TerrainSelection, surrounding: TerrainSelection) => void;
|
|
454
617
|
}
|
|
455
618
|
//#endregion
|
|
456
|
-
//#region src/streaming/TileStreamerOptions.d.ts
|
|
619
|
+
//#region src/models/streaming/TileStreamerOptions.d.ts
|
|
457
620
|
export interface TileStreamerOptions<TTile> {
|
|
458
621
|
disposeTile: (tile: TTile) => void;
|
|
459
622
|
maxCachedCount: number;
|
|
@@ -461,10 +624,21 @@ export interface TileStreamerOptions<TTile> {
|
|
|
461
624
|
requestTile: (key: number) => void;
|
|
462
625
|
}
|
|
463
626
|
//#endregion
|
|
464
|
-
//#region src/
|
|
465
|
-
export
|
|
627
|
+
//#region src/models/terrain/GaussianHill.d.ts
|
|
628
|
+
export interface GaussianHill {
|
|
629
|
+
height: number;
|
|
630
|
+
width: number;
|
|
631
|
+
x: number;
|
|
632
|
+
z: number;
|
|
633
|
+
}
|
|
634
|
+
//#endregion
|
|
635
|
+
//#region src/models/terrain/GaussianHills.d.ts
|
|
636
|
+
export interface GaussianHills {
|
|
637
|
+
base: number;
|
|
638
|
+
hills: GaussianHill[];
|
|
639
|
+
}
|
|
466
640
|
//#endregion
|
|
467
|
-
//#region src/terrain/TerrainOptions.d.ts
|
|
641
|
+
//#region src/models/terrain/TerrainOptions.d.ts
|
|
468
642
|
export interface TerrainOptions {
|
|
469
643
|
cellsPerSide: number;
|
|
470
644
|
finestRange: number;
|
|
@@ -475,7 +649,7 @@ export interface TerrainOptions {
|
|
|
475
649
|
morphShare: number;
|
|
476
650
|
}
|
|
477
651
|
//#endregion
|
|
478
|
-
//#region src/terrain/TerrainTile.d.ts
|
|
652
|
+
//#region src/models/terrain/TerrainTile.d.ts
|
|
479
653
|
export interface TerrainTile {
|
|
480
654
|
coarsePositions: Float32Array;
|
|
481
655
|
colors: Float32Array;
|
|
@@ -484,13 +658,198 @@ export interface TerrainTile {
|
|
|
484
658
|
positions: Float32Array;
|
|
485
659
|
}
|
|
486
660
|
//#endregion
|
|
487
|
-
//#region src/terrain/TerrainTileOptions.d.ts
|
|
661
|
+
//#region src/models/terrain/TerrainTileOptions.d.ts
|
|
488
662
|
export interface TerrainTileOptions extends Pick<TerrainOptions, "cellsPerSide" | "finestTileSize"> {
|
|
489
663
|
getHeight: (x: number, z: number) => number;
|
|
490
664
|
key: number;
|
|
491
665
|
writeColor: (colors: Float32Array, offset: number, height: number, slope: number, x: number, z: number) => void;
|
|
492
666
|
}
|
|
493
667
|
//#endregion
|
|
668
|
+
//#region src/models/vegetation/GrassBlade.d.ts
|
|
669
|
+
export interface GrassBlade {
|
|
670
|
+
indices: Uint16Array;
|
|
671
|
+
positions: Float32Array;
|
|
672
|
+
}
|
|
673
|
+
//#endregion
|
|
674
|
+
//#region src/models/vegetation/GrassRing.d.ts
|
|
675
|
+
export interface GrassRing {
|
|
676
|
+
cellsPerSide: number;
|
|
677
|
+
fadeEnd: number;
|
|
678
|
+
fadeStart: number;
|
|
679
|
+
innerRadius: number;
|
|
680
|
+
scale: number;
|
|
681
|
+
spacing: number;
|
|
682
|
+
}
|
|
683
|
+
//#endregion
|
|
684
|
+
//#region src/models/vegetation/GroundCapture.d.ts
|
|
685
|
+
export interface GroundCapture {
|
|
686
|
+
camera: OrthographicCamera;
|
|
687
|
+
center: UniformNode<"vec2", Vector2>;
|
|
688
|
+
material: MeshBasicNodeMaterial;
|
|
689
|
+
renderTarget: RenderTarget;
|
|
690
|
+
size: number;
|
|
691
|
+
}
|
|
692
|
+
//#endregion
|
|
693
|
+
//#region src/models/water/WaterUniforms.d.ts
|
|
694
|
+
export interface WaterUniforms {
|
|
695
|
+
causticStrength: UniformNode<"float", number>;
|
|
696
|
+
deepColor: UniformNode<"color", Color>;
|
|
697
|
+
deepDepth: UniformNode<"float", number>;
|
|
698
|
+
foamColor: UniformNode<"color", Color>;
|
|
699
|
+
foamDepth: UniformNode<"float", number>;
|
|
700
|
+
level: UniformNode<"float", number>;
|
|
701
|
+
shallowColor: UniformNode<"color", Color>;
|
|
702
|
+
underwaterFogColor: UniformNode<"color", Color>;
|
|
703
|
+
underwaterFogDensity: UniformNode<"float", number>;
|
|
704
|
+
}
|
|
705
|
+
//#endregion
|
|
706
|
+
//#region src/models/wind/WindUniforms.d.ts
|
|
707
|
+
export interface WindUniforms {
|
|
708
|
+
direction: UniformNode<"vec2", Vector2>;
|
|
709
|
+
gustSpeed: UniformNode<"float", number>;
|
|
710
|
+
gustStrength: UniformNode<"float", number>;
|
|
711
|
+
gustWidth: UniformNode<"float", number>;
|
|
712
|
+
strength: UniformNode<"float", number>;
|
|
713
|
+
}
|
|
714
|
+
//#endregion
|
|
715
|
+
//#region src/models/vegetation/GrassOptions.d.ts
|
|
716
|
+
export interface GrassOptions {
|
|
717
|
+
bladeHeight: number;
|
|
718
|
+
bladeWidth: number;
|
|
719
|
+
cameraGround: UniformNode<"vec2", Vector2>;
|
|
720
|
+
density: UniformNode<"float", number>;
|
|
721
|
+
groundCapture: GroundCapture;
|
|
722
|
+
lightUniforms: LightUniforms;
|
|
723
|
+
rampTexture: DataTexture;
|
|
724
|
+
ring: GrassRing;
|
|
725
|
+
waterUniforms: Pick<WaterUniforms, "level">;
|
|
726
|
+
windUniforms: WindUniforms;
|
|
727
|
+
}
|
|
728
|
+
//#endregion
|
|
729
|
+
//#region src/models/water/UnderwaterFogState.d.ts
|
|
730
|
+
export interface UnderwaterFogState {
|
|
731
|
+
aboveDensity: number;
|
|
732
|
+
aboveHeightFalloff: number;
|
|
733
|
+
aboveMaxOpacity: number;
|
|
734
|
+
aboveStartDistance: number;
|
|
735
|
+
isUnderwater: boolean;
|
|
736
|
+
}
|
|
737
|
+
//#endregion
|
|
738
|
+
//#region src/models/world/GroundPoint.d.ts
|
|
739
|
+
export interface GroundPoint {
|
|
740
|
+
x: number;
|
|
741
|
+
z: number;
|
|
742
|
+
}
|
|
743
|
+
//#endregion
|
|
744
|
+
//#region src/nodes/applyStoneLight.d.ts
|
|
745
|
+
export declare const applyStoneLight: ({ harmonics, hazeColor, hazeScatterColor, heightFade, ramp }: StoneLight, { harmonics: harmonicsUniform, hazeColor: hazeColorUniform, hazeScatterColor: hazeScatterColorUniform, heightFade: heightFadeUniform, ramp: rampTexture, sunRadiance }: StoneLightUniforms, light: DirectionalLight) => void;
|
|
746
|
+
//#endregion
|
|
747
|
+
//#region src/nodes/computeStoneHarmonics.d.ts
|
|
748
|
+
export declare const computeStoneHarmonics: ([x, y, z]: readonly number[], harmonics: number[]) => void;
|
|
749
|
+
//#endregion
|
|
750
|
+
//#region src/nodes/computeStoneRampCoordinate.d.ts
|
|
751
|
+
export declare const computeStoneRampCoordinate: (facing: number, visibility: number) => number;
|
|
752
|
+
//#endregion
|
|
753
|
+
//#region src/nodes/constants.d.ts
|
|
754
|
+
export declare const LEAST_DIVISOR = 1e-4;
|
|
755
|
+
export declare const STONE_SHADOW_EXPONENT = .2;
|
|
756
|
+
export declare const STONE_RAMP_KNOT_COUNT = 16;
|
|
757
|
+
export declare const STONE_HARMONIC_COUNT = 9;
|
|
758
|
+
export declare const STONE_MASK_OUTPUT = "stoneMask";
|
|
759
|
+
export declare const STONE_HEIGHT_FALLOFF = .05;
|
|
760
|
+
//#endregion
|
|
761
|
+
//#region src/nodes/createCausticsNode.d.ts
|
|
762
|
+
export declare const createCausticsNode: ({ lightColor }: Pick<LightUniforms, "lightColor">, { causticStrength, deepDepth, level }: Pick<WaterUniforms, "causticStrength" | "deepDepth" | "level">) => Node<"vec3">;
|
|
763
|
+
//#endregion
|
|
764
|
+
//#region src/nodes/createLeafMaterial.d.ts
|
|
765
|
+
export declare const createLeafMaterial: (toonMaterialOptions: ToonMaterialOptions, windUniforms?: WindUniforms) => ToonNodeMaterial;
|
|
766
|
+
//#endregion
|
|
767
|
+
//#region src/nodes/createLightUniforms.d.ts
|
|
768
|
+
export declare const createLightUniforms: () => LightUniforms;
|
|
769
|
+
//#endregion
|
|
770
|
+
//#region src/nodes/createRimNode.d.ts
|
|
771
|
+
export declare const createRimNode: ({ rimColor, rimStrength, sunDirection }: LightUniforms) => Node<"vec3">;
|
|
772
|
+
//#endregion
|
|
773
|
+
//#region src/nodes/createSkyColorNode.d.ts
|
|
774
|
+
export declare const createSkyColorNode: ({ frontBackBlend, haloColor, haloHeight, horizonBackColor, horizonBand, horizonColor, sunDirection, sunHaloColor, sunHaloSize, zenithBackColor, zenithColor }: SkyUniforms, gradient: Texture, direction: Node<"vec3">) => Node<"vec3">;
|
|
775
|
+
//#endregion
|
|
776
|
+
//#region src/nodes/createSkyNode.d.ts
|
|
777
|
+
export declare const createSkyNode: (uniforms: SkyUniforms, gradient: Texture) => Node<"vec3">;
|
|
778
|
+
//#endregion
|
|
779
|
+
//#region src/nodes/createStoneLightUniforms.d.ts
|
|
780
|
+
export declare const createStoneLightUniforms: () => StoneLightUniforms;
|
|
781
|
+
//#endregion
|
|
782
|
+
//#region src/nodes/createStoneMaterial.d.ts
|
|
783
|
+
export declare const createStoneMaterial: ({ albedo, rimColor, rimPower, rimStrength }: StoneMaterialOptions, stoneLight: StoneLightUniforms, glowNode?: Node<"vec3">) => StoneNodeMaterial;
|
|
784
|
+
//#endregion
|
|
785
|
+
//#region src/nodes/createSunVisibilityNode.d.ts
|
|
786
|
+
export declare const createSunVisibilityNode: (lightColor: Node, sunRadiance: UniformNode<"color", Color>) => Node<"float">;
|
|
787
|
+
//#endregion
|
|
788
|
+
//#region src/nodes/createToonMaterial.d.ts
|
|
789
|
+
export declare const createToonMaterial: ({ color, isOutlined, isVertexColors, lightUniforms, rampTexture }: ToonMaterialOptions) => ToonNodeMaterial;
|
|
790
|
+
//#endregion
|
|
791
|
+
//#region src/nodes/createWaterMaterial.d.ts
|
|
792
|
+
export declare const createWaterMaterial: ({ lightColor, sunDirection }: Pick<LightUniforms, "lightColor" | "sunDirection">, { horizonColor, zenithColor }: Pick<SkyUniforms, "horizonColor" | "zenithColor">, { deepColor, deepDepth, foamColor, foamDepth, shallowColor }: WaterUniforms) => MeshBasicNodeMaterial;
|
|
793
|
+
//#endregion
|
|
794
|
+
//#region src/nodes/createWindNode.d.ts
|
|
795
|
+
export declare const createWindNode: ({ direction, gustSpeed, gustStrength, gustWidth, strength }: WindUniforms, groundPosition: Node<"vec2">) => Node<"vec2">;
|
|
796
|
+
//#endregion
|
|
797
|
+
//#region src/noise/createSimplexNoise.d.ts
|
|
798
|
+
export declare const createSimplexNoise: (seed: number) => ((x: number, y: number) => number);
|
|
799
|
+
//#endregion
|
|
800
|
+
//#region src/post/computeGradeLut.d.ts
|
|
801
|
+
export declare const computeGradeLut: ({ contrast, highlightTint, saturation, shadowTint, size }: GradeOptions) => Uint8Array;
|
|
802
|
+
//#endregion
|
|
803
|
+
//#region src/post/createFogUniforms.d.ts
|
|
804
|
+
export declare const createFogUniforms: () => FogUniforms;
|
|
805
|
+
//#endregion
|
|
806
|
+
//#region src/post/createGodraysLight.d.ts
|
|
807
|
+
export declare const createGodraysLight: (shadowMapSize: number, halfExtent: number) => DirectionalLight;
|
|
808
|
+
//#endregion
|
|
809
|
+
//#region src/post/createGradeLutTexture.d.ts
|
|
810
|
+
export declare const createGradeLutTexture: (gradeOptions: GradeOptions) => Data3DTexture;
|
|
811
|
+
//#endregion
|
|
812
|
+
//#region src/post/createHeightFogNode.d.ts
|
|
813
|
+
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"> & {
|
|
814
|
+
maskNode: TextureNode;
|
|
815
|
+
}) => Node<"vec4">;
|
|
816
|
+
//#endregion
|
|
817
|
+
//#region src/post/createOcclusionNode.d.ts
|
|
818
|
+
export declare const createOcclusionNode: (depthNode: TextureNode, camera: Camera, radius: number) => GTAONode;
|
|
819
|
+
//#endregion
|
|
820
|
+
//#region src/post/createPostPipeline.d.ts
|
|
821
|
+
export declare const createPostPipeline: ({ camera, fogUniforms, godraysLight, gradeLutTexture, isBloomed, occlusionRadius, postUniforms: { godraysColor, gradeIntensity, outlineColor, outlineFadeDistance, outlineThickness }, qualityTierSettings: { antialiasingMode, godraysStepCount, isBloomEnabled, isOcclusionEnabled }, renderer, scene, stoneLight }: PostPipelineOptions) => PostPipeline;
|
|
822
|
+
//#endregion
|
|
823
|
+
//#region src/post/createPostUniforms.d.ts
|
|
824
|
+
export declare const createPostUniforms: () => PostUniforms;
|
|
825
|
+
//#endregion
|
|
826
|
+
//#region src/post/toSceneColor.d.ts
|
|
827
|
+
export declare const toSceneColor: (displayColor: Color, sceneColor?: Color) => Color;
|
|
828
|
+
//#endregion
|
|
829
|
+
//#region src/post/toneMapNeutral.d.ts
|
|
830
|
+
export declare const toneMapNeutral: ([red, green, blue]: readonly [number, number, number], toneMapped?: [number, number, number]) => [number, number, number];
|
|
831
|
+
//#endregion
|
|
832
|
+
//#region src/random/createSeededRandom.d.ts
|
|
833
|
+
export declare const createSeededRandom: (seed: number) => (() => number);
|
|
834
|
+
//#endregion
|
|
835
|
+
//#region src/renderer/QualityTierSettingsMap.d.ts
|
|
836
|
+
export declare const QualityTierSettingsMap: Readonly<Record<QualityTier, QualityTierSettings>>;
|
|
837
|
+
//#endregion
|
|
838
|
+
//#region src/renderer/attachInspector.d.ts
|
|
839
|
+
export declare const attachInspector: (renderer: Renderer) => Promise<Inspector>;
|
|
840
|
+
//#endregion
|
|
841
|
+
//#region src/renderer/constants.d.ts
|
|
842
|
+
export declare const GENSHIN_TONE_MAPPING: ToneMapping;
|
|
843
|
+
//#endregion
|
|
844
|
+
//#region src/renderer/createGenshinRenderer.d.ts
|
|
845
|
+
export declare const createGenshinRenderer: (canvas: HTMLCanvasElement) => WebGPURenderer;
|
|
846
|
+
//#endregion
|
|
847
|
+
//#region src/renderer/getScreenDirection.d.ts
|
|
848
|
+
export declare const getScreenDirection: ({ aspect, fov, pitch, yaw }: ScreenCamera, [x, y]: [number, number]) => Vector3;
|
|
849
|
+
//#endregion
|
|
850
|
+
//#region src/streaming/createTileStreamer.d.ts
|
|
851
|
+
export declare const createTileStreamer: <TTile>({ disposeTile, maxCachedCount, maxPendingCount, requestTile }: TileStreamerOptions<TTile>) => TileStreamer<TTile>;
|
|
852
|
+
//#endregion
|
|
494
853
|
//#region src/terrain/computeTerrainIndices.d.ts
|
|
495
854
|
export declare const computeTerrainIndices: (cellsPerSide: number) => Uint16Array | Uint32Array;
|
|
496
855
|
//#endregion
|
|
@@ -502,6 +861,9 @@ export declare const TILE_INDEX_OFFSET: number;
|
|
|
502
861
|
export declare const TILE_INDEX_SPAN: number;
|
|
503
862
|
export declare const TERRAIN_LAYER = 1;
|
|
504
863
|
//#endregion
|
|
864
|
+
//#region src/terrain/createGaussianHillsHeight.d.ts
|
|
865
|
+
export declare const createGaussianHillsHeight: ({ base, hills }: GaussianHills) => ((x: number, z: number) => number);
|
|
866
|
+
//#endregion
|
|
505
867
|
//#region src/terrain/createTerrainMaterial.d.ts
|
|
506
868
|
export declare const createTerrainMaterial: ({ finestRange, morphShare }: Pick<TerrainOptions, "finestRange" | "morphShare">, toonMaterialOptions: Pick<ToonMaterialOptions, "color" | "lightUniforms" | "rampTexture">, waterUniforms?: WaterUniforms) => ToonNodeMaterial;
|
|
507
869
|
//#endregion
|
|
@@ -532,45 +894,6 @@ export declare const resolveTerrainDraws: ({ levelCount }: Pick<TerrainOptions,
|
|
|
532
894
|
//#region src/terrain/selectTerrainTiles.d.ts
|
|
533
895
|
export declare const selectTerrainTiles: (terrainOptions: TerrainOptions, eye: Vector3Like, frustum: Frustum | undefined, selection: TerrainSelection) => TerrainSelection;
|
|
534
896
|
//#endregion
|
|
535
|
-
//#region src/vegetation/GrassBlade.d.ts
|
|
536
|
-
export interface GrassBlade {
|
|
537
|
-
indices: Uint16Array;
|
|
538
|
-
positions: Float32Array;
|
|
539
|
-
}
|
|
540
|
-
//#endregion
|
|
541
|
-
//#region src/vegetation/GrassRing.d.ts
|
|
542
|
-
export interface GrassRing {
|
|
543
|
-
cellsPerSide: number;
|
|
544
|
-
fadeEnd: number;
|
|
545
|
-
fadeStart: number;
|
|
546
|
-
innerRadius: number;
|
|
547
|
-
scale: number;
|
|
548
|
-
spacing: number;
|
|
549
|
-
}
|
|
550
|
-
//#endregion
|
|
551
|
-
//#region src/vegetation/GroundCapture.d.ts
|
|
552
|
-
export interface GroundCapture {
|
|
553
|
-
camera: OrthographicCamera;
|
|
554
|
-
center: UniformNode<"vec2", Vector2>;
|
|
555
|
-
material: MeshBasicNodeMaterial;
|
|
556
|
-
renderTarget: RenderTarget;
|
|
557
|
-
size: number;
|
|
558
|
-
}
|
|
559
|
-
//#endregion
|
|
560
|
-
//#region src/vegetation/GrassOptions.d.ts
|
|
561
|
-
export interface GrassOptions {
|
|
562
|
-
bladeHeight: number;
|
|
563
|
-
bladeWidth: number;
|
|
564
|
-
cameraGround: UniformNode<"vec2", Vector2>;
|
|
565
|
-
density: UniformNode<"float", number>;
|
|
566
|
-
groundCapture: GroundCapture;
|
|
567
|
-
lightUniforms: LightUniforms;
|
|
568
|
-
rampTexture: DataTexture;
|
|
569
|
-
ring: GrassRing;
|
|
570
|
-
waterUniforms: Pick<WaterUniforms, "level">;
|
|
571
|
-
windUniforms: WindUniforms;
|
|
572
|
-
}
|
|
573
|
-
//#endregion
|
|
574
897
|
//#region src/vegetation/computeGrassBlade.d.ts
|
|
575
898
|
export declare const computeGrassBlade: (segmentCount: number) => GrassBlade;
|
|
576
899
|
//#endregion
|
|
@@ -586,14 +909,6 @@ export declare const createGroundCapture: (size: number, resolution: number) =>
|
|
|
586
909
|
//#region src/vegetation/renderGroundCapture.d.ts
|
|
587
910
|
export declare const renderGroundCapture: (renderer: Renderer, scene: Scene, { camera, center, material, renderTarget }: GroundCapture, { maxHeight }: Pick<TerrainOptions, "maxHeight">, worldCenter: Vector3Like, origin: Vector3Like) => void;
|
|
588
911
|
//#endregion
|
|
589
|
-
//#region src/water/UnderwaterFogState.d.ts
|
|
590
|
-
export interface UnderwaterFogState {
|
|
591
|
-
aboveDensity: number;
|
|
592
|
-
aboveHeightFalloff: number;
|
|
593
|
-
aboveStartDistance: number;
|
|
594
|
-
isUnderwater: boolean;
|
|
595
|
-
}
|
|
596
|
-
//#endregion
|
|
597
912
|
//#region src/water/createUnderwaterFogState.d.ts
|
|
598
913
|
export declare const createUnderwaterFogState: () => UnderwaterFogState;
|
|
599
914
|
//#endregion
|
|
@@ -601,17 +916,11 @@ export declare const createUnderwaterFogState: () => UnderwaterFogState;
|
|
|
601
916
|
export declare const createWaterUniforms: () => WaterUniforms;
|
|
602
917
|
//#endregion
|
|
603
918
|
//#region src/water/updateUnderwaterFog.d.ts
|
|
604
|
-
export declare const updateUnderwaterFog: (eyeHeight: number, { level, underwaterFogColor, underwaterFogDensity }: Pick<WaterUniforms, "level" | "underwaterFogColor" | "underwaterFogDensity">, { color, density, heightFalloff, startDistance }: FogUniforms, underwaterFogState: UnderwaterFogState) => void;
|
|
919
|
+
export declare const updateUnderwaterFog: (eyeHeight: number, { level, underwaterFogColor, underwaterFogDensity }: Pick<WaterUniforms, "level" | "underwaterFogColor" | "underwaterFogDensity">, { color, density, heightFalloff, maxOpacity, startDistance }: FogUniforms, underwaterFogState: UnderwaterFogState) => void;
|
|
605
920
|
//#endregion
|
|
606
921
|
//#region src/wind/createWindUniforms.d.ts
|
|
607
922
|
export declare const createWindUniforms: () => WindUniforms;
|
|
608
923
|
//#endregion
|
|
609
|
-
//#region src/world/GroundPoint.d.ts
|
|
610
|
-
export interface GroundPoint {
|
|
611
|
-
x: number;
|
|
612
|
-
z: number;
|
|
613
|
-
}
|
|
614
|
-
//#endregion
|
|
615
924
|
//#region src/world/computeOriginShift.d.ts
|
|
616
925
|
export declare const computeOriginShift: (cameraPosition: Vector3, threshold: number, step: number, shift: Vector3) => boolean;
|
|
617
926
|
//#endregion
|