@xviewer.js/core 1.0.0-beta.1 → 1.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/dist/main.js +3242 -1041
- package/dist/main.js.map +1 -1
- package/dist/module.js +3190 -1037
- package/dist/module.js.map +1 -1
- package/package.json +2 -2
- package/types/Component.d.ts +5 -2
- package/types/ComponentManager.d.ts +5 -3
- package/types/ComponentScheduler.d.ts +7 -3
- package/types/DeviceInput.d.ts +0 -1
- package/types/Mount.d.ts +4 -0
- package/types/ObjectInstance.d.ts +2 -2
- package/types/Plugin.d.ts +3 -9
- package/types/SystemInfo.d.ts +1 -0
- package/types/Task.d.ts +2 -0
- package/types/TextureSettings.d.ts +3 -1
- package/types/Utils.d.ts +10 -0
- package/types/Viewer.d.ts +44 -36
- package/types/asset/ResourceManager.d.ts +9 -23
- package/types/asset/aLoader.d.ts +8 -2
- package/types/base/EventEmitter.d.ts +10 -10
- package/types/cinestation/CinestationBlendDefinition.d.ts +4 -4
- package/types/cinestation/CinestationBrain.d.ts +0 -2
- package/types/cinestation/FreelookVirtualCamera.d.ts +39 -22
- package/types/cinestation/VirtualCamera.d.ts +8 -8
- package/types/components/Animation.d.ts +26 -0
- package/types/components/PerformanceMonitor.d.ts +48 -0
- package/types/components/Reflector.d.ts +15 -0
- package/types/components/index.d.ts +2 -0
- package/types/index.d.ts +13 -3
- package/types/{loader → loaders}/aEXRLoader.d.ts +2 -1
- package/types/{loader → loaders}/aFBXLoader.d.ts +2 -1
- package/types/loaders/aGLTFLoader.d.ts +7 -0
- package/types/{loader → loaders}/aHDRLoader.d.ts +2 -1
- package/types/{loader → loaders}/aJSONLoader.d.ts +2 -1
- package/types/{loader → loaders}/aTextureLoader.d.ts +2 -1
- package/types/materials/ReflectorMaterial.d.ts +44 -0
- package/types/{material → materials}/getShaderMaterial.d.ts +2 -2
- package/types/materials/glsl/index.d.ts +3 -0
- package/types/materials/index.d.ts +3 -0
- package/types/math/Constant.d.ts +8 -1
- package/types/math/Interpolation.d.ts +6 -6
- package/types/math/Perlin.d.ts +12 -0
- package/types/math/index.d.ts +5 -0
- package/types/passes/MipBlurPass.d.ts +27 -0
- package/types/passes/cubeuv/MergeBlurPass.d.ts +22 -0
- package/types/passes/cubeuv/MergeInfo.d.ts +9 -0
- package/types/passes/cubeuv/MergeReflectPass.d.ts +18 -0
- package/types/passes/cubeuv/utils.d.ts +16 -0
- package/types/passes/mipGaussianBlendWeight.d.ts +1 -0
- package/types/plugins/BoxProjection.d.ts +15 -0
- package/types/plugins/BoxProjectionPlugin.d.ts +20 -0
- package/types/plugins/DebugPlugin.d.ts +10 -0
- package/types/plugins/DebugScene.d.ts +8 -0
- package/types/plugins/DropFile.d.ts +18 -0
- package/types/plugins/DropFilePlugin.d.ts +18 -0
- package/types/plugins/Environment.d.ts +37 -0
- package/types/plugins/EnvironmentPlugin.d.ts +41 -0
- package/types/plugins/PerformanceMonitor.d.ts +48 -0
- package/types/plugins/PerformanceMonitorPlugin.d.ts +48 -0
- package/types/plugins/index.d.ts +4 -0
- package/types/tween/Easing.d.ts +25 -0
- package/types/tween/Group.d.ts +16 -0
- package/types/tween/Interpolation.d.ts +19 -0
- package/types/tween/Now.d.ts +2 -0
- package/types/tween/Sequence.d.ts +7 -0
- package/types/tween/Tween.d.ts +98 -0
- package/types/tween/TweenChain.d.ts +18 -7
- package/types/tween/TweenGroup.d.ts +17 -0
- package/types/tween/TweenManager.d.ts +3 -5
- package/types/tween/Version.d.ts +1 -0
- package/types/tween/index.d.ts +4 -1
- package/types/tween/mainGroup.d.ts +2 -0
- package/types/types.d.ts +8 -0
- package/types/loader/aGLTFLoader.d.ts +0 -5
- package/types/material/glsl/copy.glsl.d.ts +0 -1
- /package/types/{loader → loaders}/index.d.ts +0 -0
- /package/types/{material → materials}/glsl/boxfilterblur.glsl.d.ts +0 -0
- /package/types/{material → materials}/glsl/fullscreen.glsl.d.ts +0 -0
- /package/types/{material → materials}/glsl/panorama.glsl.d.ts +0 -0
- /package/types/{primitives → primitive}/Box.d.ts +0 -0
- /package/types/{primitives → primitive}/Plane.d.ts +0 -0
- /package/types/{primitives → primitive}/Sphere.d.ts +0 -0
- /package/types/{primitives → primitive}/index.d.ts +0 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xviewer.js/core",
|
|
3
|
-
"version": "1.0.0
|
|
3
|
+
"version": "1.0.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"sideEffects": false,
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"types/**/*"
|
|
14
14
|
],
|
|
15
15
|
"peerDependencies": {
|
|
16
|
-
"three": ">= 0.164.0
|
|
16
|
+
"three": ">= 0.164.0"
|
|
17
17
|
},
|
|
18
18
|
"scripts": {
|
|
19
19
|
"b:types": "tsc"
|
package/types/Component.d.ts
CHANGED
|
@@ -3,12 +3,11 @@ import { Viewer } from "./Viewer";
|
|
|
3
3
|
import { ComponentManager } from "./ComponentManager";
|
|
4
4
|
import { ObjectInstance } from "./ObjectInstance";
|
|
5
5
|
export declare class Component<T extends Object3D = Object3D> extends ObjectInstance {
|
|
6
|
-
get enabled(): boolean;
|
|
7
|
-
set enabled(v: boolean);
|
|
8
6
|
private _enabled;
|
|
9
7
|
node: T;
|
|
10
8
|
viewer: Viewer;
|
|
11
9
|
manager: ComponentManager;
|
|
10
|
+
isComponent: boolean;
|
|
12
11
|
type: string;
|
|
13
12
|
onLoad?(): void;
|
|
14
13
|
onEnable?(): void;
|
|
@@ -17,6 +16,8 @@ export declare class Component<T extends Object3D = Object3D> extends ObjectInst
|
|
|
17
16
|
start?(): void;
|
|
18
17
|
update?(dt: number): void;
|
|
19
18
|
lastUpdate?(dt: number): void;
|
|
19
|
+
render?(dt: number): void;
|
|
20
|
+
resize?(width: number, height: number): void;
|
|
20
21
|
flags: {
|
|
21
22
|
Destroyed?: boolean;
|
|
22
23
|
OnLoadCalled?: boolean;
|
|
@@ -25,6 +26,8 @@ export declare class Component<T extends Object3D = Object3D> extends ObjectInst
|
|
|
25
26
|
Deactivating?: boolean;
|
|
26
27
|
IsStartCalled?: boolean;
|
|
27
28
|
};
|
|
29
|
+
get enabled(): boolean;
|
|
30
|
+
set enabled(v: boolean);
|
|
28
31
|
protected _onPreDestroy(): void;
|
|
29
32
|
schedule(callback: Function, interval: number, repeat?: number): void;
|
|
30
33
|
unshedule(callback: Function): void;
|
|
@@ -3,7 +3,7 @@ import { Scheduler } from "./Scheduler";
|
|
|
3
3
|
import { Component } from "./Component";
|
|
4
4
|
import { ComponentScheduler } from "./ComponentScheduler";
|
|
5
5
|
import { Viewer } from "./Viewer";
|
|
6
|
-
type ComponentConstructor = new () => Component;
|
|
6
|
+
type ComponentConstructor = new (...args: any[]) => Component;
|
|
7
7
|
interface DependentInfo {
|
|
8
8
|
mode: DependentMode;
|
|
9
9
|
components: ComponentConstructor[];
|
|
@@ -16,7 +16,7 @@ export declare enum DependentMode {
|
|
|
16
16
|
}
|
|
17
17
|
export declare function dependencies(componentOrComponents: ComponentConstructor | ComponentConstructor[], mode?: DependentMode): <T extends ComponentConstructor>(target: T) => void;
|
|
18
18
|
export declare class ComponentManager {
|
|
19
|
-
static
|
|
19
|
+
static _infoMap: Map<ComponentConstructor, DependentInfo>;
|
|
20
20
|
private _viewer;
|
|
21
21
|
private _scheduler;
|
|
22
22
|
private _componentScheduler;
|
|
@@ -27,6 +27,8 @@ export declare class ComponentManager {
|
|
|
27
27
|
constructor(viewer: Viewer);
|
|
28
28
|
destroy(): void;
|
|
29
29
|
update(dt: number): void;
|
|
30
|
+
render(dt: number): void;
|
|
31
|
+
resize(width: number, height: number): void;
|
|
30
32
|
destroyComponents(node: Object3D): void;
|
|
31
33
|
activeComponents(node: Object3D): void;
|
|
32
34
|
addComponent<T extends Component>(node: Object3D | Component, instance: T): T;
|
|
@@ -35,7 +37,7 @@ export declare class ComponentManager {
|
|
|
35
37
|
}): T;
|
|
36
38
|
removeComponent(node: Object3D, component: Component): this;
|
|
37
39
|
getComponent<T extends Component>(node: Object3D, constructor: {
|
|
38
|
-
new (): T;
|
|
40
|
+
new (...args: any[]): T;
|
|
39
41
|
}, autoAdd?: boolean): T;
|
|
40
42
|
getComponentsInChidren<T extends Component>(node: Object3D, constructor: {
|
|
41
43
|
new (): T;
|
|
@@ -1,19 +1,23 @@
|
|
|
1
1
|
import { Component } from "./Component";
|
|
2
2
|
declare class Invoker<T> {
|
|
3
3
|
protected _targets: T[];
|
|
4
|
-
protected _callback: (target: T,
|
|
5
|
-
constructor(callback: (target: T,
|
|
4
|
+
protected _callback: (target: T, ...args: any[]) => any;
|
|
5
|
+
constructor(callback: (target: T, ...args: any[]) => any);
|
|
6
6
|
add(target: any): void;
|
|
7
7
|
remove(target: any): void;
|
|
8
|
-
invoke(
|
|
8
|
+
invoke(...args: any[]): void;
|
|
9
9
|
}
|
|
10
10
|
export declare class ComponentScheduler {
|
|
11
11
|
startInvoker: Invoker<Component>;
|
|
12
12
|
updateInvoker: Invoker<Component>;
|
|
13
13
|
lastUpdateInvoker: Invoker<Component>;
|
|
14
|
+
renderInvoker: Invoker<Component>;
|
|
15
|
+
resizeInvoker: Invoker<Component>;
|
|
14
16
|
start(): void;
|
|
15
17
|
update(dt: number): void;
|
|
16
18
|
lastUpdate(dt: number): void;
|
|
19
|
+
render(dt: number): void;
|
|
20
|
+
resize(width: number, height: number): void;
|
|
17
21
|
enableComponent(comp: Component, enable: boolean): void;
|
|
18
22
|
}
|
|
19
23
|
export {};
|
package/types/DeviceInput.d.ts
CHANGED
package/types/Mount.d.ts
ADDED
package/types/Plugin.d.ts
CHANGED
|
@@ -1,10 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
viewer: Viewer;
|
|
5
|
-
type: string;
|
|
6
|
-
install?(): void;
|
|
7
|
-
uninstall?(): void;
|
|
8
|
-
onUpdate?(dt: number): void;
|
|
9
|
-
onRender?(dt: number): void;
|
|
1
|
+
import { Component } from "./Component";
|
|
2
|
+
export declare class Plugin extends Component {
|
|
3
|
+
isPlugin: boolean;
|
|
10
4
|
}
|
package/types/SystemInfo.d.ts
CHANGED
package/types/Task.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Mapping, PixelFormat, TextureDataType, TextureFilter, Vector2, Wrapping } from "three";
|
|
1
|
+
import { ColorSpace, Mapping, PixelFormat, TextureDataType, TextureFilter, Vector2, Wrapping } from "three";
|
|
2
2
|
export interface TextureSettings {
|
|
3
3
|
flipY?: boolean;
|
|
4
4
|
mapping?: Mapping;
|
|
@@ -10,4 +10,6 @@ export interface TextureSettings {
|
|
|
10
10
|
dataType?: TextureDataType;
|
|
11
11
|
anisotropy?: number;
|
|
12
12
|
repeat?: Vector2;
|
|
13
|
+
colorSpace?: ColorSpace;
|
|
14
|
+
channel?: number;
|
|
13
15
|
}
|
package/types/Utils.d.ts
CHANGED
|
@@ -1,6 +1,16 @@
|
|
|
1
|
+
import { Object3D } from "three";
|
|
1
2
|
import { __C, __P } from "./types";
|
|
2
3
|
export declare function applyProps<T, K extends __C<T>>(target: T & {
|
|
3
4
|
copy?: Function;
|
|
4
5
|
}, props: __P<T, K>): T & {
|
|
5
6
|
copy?: Function;
|
|
6
7
|
};
|
|
8
|
+
export declare function find<T extends Object3D>(node: T, path: string): T;
|
|
9
|
+
export declare function getChidren<T extends Object3D>(node: T, filter: (value: T) => any, group?: boolean): any;
|
|
10
|
+
export declare function getChildByName<T extends Object3D>(node: T, name: string): T;
|
|
11
|
+
export declare function queryValues<T extends Object & {
|
|
12
|
+
name: string;
|
|
13
|
+
}>(object: any): T[];
|
|
14
|
+
export declare function queryValues<T extends Object & {
|
|
15
|
+
name: string;
|
|
16
|
+
}>(object: any, name: string): T;
|
package/types/Viewer.d.ts
CHANGED
|
@@ -1,11 +1,14 @@
|
|
|
1
|
-
import { BufferGeometry, Camera, ColorSpace, DataTexture, DirectionalLightShadow, Euler, Material, Mesh, Object3D, OrthographicCamera, PerspectiveCamera, Scene,
|
|
1
|
+
import { BufferGeometry, Camera, ColorSpace, DataTexture, DirectionalLightShadow, Euler, LoadingManager, Material, Mesh, Object3D, OrthographicCamera, PerspectiveCamera, Scene, ShadowMapType, Texture, TextureDataType, ToneMapping, Vector3, WebGLCubeRenderTarget, WebGLRenderer, WebGLRendererParameters, WebGLRenderTarget } from "three";
|
|
2
2
|
import { EventEmitter } from "./base";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
3
|
+
import { TaskManager } from "./TaskManager";
|
|
4
|
+
import { DeviceInput } from "./DeviceInput";
|
|
5
|
+
import { Orientation } from "./enums/Orientation";
|
|
6
|
+
import { AssetProperties, LoaderConstructor, ResourceManager } from "./asset/ResourceManager";
|
|
5
7
|
import { __C, __P } from "./types";
|
|
6
8
|
import { Component } from "./Component";
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
+
import { TweenManager } from "./tween";
|
|
10
|
+
import { Task } from "./Task";
|
|
11
|
+
import { Mount } from "./Mount";
|
|
9
12
|
export declare class Viewer extends EventEmitter {
|
|
10
13
|
static __target: Vector3;
|
|
11
14
|
static __worldPos: Vector3;
|
|
@@ -14,10 +17,12 @@ export declare class Viewer extends EventEmitter {
|
|
|
14
17
|
static CompileMaterial(renderer: WebGLRenderer, scene: Scene, camera: Camera, target: Material | Material[]): void;
|
|
15
18
|
static CompileObject3D(renderer: WebGLRenderer, scene: Scene, camera: Camera, target: Object3D): void;
|
|
16
19
|
static CompileTexture(renderer: WebGLRenderer, target: Texture | Texture[]): void;
|
|
17
|
-
static Blit(renderer: WebGLRenderer, renderTarget: WebGLRenderTarget, material:
|
|
18
|
-
static
|
|
20
|
+
static Blit(renderer: WebGLRenderer, renderTarget: WebGLRenderTarget | null, material: Material, lod?: number, face?: number): void;
|
|
21
|
+
static CreateFullscreenTriangle(): BufferGeometry<import("three").NormalBufferAttributes>;
|
|
19
22
|
static fullscreenMesh: Mesh;
|
|
20
23
|
static fullscreenCamera: OrthographicCamera;
|
|
24
|
+
static instanceCount: number;
|
|
25
|
+
private _instanceId;
|
|
21
26
|
private _root;
|
|
22
27
|
private _canvas;
|
|
23
28
|
private _gl;
|
|
@@ -25,6 +30,7 @@ export declare class Viewer extends EventEmitter {
|
|
|
25
30
|
private _DATA_FLOAT_TYPE;
|
|
26
31
|
private _scene;
|
|
27
32
|
private _camera;
|
|
33
|
+
private _mount;
|
|
28
34
|
private _renderer;
|
|
29
35
|
private _input;
|
|
30
36
|
private _dpr;
|
|
@@ -32,17 +38,20 @@ export declare class Viewer extends EventEmitter {
|
|
|
32
38
|
private _height;
|
|
33
39
|
private _viewport;
|
|
34
40
|
private _orientation;
|
|
41
|
+
private _defaultProps;
|
|
35
42
|
private _running;
|
|
36
43
|
private _rootRotated;
|
|
37
44
|
private _time;
|
|
38
45
|
private _lastTime;
|
|
46
|
+
private _lastFrameTime;
|
|
39
47
|
private _targetFrameRate;
|
|
48
|
+
private _fixedFrameTime;
|
|
40
49
|
private _autoResize;
|
|
41
50
|
private _taskManager;
|
|
42
51
|
private _resourceManager;
|
|
43
52
|
private _componentManager;
|
|
44
|
-
private
|
|
45
|
-
private
|
|
53
|
+
private _loadingManager;
|
|
54
|
+
private _tweens;
|
|
46
55
|
get root(): HTMLElement;
|
|
47
56
|
get time(): number;
|
|
48
57
|
get scene(): Scene;
|
|
@@ -61,10 +70,18 @@ export declare class Viewer extends EventEmitter {
|
|
|
61
70
|
factor: number;
|
|
62
71
|
};
|
|
63
72
|
get rootRotated(): boolean;
|
|
64
|
-
|
|
73
|
+
get input(): DeviceInput;
|
|
74
|
+
get targetFrameRate(): number;
|
|
75
|
+
set targetFrameRate(v: number);
|
|
76
|
+
get instanceId(): number;
|
|
77
|
+
get loadingManager(): LoadingManager;
|
|
78
|
+
get resourceManager(): ResourceManager;
|
|
79
|
+
get taskManager(): TaskManager;
|
|
80
|
+
constructor({ root, canvas, autoStart, autoResize, shadows, camera, targetFrameRate, fixedFrameTime, colorSpace, toneMapping, toneMappingExposure, maxDPR, path, resourcePath, dracoPath, orientation, loader, tasker, ...webglOpts }?: {
|
|
65
81
|
root?: HTMLElement;
|
|
66
82
|
canvas?: HTMLCanvasElement;
|
|
67
83
|
targetFrameRate?: number;
|
|
84
|
+
fixedFrameTime?: boolean;
|
|
68
85
|
autoStart?: boolean;
|
|
69
86
|
autoResize?: boolean;
|
|
70
87
|
shadows?: boolean | ShadowMapType;
|
|
@@ -75,6 +92,7 @@ export declare class Viewer extends EventEmitter {
|
|
|
75
92
|
path?: string;
|
|
76
93
|
resourcePath?: string;
|
|
77
94
|
dracoPath?: string;
|
|
95
|
+
orientation?: Orientation;
|
|
78
96
|
camera?: {
|
|
79
97
|
fov?: number;
|
|
80
98
|
aspect?: number;
|
|
@@ -100,43 +118,33 @@ export declare class Viewer extends EventEmitter {
|
|
|
100
118
|
loop(dt: number): void;
|
|
101
119
|
update(dt: number): void;
|
|
102
120
|
render(dt: number): void;
|
|
103
|
-
|
|
104
|
-
|
|
121
|
+
_rendering(dt: number): void;
|
|
122
|
+
_resizing(width: number, height: number): void;
|
|
105
123
|
start(): this;
|
|
106
124
|
stop(): this;
|
|
107
125
|
resize(width?: number, height?: number): void;
|
|
108
|
-
loadAsset(props: AssetProperties
|
|
126
|
+
loadAsset(props: AssetProperties): Promise<any>;
|
|
127
|
+
getLoader(ext: string): import(".").aLoader;
|
|
109
128
|
addLoader(Loader: LoaderConstructor): void;
|
|
110
|
-
load({ url, ext, onProgress, castShadow, receiveShadow, ...props }: AssetProperties & __P<Object3D, typeof Object3D>): Promise<any>;
|
|
111
|
-
tween(target: Object): import("./tween").Tween<Object>;
|
|
112
|
-
timeline(target: Object): import("./tween").TweenChain;
|
|
113
|
-
killTweensOf(target: Object): void;
|
|
114
129
|
traverseMaterials(callback: (mat: Material) => void): void;
|
|
115
|
-
traversePlugins(callback: (plugin: Plugin) => void): void;
|
|
116
|
-
getPlugin<T extends Plugin>(plugin: new (...args: any[]) => T, autoAdd?: boolean): T;
|
|
117
|
-
addPlugin<T extends Plugin, K extends __C<T>>(plugin: T | K & __C<T>, props?: __P<T, K>): T;
|
|
118
|
-
removePlugin<T extends Plugin, K extends __C<T>>(plugin: T | K & __C<T>): void;
|
|
119
|
-
getComponent<T extends Component>(node: Object3D, constructor: {
|
|
120
|
-
new (): T;
|
|
121
|
-
}, autoAdd?: boolean): T;
|
|
122
130
|
traverseComponents(callback: (comp: Component) => void): void;
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
createDataTexture(data: BufferSource, width: number, height: number, floatType?: boolean, nearest?: boolean): DataTexture;
|
|
131
|
+
mount<T extends Mount>(constructor: {
|
|
132
|
+
new (...args: any[]): T;
|
|
133
|
+
}, autoAdd?: boolean): T;
|
|
134
|
+
tween(): TweenManager;
|
|
135
|
+
task(task: Task): void;
|
|
136
|
+
add<T extends Object3D | Component, K extends __C<T>>(object: T | K & __C<T>, props?: __P<T, K>): T;
|
|
137
|
+
remove<T extends Object3D | Component>(ins: T): T;
|
|
138
|
+
createRenderTarget(width: number, height: number, nearest?: boolean, floatType?: boolean | TextureDataType, msaa?: number, mipmap?: boolean, depth?: boolean): WebGLRenderTarget<Texture>;
|
|
139
|
+
createCubeRenderTarget(size: number, nearest?: boolean, floatType?: boolean | TextureDataType, msaa?: number, mipmap?: boolean, depth?: boolean): WebGLCubeRenderTarget;
|
|
140
|
+
createDataTexture(data: ArrayBufferView, width: number, height: number, floatType?: boolean, nearest?: boolean): DataTexture;
|
|
134
141
|
/**
|
|
135
142
|
* 传送门,得到一个全新的场景
|
|
136
143
|
* @param callback 禁止使用异步函数,会导致状态错误
|
|
137
144
|
* @returns
|
|
138
145
|
*/
|
|
139
|
-
portal<T = any>(callback: () => T): T;
|
|
146
|
+
portal<T = any>(callback: () => T, sceneNew?: Scene): T;
|
|
147
|
+
blit(renderTarget: WebGLRenderTarget, material: Material, lod?: number, face?: number): void;
|
|
140
148
|
compile(target?: Object3D | Scene | Material | Texture): void;
|
|
141
149
|
compile(target?: Material[]): void;
|
|
142
150
|
}
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
import { LoadingManager } from "three";
|
|
2
2
|
import { TextureSettings } from "../TextureSettings";
|
|
3
3
|
import { aLoader } from "./aLoader";
|
|
4
|
-
export interface AssetProperties {
|
|
4
|
+
export interface AssetProperties extends TextureSettings {
|
|
5
|
+
url?: string;
|
|
5
6
|
ext?: string;
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
buffer?: string | ArrayBuffer;
|
|
8
|
+
path?: string;
|
|
9
|
+
resourcePath?: string;
|
|
10
|
+
dracoPath?: string;
|
|
11
|
+
manager?: LoadingManager;
|
|
10
12
|
onProgress?: (event: ProgressEvent) => void;
|
|
11
13
|
}
|
|
12
14
|
export type LoaderConstructor = new (manager: ResourceManager) => aLoader;
|
|
@@ -14,29 +16,13 @@ export declare class ResourceManager {
|
|
|
14
16
|
static extension(path: string): string;
|
|
15
17
|
static dirname(path: string): string;
|
|
16
18
|
static basename(path: string, ext?: string): string;
|
|
17
|
-
static _parseURL(uri: any): {
|
|
18
|
-
url: string;
|
|
19
|
-
file: any;
|
|
20
|
-
ext: string;
|
|
21
|
-
};
|
|
22
|
-
static _getTextureKey(url: string, settings: TextureSettings): string;
|
|
23
19
|
static _texSettingKeys: string[];
|
|
24
20
|
static _splitTextureSettings(props: TextureSettings & {
|
|
25
21
|
[k: string]: any;
|
|
26
22
|
}): {};
|
|
27
|
-
path: string;
|
|
28
|
-
resourcePath: string;
|
|
29
|
-
dracoPath: string;
|
|
30
|
-
loadingManager: LoadingManager;
|
|
31
|
-
private _caches;
|
|
32
23
|
private _loaders;
|
|
33
|
-
constructor(props: {
|
|
34
|
-
path: string;
|
|
35
|
-
resourcePath: string;
|
|
36
|
-
dracoPath: string;
|
|
37
|
-
loadingManager: LoadingManager;
|
|
38
|
-
});
|
|
39
24
|
destroy(): void;
|
|
25
|
+
getLoader(ext: string): aLoader;
|
|
40
26
|
addLoader(Loader: LoaderConstructor): void;
|
|
41
|
-
loadAsset<T = any>({ url, ext, onProgress, ...props }: AssetProperties
|
|
27
|
+
loadAsset<T = any>({ url, buffer, ext, path, resourcePath, dracoPath, manager, onProgress, ...props }: AssetProperties): Promise<T>;
|
|
42
28
|
}
|
package/types/asset/aLoader.d.ts
CHANGED
|
@@ -1,16 +1,22 @@
|
|
|
1
|
-
import { Object3D } from "three";
|
|
1
|
+
import { LoadingManager, Object3D } from "three";
|
|
2
2
|
import { ResourceManager } from "./ResourceManager";
|
|
3
3
|
import { TextureSettings } from "../TextureSettings";
|
|
4
4
|
export interface LoadProperties {
|
|
5
5
|
url: string;
|
|
6
|
+
buffer?: string | ArrayBuffer;
|
|
6
7
|
texSettings?: TextureSettings;
|
|
8
|
+
path?: string;
|
|
9
|
+
resourcePath?: string;
|
|
10
|
+
dracoPath?: string;
|
|
11
|
+
manager?: LoadingManager;
|
|
7
12
|
onLoad: (asset: any) => void;
|
|
8
13
|
onProgress?: (event: ProgressEvent) => void;
|
|
9
14
|
onError?: (event: ErrorEvent) => void;
|
|
10
15
|
}
|
|
11
16
|
export declare abstract class aLoader {
|
|
12
17
|
manager: ResourceManager;
|
|
13
|
-
static
|
|
18
|
+
static _texKeys: string[];
|
|
19
|
+
static _setUserData(node: Object3D): Object3D<import("three").Object3DEventMap>;
|
|
14
20
|
constructor(manager: ResourceManager);
|
|
15
21
|
abstract extension: string[];
|
|
16
22
|
abstract load(props: LoadProperties): void;
|
|
@@ -4,26 +4,26 @@ interface EventHandler {
|
|
|
4
4
|
target?: Object;
|
|
5
5
|
once?: boolean;
|
|
6
6
|
}
|
|
7
|
-
interface Listener {
|
|
8
|
-
name:
|
|
7
|
+
interface Listener<T> {
|
|
8
|
+
name: T;
|
|
9
9
|
callback: (...args: any[]) => any;
|
|
10
10
|
}
|
|
11
|
-
export declare class EventEmitter {
|
|
11
|
+
export declare class EventEmitter<T extends string = string> {
|
|
12
12
|
protected _events: {
|
|
13
13
|
[k: string]: EventHandler[];
|
|
14
14
|
};
|
|
15
15
|
protected _removeEvent(list: EventHandler[], index: number, name: string): this;
|
|
16
16
|
clear(): this;
|
|
17
|
-
has(name:
|
|
18
|
-
on(name:
|
|
19
|
-
off(name:
|
|
20
|
-
onof(name:
|
|
21
|
-
_listeners?: Listener[];
|
|
17
|
+
has(name: T): boolean;
|
|
18
|
+
on(name: T, callback: (...args: any[]) => any, target?: Object, once?: boolean): this;
|
|
19
|
+
off(name: T, callback: (...args: any[]) => any, target?: Object): this;
|
|
20
|
+
onof(name: T, callback: (...args: any[]) => any, container: Object & {
|
|
21
|
+
_listeners?: Listener<T>[];
|
|
22
22
|
}): this;
|
|
23
23
|
offof(container: Object & {
|
|
24
|
-
_listeners?: Listener[];
|
|
24
|
+
_listeners?: Listener<T>[];
|
|
25
25
|
}): this;
|
|
26
26
|
targetOff(target: Object): this;
|
|
27
|
-
emit(name:
|
|
27
|
+
emit(name: T, ...args: any[]): this;
|
|
28
28
|
}
|
|
29
29
|
export {};
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
export declare const CinestationBlendStyle: {
|
|
2
|
-
Linear: (
|
|
3
|
-
QuadraticIn: (
|
|
4
|
-
QuadraticOut: (
|
|
5
|
-
QuadraticInOut: (
|
|
2
|
+
Linear: import("../tween").EasingFunction;
|
|
3
|
+
QuadraticIn: import("../tween").EasingFunction;
|
|
4
|
+
QuadraticOut: import("../tween").EasingFunction;
|
|
5
|
+
QuadraticInOut: import("../tween").EasingFunction;
|
|
6
6
|
};
|
|
7
7
|
export type CinestationBlendStyle = typeof CinestationBlendStyle[keyof typeof CinestationBlendStyle];
|
|
8
8
|
export declare class CinestationBlendDefinition {
|
|
@@ -7,9 +7,7 @@ export declare class CinestationBrain extends Component<PerspectiveCamera> {
|
|
|
7
7
|
private _vcamSolo;
|
|
8
8
|
private _vcams;
|
|
9
9
|
private _lerpTime;
|
|
10
|
-
private _isChanged;
|
|
11
10
|
brainBlend: CinestationBlendDefinition;
|
|
12
|
-
onChanged: (v: boolean) => void;
|
|
13
11
|
get vcam(): VirtualCamera;
|
|
14
12
|
get vcams(): VirtualCamera[];
|
|
15
13
|
lastUpdate(dt: number): void;
|
|
@@ -1,55 +1,59 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Quaternion, Vector2, Vector3 } from "three";
|
|
2
2
|
import { VirtualCamera } from "./VirtualCamera";
|
|
3
|
-
export declare const VCamFreeLookMode: {
|
|
4
|
-
FREE: number;
|
|
5
|
-
TRANSLATE: number;
|
|
6
|
-
};
|
|
7
|
-
export type VCamFreeLookMode = typeof VCamFreeLookMode[keyof typeof VCamFreeLookMode];
|
|
8
3
|
export declare class FreelookVirtualCamera extends VirtualCamera {
|
|
9
4
|
static __loc0: Vector2;
|
|
10
5
|
static __loc1: Vector2;
|
|
11
6
|
static __center: Vector2;
|
|
12
7
|
static __preCenter: Vector2;
|
|
13
|
-
static
|
|
14
|
-
static
|
|
8
|
+
static __panDelta: Vector2;
|
|
9
|
+
static __panTarget: Vector2;
|
|
10
|
+
static __rotateDelta: Vector2;
|
|
15
11
|
static __posDelta: Vector3;
|
|
16
|
-
static __posOffset: Vector3;
|
|
17
12
|
static __xAxis: Vector3;
|
|
18
13
|
static __yAxis: Vector3;
|
|
19
14
|
static __quat: Quaternion;
|
|
20
|
-
static __spherical: Spherical;
|
|
21
15
|
private _button;
|
|
22
16
|
private _touchID;
|
|
23
|
-
private _distanceDelta;
|
|
24
17
|
private _preLoc0;
|
|
25
18
|
private _preLoc1;
|
|
26
|
-
private
|
|
27
|
-
private
|
|
28
|
-
|
|
19
|
+
private _spherical;
|
|
20
|
+
private _lookAt;
|
|
21
|
+
private _tempSmoothing;
|
|
22
|
+
private _tempRotateSmoothing;
|
|
23
|
+
private _targetTheta;
|
|
24
|
+
private _targetPhi;
|
|
25
|
+
private _targetSpringLength;
|
|
26
|
+
private _targetFov;
|
|
27
|
+
private _targetLookAt;
|
|
29
28
|
forbidX: boolean;
|
|
30
29
|
forbidY: boolean;
|
|
31
30
|
forbidZ: boolean;
|
|
32
31
|
forbidPanX: boolean;
|
|
33
32
|
forbidPanY: boolean;
|
|
34
33
|
forbitPanOffsetY: boolean;
|
|
34
|
+
panSpeed: number;
|
|
35
35
|
rotateSpeed: number;
|
|
36
|
+
smoothing: number;
|
|
36
37
|
rotateSmoothing: number;
|
|
37
|
-
panSpeed: number;
|
|
38
|
-
panSmoothing: number;
|
|
39
|
-
panScale: Vector3;
|
|
40
38
|
phiMin: number;
|
|
41
39
|
phiMax: number;
|
|
42
40
|
thetaMin: number;
|
|
43
41
|
thetaMax: number;
|
|
44
42
|
distanceMin: number;
|
|
45
43
|
distanceMax: number;
|
|
46
|
-
|
|
47
|
-
lookAt:
|
|
44
|
+
get lookAt(): Vector3;
|
|
45
|
+
set lookAt(v: Vector3);
|
|
46
|
+
get springLength(): number;
|
|
47
|
+
set springLength(v: number);
|
|
48
|
+
get theta(): number;
|
|
49
|
+
set theta(v: number);
|
|
50
|
+
get phi(): number;
|
|
51
|
+
set phi(v: number);
|
|
52
|
+
get fov(): number;
|
|
53
|
+
set fov(v: number);
|
|
48
54
|
onEnable(): void;
|
|
49
55
|
onDisable(): void;
|
|
50
56
|
reset(): void;
|
|
51
|
-
private _tweenPOI;
|
|
52
|
-
gotoPOI(position: Vector3, lookAt: Vector3, duration?: number, easing?: (amount: number) => number): void;
|
|
53
57
|
private _onPointerDown;
|
|
54
58
|
private _onPointerUp;
|
|
55
59
|
private _onPointerMove;
|
|
@@ -57,7 +61,20 @@ export declare class FreelookVirtualCamera extends VirtualCamera {
|
|
|
57
61
|
private _onTouchStart;
|
|
58
62
|
private _onTouchMove;
|
|
59
63
|
private _calculateDistanceScale;
|
|
60
|
-
private
|
|
64
|
+
private _calculateRotatelDelta;
|
|
61
65
|
private _calculatePanDelta;
|
|
66
|
+
private _setTargetLookAt;
|
|
67
|
+
private _setTargetRotation;
|
|
68
|
+
private _setTargetSpringLength;
|
|
69
|
+
goto({ springLength, theta, phi, lookAt, fov, smoothing, rotateSmoothing, }: {
|
|
70
|
+
duration?: number;
|
|
71
|
+
springLength?: number;
|
|
72
|
+
theta?: number;
|
|
73
|
+
phi?: number;
|
|
74
|
+
lookAt?: Vector3;
|
|
75
|
+
fov?: number;
|
|
76
|
+
smoothing?: number;
|
|
77
|
+
rotateSmoothing?: number;
|
|
78
|
+
}): void;
|
|
62
79
|
update(dt: number): void;
|
|
63
80
|
}
|
|
@@ -1,25 +1,25 @@
|
|
|
1
1
|
import { Object3D, Quaternion, Vector3 } from "three";
|
|
2
2
|
import { Component } from "../Component";
|
|
3
3
|
import { CinestationBrain } from "./CinestationBrain";
|
|
4
|
+
declare class Lens {
|
|
5
|
+
fov: number;
|
|
6
|
+
near: number;
|
|
7
|
+
far: number;
|
|
8
|
+
}
|
|
4
9
|
export declare class VirtualCamera extends Component<Object3D & {
|
|
5
10
|
isCamera?: boolean;
|
|
6
11
|
}> {
|
|
7
12
|
private _finalPosition;
|
|
8
13
|
private _finalRotation;
|
|
14
|
+
locked: boolean;
|
|
9
15
|
priority: number;
|
|
10
|
-
|
|
11
|
-
follow: Object3D | null;
|
|
12
|
-
fov: number;
|
|
13
|
-
near: number;
|
|
14
|
-
far: number;
|
|
16
|
+
lens: Lens;
|
|
15
17
|
correctPosition: Vector3;
|
|
16
18
|
correctRotation: Quaternion;
|
|
17
|
-
lookaheadPosition: Vector3;
|
|
18
|
-
trackedObjectOffset: Vector3;
|
|
19
19
|
brain: CinestationBrain;
|
|
20
20
|
get finalPosition(): Vector3;
|
|
21
21
|
get finalRotation(): Quaternion;
|
|
22
22
|
onLoad(): void;
|
|
23
23
|
onDestroy(): void;
|
|
24
|
-
update(dt: number): void;
|
|
25
24
|
}
|
|
25
|
+
export {};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { AnimationAction, AnimationActionLoopStyles, AnimationMixer } from "three";
|
|
2
|
+
import { Component } from "../Component";
|
|
3
|
+
export declare class Animation extends Component {
|
|
4
|
+
private _mixer;
|
|
5
|
+
private _action;
|
|
6
|
+
private _actions;
|
|
7
|
+
private _progress;
|
|
8
|
+
playing: boolean;
|
|
9
|
+
get mixer(): AnimationMixer;
|
|
10
|
+
get action(): AnimationAction;
|
|
11
|
+
get actions(): AnimationAction[];
|
|
12
|
+
get progress(): number;
|
|
13
|
+
set progress(v: number);
|
|
14
|
+
onLoad(): void;
|
|
15
|
+
onDestroy(): void;
|
|
16
|
+
update(dt: number): void;
|
|
17
|
+
play(animName?: string, state?: {
|
|
18
|
+
mode?: AnimationActionLoopStyles;
|
|
19
|
+
repetitions?: number;
|
|
20
|
+
duration?: number;
|
|
21
|
+
clampWhenFinished?: boolean;
|
|
22
|
+
zeroSlopeAtStart?: boolean;
|
|
23
|
+
zeroSlopeAtEnd?: boolean;
|
|
24
|
+
}): this;
|
|
25
|
+
stop(): this;
|
|
26
|
+
}
|