@mml-io/3d-web-client-core 0.1.0 → 0.3.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/LICENSE +19 -0
- package/build/camera/CameraManager.d.ts +21 -7
- package/build/character/Character.d.ts +1 -0
- package/build/character/CharacterManager.d.ts +4 -2
- package/build/character/CharacterMaterial.d.ts +1 -0
- package/build/character/LocalController.d.ts +21 -7
- package/build/character/ModelLoader.d.ts +8 -3
- package/build/character/RemoteController.d.ts +2 -4
- package/build/collisions/CollisionsManager.d.ts +10 -2
- package/build/helpers/math-helpers.d.ts +2 -0
- package/build/index.js +1311 -243
- package/build/index.js.map +4 -4
- package/build/input/KeyInputManager.d.ts +9 -2
- package/build/rendering/composer.d.ts +16 -1
- package/build/rendering/post-effects/bright-contrast-sat.d.ts +2 -0
- package/build/time/TimeManager.d.ts +2 -0
- package/build/tweakpane/TweakPane.d.ts +30 -0
- package/build/tweakpane/characterSettings.d.ts +89 -0
- package/build/tweakpane/composerSettings.d.ts +234 -0
- package/build/tweakpane/tweakPaneActivity.d.ts +2 -0
- package/package.json +6 -3
@@ -1,11 +1,18 @@
|
|
1
1
|
export declare class KeyInputManager {
|
2
2
|
private keys;
|
3
3
|
constructor();
|
4
|
+
private handleUnfocus;
|
4
5
|
private onKeyDown;
|
5
6
|
private onKeyUp;
|
6
7
|
isKeyPressed(key: string): boolean;
|
7
8
|
isMovementKeyPressed(): boolean;
|
8
|
-
|
9
|
-
|
9
|
+
get forward(): boolean;
|
10
|
+
get backward(): boolean;
|
11
|
+
get left(): boolean;
|
12
|
+
get right(): boolean;
|
13
|
+
get run(): boolean;
|
14
|
+
get jump(): boolean;
|
15
|
+
get anyDirection(): boolean;
|
16
|
+
get conflictingDirection(): boolean;
|
10
17
|
dispose(): void;
|
11
18
|
}
|
@@ -1,8 +1,10 @@
|
|
1
1
|
import { PerspectiveCamera, Scene, Vector2, WebGLRenderer } from "three";
|
2
|
+
import { TimeManager } from "../time/TimeManager";
|
2
3
|
export declare class Composer {
|
3
4
|
private width;
|
4
5
|
private height;
|
5
6
|
resolution: Vector2;
|
7
|
+
private isEnvHDRI;
|
6
8
|
private readonly scene;
|
7
9
|
private readonly camera;
|
8
10
|
readonly renderer: WebGLRenderer;
|
@@ -12,9 +14,22 @@ export declare class Composer {
|
|
12
14
|
private readonly fxaaPass;
|
13
15
|
private readonly bloomEffect;
|
14
16
|
private readonly bloomPass;
|
17
|
+
private readonly toneMappingEffect;
|
18
|
+
private readonly smaaEffect;
|
19
|
+
private readonly normalPass;
|
20
|
+
private readonly normalTextureEffect;
|
21
|
+
private readonly ssaoEffect;
|
22
|
+
private readonly ssaoPass;
|
23
|
+
private readonly toneMappingPass;
|
24
|
+
private readonly smaaPass;
|
25
|
+
private readonly bcs;
|
26
|
+
private readonly bcsPass;
|
15
27
|
private readonly gaussGrainEffect;
|
16
28
|
private readonly gaussGrainPass;
|
29
|
+
private tweakPane;
|
17
30
|
constructor(scene: Scene, camera: PerspectiveCamera);
|
18
31
|
private updateProjection;
|
19
|
-
|
32
|
+
isTweakPaneVisible(): boolean;
|
33
|
+
render(timeManager: TimeManager): void;
|
34
|
+
useHDRI(url: string): void;
|
20
35
|
}
|
@@ -0,0 +1,30 @@
|
|
1
|
+
import { BloomEffect, EffectComposer, EffectPass, SSAOEffect, ToneMappingEffect } from "postprocessing";
|
2
|
+
import { Scene, WebGLRenderer } from "three";
|
3
|
+
import { GaussGrainEffect } from "../rendering/post-effects/gauss-grain";
|
4
|
+
import { TimeManager } from "../time/TimeManager";
|
5
|
+
import { BrightnessContrastSaturation } from "./../rendering/post-effects/bright-contrast-sat";
|
6
|
+
export declare class TweakPane {
|
7
|
+
private renderer;
|
8
|
+
private scene;
|
9
|
+
private composer;
|
10
|
+
private gui;
|
11
|
+
private render;
|
12
|
+
private stats;
|
13
|
+
private renderOptions;
|
14
|
+
private ssao;
|
15
|
+
private toneMapping;
|
16
|
+
private post;
|
17
|
+
private export;
|
18
|
+
private characterMaterial;
|
19
|
+
private saveVisibilityInLocalStorage;
|
20
|
+
guiVisible: boolean;
|
21
|
+
constructor(renderer: WebGLRenderer, scene: Scene, composer: EffectComposer);
|
22
|
+
private processKey;
|
23
|
+
private setupGUIListeners;
|
24
|
+
setupRenderPane(ssaoEffect: SSAOEffect, toneMappingEffect: ToneMappingEffect, toneMappingPass: EffectPass, brightnessContrastSaturation: typeof BrightnessContrastSaturation, bloomEffect: BloomEffect, gaussGrainEffect: typeof GaussGrainEffect): void;
|
25
|
+
private formatDateForFilename;
|
26
|
+
private downloadSettingsAsJSON;
|
27
|
+
private importSettingsFromJSON;
|
28
|
+
updateStats(timeManager: TimeManager): void;
|
29
|
+
private toggleGUI;
|
30
|
+
}
|
@@ -0,0 +1,89 @@
|
|
1
|
+
export declare const characterValues: {
|
2
|
+
material: {
|
3
|
+
transmission: number;
|
4
|
+
metalness: number;
|
5
|
+
roughness: number;
|
6
|
+
ior: number;
|
7
|
+
thickness: number;
|
8
|
+
specularColor: {
|
9
|
+
r: number;
|
10
|
+
g: number;
|
11
|
+
b: number;
|
12
|
+
};
|
13
|
+
specularIntensity: number;
|
14
|
+
emissive: {
|
15
|
+
r: number;
|
16
|
+
g: number;
|
17
|
+
b: number;
|
18
|
+
};
|
19
|
+
emissiveIntensity: number;
|
20
|
+
envMapIntensity: number;
|
21
|
+
sheenColor: {
|
22
|
+
r: number;
|
23
|
+
g: number;
|
24
|
+
b: number;
|
25
|
+
};
|
26
|
+
sheen: number;
|
27
|
+
clearcoat: number;
|
28
|
+
clearcoatRoughness: number;
|
29
|
+
};
|
30
|
+
};
|
31
|
+
export declare const characterOptions: {
|
32
|
+
material: {
|
33
|
+
transmission: {
|
34
|
+
min: number;
|
35
|
+
max: number;
|
36
|
+
step: number;
|
37
|
+
};
|
38
|
+
metalness: {
|
39
|
+
min: number;
|
40
|
+
max: number;
|
41
|
+
step: number;
|
42
|
+
};
|
43
|
+
roughness: {
|
44
|
+
min: number;
|
45
|
+
max: number;
|
46
|
+
step: number;
|
47
|
+
};
|
48
|
+
ior: {
|
49
|
+
min: number;
|
50
|
+
max: number;
|
51
|
+
step: number;
|
52
|
+
};
|
53
|
+
thickness: {
|
54
|
+
min: number;
|
55
|
+
max: number;
|
56
|
+
step: number;
|
57
|
+
};
|
58
|
+
specularIntensity: {
|
59
|
+
min: number;
|
60
|
+
max: number;
|
61
|
+
step: number;
|
62
|
+
};
|
63
|
+
emissiveIntensity: {
|
64
|
+
min: number;
|
65
|
+
max: number;
|
66
|
+
step: number;
|
67
|
+
};
|
68
|
+
envMapIntensity: {
|
69
|
+
min: number;
|
70
|
+
max: number;
|
71
|
+
step: number;
|
72
|
+
};
|
73
|
+
sheen: {
|
74
|
+
min: number;
|
75
|
+
max: number;
|
76
|
+
step: number;
|
77
|
+
};
|
78
|
+
clearcoat: {
|
79
|
+
min: number;
|
80
|
+
max: number;
|
81
|
+
step: number;
|
82
|
+
};
|
83
|
+
clearcoatRoughness: {
|
84
|
+
min: number;
|
85
|
+
max: number;
|
86
|
+
step: number;
|
87
|
+
};
|
88
|
+
};
|
89
|
+
};
|
@@ -0,0 +1,234 @@
|
|
1
|
+
import { BlendFunction, ToneMappingMode } from "postprocessing";
|
2
|
+
export declare const composerValues: {
|
3
|
+
renderer: {
|
4
|
+
shadowMap: number;
|
5
|
+
toneMapping: number;
|
6
|
+
exposure: number;
|
7
|
+
bgIntensity: number;
|
8
|
+
bgBlurriness: number;
|
9
|
+
};
|
10
|
+
ssao: {
|
11
|
+
blendFunction: BlendFunction;
|
12
|
+
distanceScaling: boolean;
|
13
|
+
depthAwareUpsampling: boolean;
|
14
|
+
samples: number;
|
15
|
+
rings: number;
|
16
|
+
luminanceInfluence: number;
|
17
|
+
radius: number;
|
18
|
+
intensity: number;
|
19
|
+
bias: number;
|
20
|
+
fade: number;
|
21
|
+
resolutionScale: number;
|
22
|
+
color: {
|
23
|
+
r: number;
|
24
|
+
g: number;
|
25
|
+
b: number;
|
26
|
+
};
|
27
|
+
worldDistanceThreshold: number;
|
28
|
+
worldDistanceFalloff: number;
|
29
|
+
worldProximityThreshold: number;
|
30
|
+
worldProximityFalloff: number;
|
31
|
+
};
|
32
|
+
toneMapping: {
|
33
|
+
mode: ToneMappingMode;
|
34
|
+
resolution: number;
|
35
|
+
whitePoint: number;
|
36
|
+
middleGrey: number;
|
37
|
+
minLuminance: number;
|
38
|
+
averageLuminance: number;
|
39
|
+
adaptationRate: number;
|
40
|
+
};
|
41
|
+
brightness: number;
|
42
|
+
contrast: number;
|
43
|
+
saturation: number;
|
44
|
+
grain: number;
|
45
|
+
bloom: number;
|
46
|
+
};
|
47
|
+
export declare const composerOptions: {
|
48
|
+
renderer: {
|
49
|
+
shadowMap: {
|
50
|
+
min: number;
|
51
|
+
max: number;
|
52
|
+
step: number;
|
53
|
+
};
|
54
|
+
toneMapping: {
|
55
|
+
min: number;
|
56
|
+
max: number;
|
57
|
+
step: number;
|
58
|
+
};
|
59
|
+
exposure: {
|
60
|
+
min: number;
|
61
|
+
max: number;
|
62
|
+
step: number;
|
63
|
+
};
|
64
|
+
bgIntensity: {
|
65
|
+
min: number;
|
66
|
+
max: number;
|
67
|
+
step: number;
|
68
|
+
};
|
69
|
+
bgBlurriness: {
|
70
|
+
min: number;
|
71
|
+
max: number;
|
72
|
+
step: number;
|
73
|
+
};
|
74
|
+
};
|
75
|
+
ssao: {
|
76
|
+
samples: {
|
77
|
+
min: number;
|
78
|
+
max: number;
|
79
|
+
step: number;
|
80
|
+
};
|
81
|
+
rings: {
|
82
|
+
min: number;
|
83
|
+
max: number;
|
84
|
+
step: number;
|
85
|
+
};
|
86
|
+
luminanceInfluence: {
|
87
|
+
min: number;
|
88
|
+
max: number;
|
89
|
+
step: number;
|
90
|
+
};
|
91
|
+
radius: {
|
92
|
+
min: number;
|
93
|
+
max: number;
|
94
|
+
step: number;
|
95
|
+
};
|
96
|
+
intensity: {
|
97
|
+
min: number;
|
98
|
+
max: number;
|
99
|
+
step: number;
|
100
|
+
};
|
101
|
+
bias: {
|
102
|
+
min: number;
|
103
|
+
max: number;
|
104
|
+
step: number;
|
105
|
+
};
|
106
|
+
fade: {
|
107
|
+
min: number;
|
108
|
+
max: number;
|
109
|
+
step: number;
|
110
|
+
};
|
111
|
+
resolutionScale: {
|
112
|
+
min: number;
|
113
|
+
max: number;
|
114
|
+
step: number;
|
115
|
+
};
|
116
|
+
worldDistanceThreshold: {
|
117
|
+
min: number;
|
118
|
+
max: number;
|
119
|
+
step: number;
|
120
|
+
};
|
121
|
+
worldDistanceFalloff: {
|
122
|
+
min: number;
|
123
|
+
max: number;
|
124
|
+
step: number;
|
125
|
+
};
|
126
|
+
worldProximityThreshold: {
|
127
|
+
min: number;
|
128
|
+
max: number;
|
129
|
+
step: number;
|
130
|
+
};
|
131
|
+
worldProximityFalloff: {
|
132
|
+
min: number;
|
133
|
+
max: number;
|
134
|
+
step: number;
|
135
|
+
};
|
136
|
+
};
|
137
|
+
toneMapping: {
|
138
|
+
mode: {
|
139
|
+
min: number;
|
140
|
+
max: number;
|
141
|
+
step: number;
|
142
|
+
};
|
143
|
+
resolution: {
|
144
|
+
min: number;
|
145
|
+
max: number;
|
146
|
+
step: number;
|
147
|
+
};
|
148
|
+
whitePoint: {
|
149
|
+
min: number;
|
150
|
+
max: number;
|
151
|
+
step: number;
|
152
|
+
};
|
153
|
+
middleGrey: {
|
154
|
+
min: number;
|
155
|
+
max: number;
|
156
|
+
step: number;
|
157
|
+
};
|
158
|
+
minLuminance: {
|
159
|
+
min: number;
|
160
|
+
max: number;
|
161
|
+
step: number;
|
162
|
+
};
|
163
|
+
averageLuminance: {
|
164
|
+
min: number;
|
165
|
+
max: number;
|
166
|
+
step: number;
|
167
|
+
};
|
168
|
+
adaptationRate: {
|
169
|
+
min: number;
|
170
|
+
max: number;
|
171
|
+
step: number;
|
172
|
+
};
|
173
|
+
};
|
174
|
+
brightness: {
|
175
|
+
amount: {
|
176
|
+
min: number;
|
177
|
+
max: number;
|
178
|
+
step: number;
|
179
|
+
};
|
180
|
+
};
|
181
|
+
contrast: {
|
182
|
+
amount: {
|
183
|
+
min: number;
|
184
|
+
max: number;
|
185
|
+
step: number;
|
186
|
+
};
|
187
|
+
};
|
188
|
+
saturation: {
|
189
|
+
amount: {
|
190
|
+
min: number;
|
191
|
+
max: number;
|
192
|
+
step: number;
|
193
|
+
};
|
194
|
+
};
|
195
|
+
grain: {
|
196
|
+
amount: {
|
197
|
+
min: number;
|
198
|
+
max: number;
|
199
|
+
step: number;
|
200
|
+
};
|
201
|
+
};
|
202
|
+
bloom: {
|
203
|
+
amount: {
|
204
|
+
min: number;
|
205
|
+
max: number;
|
206
|
+
step: number;
|
207
|
+
};
|
208
|
+
};
|
209
|
+
};
|
210
|
+
export declare const shadowMapTypes: Record<number, string>;
|
211
|
+
export declare const rendererToneMappingTypes: Record<number, string>;
|
212
|
+
export declare const customToneMappingTypes: Record<number, string>;
|
213
|
+
export declare const rendererBlades: {
|
214
|
+
shadowMapType: string;
|
215
|
+
toneMappingType: string;
|
216
|
+
};
|
217
|
+
export declare const setShadowMapType: (value: number) => void;
|
218
|
+
export declare const setToneMappingType: (value: number) => void;
|
219
|
+
export declare const customToneMappingBlade: {
|
220
|
+
customToneMappingType: string;
|
221
|
+
};
|
222
|
+
export declare const setCustomToneMappingType: (value: number) => void;
|
223
|
+
export declare const ssaoMaterialParams: string[];
|
224
|
+
export declare const statsData: {
|
225
|
+
triangles: string;
|
226
|
+
geometries: string;
|
227
|
+
textures: string;
|
228
|
+
shaders: string;
|
229
|
+
postPasses: string;
|
230
|
+
drawCalls: string;
|
231
|
+
rawDeltaTime: string;
|
232
|
+
deltaTime: string;
|
233
|
+
FPS: string;
|
234
|
+
};
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@mml-io/3d-web-client-core",
|
3
|
-
"version": "0.
|
3
|
+
"version": "0.3.0",
|
4
4
|
"main": "./build/index.js",
|
5
5
|
"types": "./build/index.d.ts",
|
6
6
|
"type": "module",
|
@@ -18,9 +18,12 @@
|
|
18
18
|
"mml-web": "0.3.0",
|
19
19
|
"postprocessing": "6.32.1",
|
20
20
|
"three": "^0.153.0",
|
21
|
-
"three-mesh-bvh": "0.6.0"
|
21
|
+
"three-mesh-bvh": "0.6.0",
|
22
|
+
"tweakpane": "3.1.10"
|
22
23
|
},
|
23
24
|
"devDependencies": {
|
25
|
+
"@tweakpane/core": "1.1.9",
|
24
26
|
"@types/three": "^0.152.1"
|
25
|
-
}
|
27
|
+
},
|
28
|
+
"gitHead": "14107e94e28c06ca3319f1e322b4519acf3a0af2"
|
26
29
|
}
|