@mml-io/3d-web-client-core 0.2.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.
@@ -14,26 +14,22 @@ export declare class Composer {
14
14
  private readonly fxaaPass;
15
15
  private readonly bloomEffect;
16
16
  private readonly bloomPass;
17
+ private readonly toneMappingEffect;
18
+ private readonly smaaEffect;
17
19
  private readonly normalPass;
18
20
  private readonly normalTextureEffect;
19
21
  private readonly ssaoEffect;
20
22
  private readonly ssaoPass;
23
+ private readonly toneMappingPass;
24
+ private readonly smaaPass;
25
+ private readonly bcs;
26
+ private readonly bcsPass;
21
27
  private readonly gaussGrainEffect;
22
28
  private readonly gaussGrainPass;
23
- private gui;
24
- private guiVisible;
25
- private stats;
26
- private renderOptions;
27
- private ssao;
28
- private post;
29
- private export;
29
+ private tweakPane;
30
30
  constructor(scene: Scene, camera: PerspectiveCamera);
31
- private setupGUIListeners;
32
- private setupTweakPane;
33
- private toggleGUI;
34
- private processKey;
35
31
  private updateProjection;
36
- private updateStats;
32
+ isTweakPaneVisible(): boolean;
37
33
  render(timeManager: TimeManager): void;
38
34
  useHDRI(url: string): void;
39
35
  }
@@ -0,0 +1,2 @@
1
+ import { ShaderMaterial } from "three";
2
+ export declare const BrightnessContrastSaturation: ShaderMaterial;
@@ -3,8 +3,6 @@ export declare class TimeManager {
3
3
  private roundMagnitude;
4
4
  private maxAverageFrames;
5
5
  private deltaTimes;
6
- private fpsMaxSamples;
7
- private fpsSamples;
8
6
  private targetAverageDeltaTime;
9
7
  private lerpedAverageMagDelta;
10
8
  private fpsUpdateTime;
@@ -12,6 +10,7 @@ export declare class TimeManager {
12
10
  time: number;
13
11
  deltaTime: number;
14
12
  rawDeltaTime: number;
13
+ smoothDeltaTime: number;
15
14
  frame: number;
16
15
  fps: number;
17
16
  averageFPS: number;
@@ -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
+ };
@@ -1,5 +1,4 @@
1
- import { BlendFunction } from "postprocessing";
2
- import { Color } from "three";
1
+ import { BlendFunction, ToneMappingMode } from "postprocessing";
3
2
  export declare const composerValues: {
4
3
  renderer: {
5
4
  shadowMap: number;
@@ -20,12 +19,28 @@ export declare const composerValues: {
20
19
  bias: number;
21
20
  fade: number;
22
21
  resolutionScale: number;
23
- color: Color;
22
+ color: {
23
+ r: number;
24
+ g: number;
25
+ b: number;
26
+ };
24
27
  worldDistanceThreshold: number;
25
28
  worldDistanceFalloff: number;
26
29
  worldProximityThreshold: number;
27
30
  worldProximityFalloff: number;
28
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;
29
44
  grain: number;
30
45
  bloom: number;
31
46
  };
@@ -119,6 +134,64 @@ export declare const composerOptions: {
119
134
  step: number;
120
135
  };
121
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
+ };
122
195
  grain: {
123
196
  amount: {
124
197
  min: number;
@@ -136,12 +209,17 @@ export declare const composerOptions: {
136
209
  };
137
210
  export declare const shadowMapTypes: Record<number, string>;
138
211
  export declare const rendererToneMappingTypes: Record<number, string>;
212
+ export declare const customToneMappingTypes: Record<number, string>;
139
213
  export declare const rendererBlades: {
140
214
  shadowMapType: string;
141
215
  toneMappingType: string;
142
216
  };
143
217
  export declare const setShadowMapType: (value: number) => void;
144
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;
145
223
  export declare const ssaoMaterialParams: string[];
146
224
  export declare const statsData: {
147
225
  triangles: string;
@@ -150,5 +228,7 @@ export declare const statsData: {
150
228
  shaders: string;
151
229
  postPasses: string;
152
230
  drawCalls: string;
231
+ rawDeltaTime: string;
232
+ deltaTime: string;
153
233
  FPS: string;
154
234
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mml-io/3d-web-client-core",
3
- "version": "0.2.0",
3
+ "version": "0.3.0",
4
4
  "main": "./build/index.js",
5
5
  "types": "./build/index.d.ts",
6
6
  "type": "module",
@@ -24,5 +24,6 @@
24
24
  "devDependencies": {
25
25
  "@tweakpane/core": "1.1.9",
26
26
  "@types/three": "^0.152.1"
27
- }
27
+ },
28
+ "gitHead": "14107e94e28c06ca3319f1e322b4519acf3a0af2"
28
29
  }