@galacean/effects-threejs 0.0.0-experimental-downgrade628-20240904 → 0.0.0-experimental-20250807
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 +21 -1
- package/dist/index.d.ts +5 -2
- package/dist/index.js +31701 -23203
- package/dist/index.js.map +1 -1
- package/dist/index.min.js +3 -16
- package/dist/index.min.js.map +1 -1
- package/dist/index.mjs +31607 -23150
- package/dist/index.mjs.map +1 -1
- package/dist/material/three-material.d.ts +17 -6
- package/dist/three-composition.d.ts +8 -44
- package/dist/three-display-object.d.ts +14 -5
- package/dist/three-engine.d.ts +14 -0
- package/dist/three-geometry.d.ts +8 -2
- package/dist/three-mesh.d.ts +4 -2
- package/dist/three-sprite-component.d.ts +41 -0
- package/dist/three-text-component.d.ts +18 -0
- package/dist/three-texture.d.ts +9 -166
- package/package.json +5 -5
- package/dist/three-render-frame.d.ts +0 -57
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { MaterialProps, Texture, UniformValue, MaterialDestroyOptions, UndefinedAble, Engine,
|
|
2
|
-
import { Material } from '@galacean/effects-core';
|
|
1
|
+
import type { MaterialProps, Texture, UniformValue, MaterialDestroyOptions, UndefinedAble, Engine, GlobalUniforms, Renderer } from '@galacean/effects-core';
|
|
2
|
+
import { math, Material } from '@galacean/effects-core';
|
|
3
3
|
import * as THREE from 'three';
|
|
4
4
|
type Matrix4 = math.Matrix4;
|
|
5
5
|
type Vector2 = math.Vector2;
|
|
@@ -7,6 +7,7 @@ type Vector3 = math.Vector3;
|
|
|
7
7
|
type Vector4 = math.Vector4;
|
|
8
8
|
type Matrix3 = math.Matrix3;
|
|
9
9
|
type Quaternion = math.Quaternion;
|
|
10
|
+
type Color = math.Color;
|
|
10
11
|
/**
|
|
11
12
|
* THREE 抽象材质类
|
|
12
13
|
*/
|
|
@@ -23,12 +24,13 @@ export declare class ThreeMaterial extends Material {
|
|
|
23
24
|
* 储存 uniform 变量名及对应的 THREE uniform 对象
|
|
24
25
|
*/
|
|
25
26
|
uniforms: Record<string, THREE.Uniform>;
|
|
27
|
+
macrosDirty: boolean;
|
|
26
28
|
/**
|
|
27
29
|
* 构造函数
|
|
28
30
|
*
|
|
29
31
|
* @param props - 材质属性
|
|
30
32
|
*/
|
|
31
|
-
constructor(engine: Engine, props
|
|
33
|
+
constructor(engine: Engine, props?: MaterialProps);
|
|
32
34
|
/**
|
|
33
35
|
* 设置 uniform 变量值的回调函数
|
|
34
36
|
*
|
|
@@ -36,6 +38,7 @@ export declare class ThreeMaterial extends Material {
|
|
|
36
38
|
* @param value - uniform 变量值
|
|
37
39
|
*/
|
|
38
40
|
onSetUniformValue(name: string, value: UniformValue): void;
|
|
41
|
+
use(render: Renderer, globalUniforms: GlobalUniforms): void;
|
|
39
42
|
/**
|
|
40
43
|
* 移除 uniform 变量值的回调函数
|
|
41
44
|
*
|
|
@@ -132,6 +135,11 @@ export declare class ThreeMaterial extends Material {
|
|
|
132
135
|
*/
|
|
133
136
|
get cullFace(): UndefinedAble<number>;
|
|
134
137
|
set cullFace(value: UndefinedAble<number>);
|
|
138
|
+
/**
|
|
139
|
+
* 获取颜色写入开关
|
|
140
|
+
*/
|
|
141
|
+
set colorMask(value: boolean);
|
|
142
|
+
get colorMask(): boolean;
|
|
135
143
|
getTexture(name: string): Texture | null;
|
|
136
144
|
setTexture(name: string, texture: Texture): void;
|
|
137
145
|
getVector4Array(name: string): number[];
|
|
@@ -148,6 +156,8 @@ export declare class ThreeMaterial extends Material {
|
|
|
148
156
|
setVector3(name: string, value: Vector3): void;
|
|
149
157
|
getVector4(name: string): Vector4 | null;
|
|
150
158
|
setVector4(name: string, value: Vector4): void;
|
|
159
|
+
getColor(name: string): Color | null;
|
|
160
|
+
setColor(name: string, value: Color): void;
|
|
151
161
|
getQuaternion(name: string): Quaternion | null;
|
|
152
162
|
setQuaternion(name: string, value: Quaternion): void;
|
|
153
163
|
getFloat(name: string): number | null;
|
|
@@ -158,11 +168,12 @@ export declare class ThreeMaterial extends Material {
|
|
|
158
168
|
setInt(name: string, value: number): void;
|
|
159
169
|
hasUniform(name: string): boolean;
|
|
160
170
|
private setUniform;
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
171
|
+
enableMacro(keyword: string, value?: boolean | number): void;
|
|
172
|
+
disableMacro(keyword: string): void;
|
|
173
|
+
isMacroEnabled(keyword: string): boolean;
|
|
164
174
|
clone(props?: MaterialProps): Material;
|
|
165
175
|
cloneUniforms(sourceMaterial: Material): void;
|
|
176
|
+
fromData(data: unknown): void;
|
|
166
177
|
dispose(destroyOptions?: MaterialDestroyOptions): void;
|
|
167
178
|
}
|
|
168
179
|
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Scene, ShaderLibrary, Transform, MeshRendererOptions, EventSystem,
|
|
1
|
+
import type { Scene, ShaderLibrary, Transform, MeshRendererOptions, EventSystem, CompositionProps } from '@galacean/effects-core';
|
|
2
2
|
import { Composition } from '@galacean/effects-core';
|
|
3
3
|
import type THREE from 'three';
|
|
4
4
|
/**
|
|
@@ -28,37 +28,16 @@ export interface CompositionBaseProps {
|
|
|
28
28
|
* Shader 库
|
|
29
29
|
*/
|
|
30
30
|
shaderLibrary?: ShaderLibrary;
|
|
31
|
-
/**
|
|
32
|
-
* end 状态监听函数
|
|
33
|
-
*
|
|
34
|
-
* @param composition - composition 对象
|
|
35
|
-
* @returns
|
|
36
|
-
*/
|
|
37
|
-
onEnd?: (composition: Composition) => void;
|
|
38
|
-
/**
|
|
39
|
-
* 交互元素监听函数
|
|
40
|
-
*
|
|
41
|
-
* @param item
|
|
42
|
-
* @returns
|
|
43
|
-
*/
|
|
44
|
-
onMessageItem?: (item: MessageItem) => void;
|
|
45
|
-
/**
|
|
46
|
-
* player 暂停监听函授
|
|
47
|
-
*
|
|
48
|
-
* @param item
|
|
49
|
-
* @returns
|
|
50
|
-
*/
|
|
51
|
-
onPlayerPause?: (item: VFXItem<VFXItemContent>) => void;
|
|
52
31
|
}
|
|
53
|
-
export interface ThreeCompositionProps extends
|
|
32
|
+
export interface ThreeCompositionProps extends CompositionProps {
|
|
54
33
|
/**
|
|
55
|
-
*
|
|
34
|
+
* Three.js 中的相机对象
|
|
56
35
|
*/
|
|
57
|
-
|
|
36
|
+
threeCamera?: THREE.Camera;
|
|
58
37
|
/**
|
|
59
|
-
*
|
|
38
|
+
* Three.js 中的 Group 对象
|
|
60
39
|
*/
|
|
61
|
-
|
|
40
|
+
threeGroup?: THREE.Group;
|
|
62
41
|
}
|
|
63
42
|
/**
|
|
64
43
|
* composition 抽象类的实现
|
|
@@ -68,23 +47,8 @@ export declare class ThreeComposition extends Composition {
|
|
|
68
47
|
* 发射器形状缓存 map
|
|
69
48
|
*/
|
|
70
49
|
static shape: Record<string, number>;
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
*/
|
|
74
|
-
threeCamera: THREE.Camera;
|
|
75
|
-
constructor(props: CompositionProps, scene: Scene);
|
|
76
|
-
/**
|
|
77
|
-
* 开始
|
|
78
|
-
*/
|
|
79
|
-
createRenderFrame(): void;
|
|
80
|
-
/**
|
|
81
|
-
* 更新 video texture 数据
|
|
82
|
-
*/
|
|
83
|
-
updateVideo(): void;
|
|
84
|
-
/**
|
|
85
|
-
* 更新相机
|
|
86
|
-
*/
|
|
87
|
-
updateCamera(): void;
|
|
50
|
+
constructor(props: ThreeCompositionProps, scene: Scene);
|
|
51
|
+
prepareRender(): void;
|
|
88
52
|
/**
|
|
89
53
|
* 获取 render 参数
|
|
90
54
|
*
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import type { EventSystem, SceneLoadOptions, Renderer,
|
|
1
|
+
import type { EventSystem, SceneLoadOptions, Renderer, Composition, Scene } from '@galacean/effects-core';
|
|
2
|
+
import { AssetManager } from '@galacean/effects-core';
|
|
2
3
|
import * as THREE from 'three';
|
|
3
4
|
import { ThreeComposition } from './three-composition';
|
|
4
5
|
export type ThreeDisplayObjectOptions = {
|
|
@@ -22,10 +23,14 @@ export type ThreeDisplayObjectOptions = {
|
|
|
22
23
|
*/
|
|
23
24
|
export declare class ThreeDisplayObject extends THREE.Group {
|
|
24
25
|
compositions: ThreeComposition[];
|
|
25
|
-
camera
|
|
26
|
+
camera?: THREE.Camera;
|
|
26
27
|
renderer: Renderer;
|
|
28
|
+
assetManager: AssetManager;
|
|
29
|
+
env: string;
|
|
27
30
|
readonly width: number;
|
|
28
31
|
readonly height: number;
|
|
32
|
+
private baseCompositionIndex;
|
|
33
|
+
private assetService;
|
|
29
34
|
/**
|
|
30
35
|
*
|
|
31
36
|
* @param context
|
|
@@ -36,12 +41,16 @@ export declare class ThreeDisplayObject extends THREE.Group {
|
|
|
36
41
|
*/
|
|
37
42
|
get currentComposition(): ThreeComposition;
|
|
38
43
|
/**
|
|
39
|
-
*
|
|
40
|
-
* @param
|
|
44
|
+
* 加载动画资源
|
|
45
|
+
* @param scene - 一个或一组 URL 或者通过 URL 请求的 JSONObject 或者 Scene 对象
|
|
41
46
|
* @param options - 加载可选参数
|
|
42
47
|
* @returns
|
|
43
48
|
*/
|
|
44
|
-
loadScene(
|
|
49
|
+
loadScene(scene: Scene.LoadType, options?: SceneLoadOptions): Promise<Composition>;
|
|
50
|
+
loadScene(scene: Scene.LoadType[], options?: SceneLoadOptions): Promise<Composition[]>;
|
|
51
|
+
private createComposition;
|
|
52
|
+
pause(): void;
|
|
53
|
+
resume(): void;
|
|
45
54
|
/**
|
|
46
55
|
*
|
|
47
56
|
* @param delta
|
package/dist/three-engine.d.ts
CHANGED
|
@@ -1,4 +1,18 @@
|
|
|
1
|
+
import type { Composition } from '@galacean/effects-core';
|
|
1
2
|
import { Engine } from '@galacean/effects-core';
|
|
3
|
+
import type * as THREE from 'three';
|
|
4
|
+
export interface ThreeEngineOptions {
|
|
5
|
+
threeCamera?: THREE.Camera;
|
|
6
|
+
composition: Composition;
|
|
7
|
+
threeGroup: THREE.Group;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* 挂载着合成需要的全局对象等
|
|
11
|
+
*/
|
|
2
12
|
export declare class ThreeEngine extends Engine {
|
|
13
|
+
threeCamera?: THREE.Camera;
|
|
14
|
+
threeGroup: THREE.Group;
|
|
15
|
+
composition: Composition;
|
|
3
16
|
constructor(gl: WebGL2RenderingContext | WebGLRenderingContext);
|
|
17
|
+
setOptions(threeEngineOptions: ThreeEngineOptions): void;
|
|
4
18
|
}
|
package/dist/three-geometry.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Engine, GeometryProps, spec } from '@galacean/effects-core';
|
|
1
|
+
import type { Engine, GeometryProps, SkinProps, spec } from '@galacean/effects-core';
|
|
2
2
|
import { Geometry } from '@galacean/effects-core';
|
|
3
3
|
import * as THREE from 'three';
|
|
4
4
|
/**
|
|
@@ -44,7 +44,7 @@ export declare class ThreeGeometry extends Geometry {
|
|
|
44
44
|
* 构造函数
|
|
45
45
|
* @param props - geometry 创建参数
|
|
46
46
|
*/
|
|
47
|
-
constructor(engine: Engine, props
|
|
47
|
+
constructor(engine: Engine, props?: GeometryProps);
|
|
48
48
|
/**
|
|
49
49
|
* 获取绘制数量
|
|
50
50
|
*/
|
|
@@ -139,6 +139,12 @@ export declare class ThreeGeometry extends Geometry {
|
|
|
139
139
|
* @returns 返回绘制数量
|
|
140
140
|
*/
|
|
141
141
|
getDrawCount(): number;
|
|
142
|
+
/**
|
|
143
|
+
* 获取蒙皮数据
|
|
144
|
+
*
|
|
145
|
+
* @returns 返回蒙皮数据
|
|
146
|
+
*/
|
|
147
|
+
getSkinProps(): SkinProps;
|
|
142
148
|
/**
|
|
143
149
|
* 销毁方法
|
|
144
150
|
*
|
package/dist/three-mesh.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Geometry, Material, MaterialDestroyOptions, MeshDestroyOptions, GeometryMeshProps, Sortable, Engine } from '@galacean/effects-core';
|
|
1
|
+
import type { Geometry, Material, MaterialDestroyOptions, MeshDestroyOptions, GeometryMeshProps, Sortable, Engine, Renderer } from '@galacean/effects-core';
|
|
2
2
|
import { DestroyOptions, Mesh } from '@galacean/effects-core';
|
|
3
3
|
import * as THREE from 'three';
|
|
4
4
|
/**
|
|
@@ -13,7 +13,7 @@ export declare class ThreeMesh extends Mesh implements Sortable {
|
|
|
13
13
|
* 构造函数
|
|
14
14
|
* @param props - mesh 创建参数
|
|
15
15
|
*/
|
|
16
|
-
constructor(engine: Engine, props
|
|
16
|
+
constructor(engine: Engine, props?: GeometryMeshProps);
|
|
17
17
|
/**
|
|
18
18
|
* 设置 mesh 的渲染顺序
|
|
19
19
|
*
|
|
@@ -49,10 +49,12 @@ export declare class ThreeMesh extends Mesh implements Sortable {
|
|
|
49
49
|
* @param destroy 销毁参数
|
|
50
50
|
*/
|
|
51
51
|
setMaterial(mtl: Material, destroy?: MaterialDestroyOptions | DestroyOptions.keep): void;
|
|
52
|
+
onStart(): void;
|
|
52
53
|
/**
|
|
53
54
|
* 重建方法
|
|
54
55
|
*/
|
|
55
56
|
restore(): void;
|
|
57
|
+
render(renderer: Renderer): void;
|
|
56
58
|
/**
|
|
57
59
|
* 销毁方法
|
|
58
60
|
*
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import type { Renderer } from '@galacean/effects-core';
|
|
2
|
+
import { SpriteComponent, spec } from '@galacean/effects-core';
|
|
3
|
+
import * as THREE from 'three';
|
|
4
|
+
export declare class ThreeSpriteComponent extends SpriteComponent {
|
|
5
|
+
threeMesh: THREE.Mesh | THREE.LineSegments;
|
|
6
|
+
/**
|
|
7
|
+
* 设置 mesh 的渲染顺序
|
|
8
|
+
*
|
|
9
|
+
* @param v - 顺序 index
|
|
10
|
+
*/
|
|
11
|
+
set priority(v: number);
|
|
12
|
+
/**
|
|
13
|
+
* 获取 mesh 的渲染顺序
|
|
14
|
+
*/
|
|
15
|
+
get priority(): number;
|
|
16
|
+
/**
|
|
17
|
+
* TODO: 待移除
|
|
18
|
+
* 设置 mesh 可见性
|
|
19
|
+
*
|
|
20
|
+
* @param val - 可见性开关
|
|
21
|
+
*/
|
|
22
|
+
setVisible(val: boolean): void;
|
|
23
|
+
/**
|
|
24
|
+
* TODO: 待移除
|
|
25
|
+
* 获取 mesh 的可见性
|
|
26
|
+
*
|
|
27
|
+
* @returns
|
|
28
|
+
*/
|
|
29
|
+
getVisible(): boolean;
|
|
30
|
+
get enabled(): boolean;
|
|
31
|
+
set enabled(value: boolean);
|
|
32
|
+
/**
|
|
33
|
+
* 销毁方法
|
|
34
|
+
*
|
|
35
|
+
*/
|
|
36
|
+
dispose(): void;
|
|
37
|
+
fromData(data: spec.SpriteComponentData): void;
|
|
38
|
+
onStart(): void;
|
|
39
|
+
render(renderer: Renderer): void;
|
|
40
|
+
onDestroy(): void;
|
|
41
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { Engine } from '@galacean/effects-core';
|
|
2
|
+
import { spec, TextComponentBase } from '@galacean/effects-core';
|
|
3
|
+
import { ThreeSpriteComponent } from './three-sprite-component';
|
|
4
|
+
export interface ThreeTextComponent extends TextComponentBase {
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* @since 2.0.0
|
|
8
|
+
*/
|
|
9
|
+
export declare class ThreeTextComponent extends ThreeSpriteComponent {
|
|
10
|
+
isDirty: boolean;
|
|
11
|
+
canvas: HTMLCanvasElement;
|
|
12
|
+
context: CanvasRenderingContext2D | null;
|
|
13
|
+
constructor(engine: Engine, props?: spec.TextContent);
|
|
14
|
+
onUpdate(dt: number): void;
|
|
15
|
+
fromData(data: spec.SpriteComponentData): void;
|
|
16
|
+
updateWithOptions(options: spec.TextContentOptions): void;
|
|
17
|
+
updateTexture(flipY?: boolean): void;
|
|
18
|
+
}
|
package/dist/three-texture.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { TextureDataType, TextureSourceOptions } from '@galacean/effects-core';
|
|
2
|
-
import { Texture
|
|
1
|
+
import type { Engine, TextureDataType, TextureSourceOptions } from '@galacean/effects-core';
|
|
2
|
+
import { Texture } from '@galacean/effects-core';
|
|
3
3
|
import * as THREE from 'three';
|
|
4
4
|
/**
|
|
5
5
|
* THREE 抽象纹理类
|
|
@@ -26,183 +26,26 @@ export declare class ThreeTexture extends Texture {
|
|
|
26
26
|
* @param data - 纹理数据
|
|
27
27
|
* @param options - 纹理选项
|
|
28
28
|
*/
|
|
29
|
-
constructor(data?: TextureDataType, options?: TextureSourceOptions);
|
|
29
|
+
constructor(engine: Engine, data?: TextureDataType, options?: TextureSourceOptions);
|
|
30
30
|
/**
|
|
31
31
|
* 更新纹理数据
|
|
32
32
|
* @param options - 纹理选项
|
|
33
33
|
*/
|
|
34
34
|
updateSource(options: TextureSourceOptions): void;
|
|
35
|
-
/**
|
|
36
|
-
* 开始更新视频数据
|
|
37
|
-
*
|
|
38
|
-
*/
|
|
39
|
-
startVideo(): Promise<void>;
|
|
40
35
|
/**
|
|
41
36
|
* 组装纹理选项
|
|
42
37
|
* @param options - 纹理选项
|
|
43
38
|
* @returns 组装后的纹理选项
|
|
44
39
|
*/
|
|
45
|
-
assembleOptions(options: TextureSourceOptions):
|
|
46
|
-
minFilter: THREE.TextureFilter;
|
|
47
|
-
magFilter: THREE.TextureFilter;
|
|
48
|
-
wrapS: THREE.Wrapping;
|
|
49
|
-
wrapT: THREE.Wrapping;
|
|
50
|
-
sourceType?: TextureSourceType.image | undefined;
|
|
51
|
-
image: HTMLImageElement | HTMLCanvasElement;
|
|
52
|
-
target: number;
|
|
53
|
-
generateMipmap?: boolean | undefined;
|
|
54
|
-
sourceFrom?: import("@galacean/effects-core").TextureFactorySourceFrom | undefined;
|
|
55
|
-
name?: string | undefined;
|
|
56
|
-
anisotropic?: number | undefined;
|
|
57
|
-
flipY?: boolean | undefined;
|
|
58
|
-
premultiplyAlpha?: boolean | undefined;
|
|
59
|
-
keepImageSource?: boolean | undefined;
|
|
60
|
-
format: number | THREE.PixelFormat;
|
|
61
|
-
internalFormat?: number | undefined;
|
|
62
|
-
type: number | THREE.TextureDataType;
|
|
63
|
-
} | {
|
|
64
|
-
minFilter: THREE.TextureFilter;
|
|
65
|
-
magFilter: THREE.TextureFilter;
|
|
66
|
-
wrapS: THREE.Wrapping;
|
|
67
|
-
wrapT: THREE.Wrapping;
|
|
68
|
-
sourceType?: TextureSourceType.data | undefined;
|
|
69
|
-
data: TextureDataType;
|
|
70
|
-
target: number;
|
|
71
|
-
sourceFrom?: import("@galacean/effects-core").TextureFactorySourceFrom | undefined;
|
|
72
|
-
name?: string | undefined;
|
|
73
|
-
anisotropic?: number | undefined;
|
|
74
|
-
flipY?: boolean | undefined;
|
|
75
|
-
premultiplyAlpha?: boolean | undefined;
|
|
76
|
-
keepImageSource?: boolean | undefined;
|
|
77
|
-
format: number | THREE.PixelFormat;
|
|
78
|
-
internalFormat?: number | undefined;
|
|
79
|
-
type: number | THREE.TextureDataType;
|
|
80
|
-
} | {
|
|
81
|
-
minFilter: THREE.TextureFilter;
|
|
82
|
-
magFilter: THREE.TextureFilter;
|
|
83
|
-
wrapS: THREE.Wrapping;
|
|
84
|
-
wrapT: THREE.Wrapping;
|
|
85
|
-
sourceType?: TextureSourceType.video | undefined;
|
|
86
|
-
video: HTMLVideoElement;
|
|
87
|
-
target: number;
|
|
88
|
-
generateMipmap?: boolean | undefined;
|
|
89
|
-
sourceFrom?: import("@galacean/effects-core").TextureFactorySourceFrom | undefined;
|
|
90
|
-
name?: string | undefined;
|
|
91
|
-
anisotropic?: number | undefined;
|
|
92
|
-
flipY?: boolean | undefined;
|
|
93
|
-
premultiplyAlpha?: boolean | undefined;
|
|
94
|
-
keepImageSource?: boolean | undefined;
|
|
95
|
-
format: number | THREE.PixelFormat;
|
|
96
|
-
internalFormat?: number | undefined;
|
|
97
|
-
type: number | THREE.TextureDataType;
|
|
98
|
-
} | {
|
|
99
|
-
minFilter: THREE.TextureFilter;
|
|
100
|
-
magFilter: THREE.TextureFilter;
|
|
101
|
-
wrapS: THREE.Wrapping;
|
|
102
|
-
wrapT: THREE.Wrapping;
|
|
103
|
-
sourceType?: TextureSourceType.mipmaps | undefined;
|
|
104
|
-
mipmaps: ((HTMLImageElement | HTMLCanvasElement) | TextureDataType)[];
|
|
105
|
-
target: number;
|
|
106
|
-
sourceFrom?: import("@galacean/effects-core").TextureFactorySourceFrom | undefined;
|
|
107
|
-
name?: string | undefined;
|
|
108
|
-
anisotropic?: number | undefined;
|
|
109
|
-
flipY?: boolean | undefined;
|
|
110
|
-
premultiplyAlpha?: boolean | undefined;
|
|
111
|
-
keepImageSource?: boolean | undefined;
|
|
112
|
-
format: number | THREE.PixelFormat;
|
|
113
|
-
internalFormat?: number | undefined;
|
|
114
|
-
type: number | THREE.TextureDataType;
|
|
115
|
-
} | {
|
|
116
|
-
minFilter: THREE.TextureFilter;
|
|
117
|
-
magFilter: THREE.TextureFilter;
|
|
118
|
-
wrapS: THREE.Wrapping;
|
|
119
|
-
wrapT: THREE.Wrapping;
|
|
120
|
-
sourceType?: TextureSourceType.compressed | undefined;
|
|
121
|
-
mipmaps: TextureDataType[];
|
|
122
|
-
target: number;
|
|
123
|
-
sourceFrom?: import("@galacean/effects-core").TextureFactorySourceFrom | undefined;
|
|
124
|
-
name?: string | undefined;
|
|
125
|
-
anisotropic?: number | undefined;
|
|
126
|
-
flipY?: boolean | undefined;
|
|
127
|
-
premultiplyAlpha?: boolean | undefined;
|
|
128
|
-
keepImageSource?: boolean | undefined;
|
|
129
|
-
format: number | THREE.PixelFormat;
|
|
130
|
-
internalFormat?: number | undefined;
|
|
131
|
-
type: number | THREE.TextureDataType;
|
|
132
|
-
} | {
|
|
133
|
-
minFilter: THREE.TextureFilter;
|
|
134
|
-
magFilter: THREE.TextureFilter;
|
|
135
|
-
wrapS: THREE.Wrapping;
|
|
136
|
-
wrapT: THREE.Wrapping;
|
|
137
|
-
sourceType: TextureSourceType.framebuffer;
|
|
138
|
-
data?: {
|
|
139
|
-
width: number;
|
|
140
|
-
height: number;
|
|
141
|
-
} | undefined;
|
|
142
|
-
target: number;
|
|
143
|
-
sourceFrom?: import("@galacean/effects-core").TextureFactorySourceFrom | undefined;
|
|
144
|
-
name?: string | undefined;
|
|
145
|
-
anisotropic?: number | undefined;
|
|
146
|
-
flipY?: boolean | undefined;
|
|
147
|
-
premultiplyAlpha?: boolean | undefined;
|
|
148
|
-
keepImageSource?: boolean | undefined;
|
|
149
|
-
format: number | THREE.PixelFormat;
|
|
150
|
-
internalFormat?: number | undefined;
|
|
151
|
-
type: number | THREE.TextureDataType;
|
|
152
|
-
} | {
|
|
153
|
-
minFilter: THREE.TextureFilter;
|
|
154
|
-
magFilter: THREE.TextureFilter;
|
|
155
|
-
wrapS: THREE.Wrapping;
|
|
156
|
-
wrapT: THREE.Wrapping;
|
|
157
|
-
sourceType?: TextureSourceType.none | undefined;
|
|
158
|
-
target: number;
|
|
159
|
-
sourceFrom?: import("@galacean/effects-core").TextureFactorySourceFrom | undefined;
|
|
160
|
-
name?: string | undefined;
|
|
161
|
-
anisotropic?: number | undefined;
|
|
162
|
-
flipY?: boolean | undefined;
|
|
163
|
-
premultiplyAlpha?: boolean | undefined;
|
|
164
|
-
keepImageSource?: boolean | undefined;
|
|
165
|
-
format: number | THREE.PixelFormat;
|
|
166
|
-
internalFormat?: number | undefined;
|
|
167
|
-
type: number | THREE.TextureDataType;
|
|
168
|
-
} | {
|
|
169
|
-
minFilter: THREE.TextureFilter;
|
|
170
|
-
magFilter: THREE.TextureFilter;
|
|
171
|
-
wrapS: THREE.Wrapping;
|
|
172
|
-
wrapT: THREE.Wrapping;
|
|
173
|
-
sourceType: TextureSourceType.data | TextureSourceType.image;
|
|
174
|
-
target: 34067;
|
|
175
|
-
cube: import("@galacean/effects-core").TextureSourceCubeData;
|
|
176
|
-
sourceFrom?: import("@galacean/effects-core").TextureFactorySourceFrom | undefined;
|
|
177
|
-
name?: string | undefined;
|
|
178
|
-
anisotropic?: number | undefined;
|
|
179
|
-
flipY?: boolean | undefined;
|
|
180
|
-
premultiplyAlpha?: boolean | undefined;
|
|
181
|
-
keepImageSource?: boolean | undefined;
|
|
182
|
-
format: number | THREE.PixelFormat;
|
|
183
|
-
internalFormat?: number | undefined;
|
|
184
|
-
type: number | THREE.TextureDataType;
|
|
185
|
-
} | {
|
|
186
|
-
minFilter: THREE.TextureFilter;
|
|
187
|
-
magFilter: THREE.TextureFilter;
|
|
188
|
-
wrapS: THREE.Wrapping;
|
|
189
|
-
wrapT: THREE.Wrapping;
|
|
190
|
-
sourceType?: TextureSourceType.mipmaps | undefined;
|
|
191
|
-
mipmaps: import("@galacean/effects-core").TextureSourceCubeData[];
|
|
192
|
-
target: 34067;
|
|
193
|
-
sourceFrom?: import("@galacean/effects-core").TextureFactorySourceFrom | undefined;
|
|
194
|
-
name?: string | undefined;
|
|
195
|
-
anisotropic?: number | undefined;
|
|
196
|
-
flipY?: boolean | undefined;
|
|
197
|
-
premultiplyAlpha?: boolean | undefined;
|
|
198
|
-
keepImageSource?: boolean | undefined;
|
|
199
|
-
format: number | THREE.PixelFormat;
|
|
200
|
-
internalFormat?: number | undefined;
|
|
201
|
-
type: number | THREE.TextureDataType;
|
|
202
|
-
};
|
|
40
|
+
assembleOptions(options: TextureSourceOptions): TextureSourceOptions;
|
|
203
41
|
/**
|
|
204
42
|
* 释放纹理占用的内存
|
|
205
43
|
*/
|
|
206
44
|
dispose(): void;
|
|
45
|
+
/**
|
|
46
|
+
* 通过图层设置创建贴图
|
|
47
|
+
* @param data - 图层设置
|
|
48
|
+
*/
|
|
49
|
+
fromData(data: any): void;
|
|
207
50
|
private createTextureByType;
|
|
208
51
|
}
|
package/package.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@galacean/effects-threejs",
|
|
3
|
-
"version": "0.0.0-experimental-
|
|
3
|
+
"version": "0.0.0-experimental-20250807",
|
|
4
4
|
"description": "Galacean Effects runtime threejs plugin for the web",
|
|
5
5
|
"module": "./dist/index.mjs",
|
|
6
6
|
"main": "./dist/index.js",
|
|
7
|
-
"
|
|
7
|
+
"browser": "./dist/index.min.js",
|
|
8
8
|
"types": "./dist/index.d.ts",
|
|
9
9
|
"files": [
|
|
10
10
|
"dist"
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
"registry": "https://registry.npmjs.org"
|
|
44
44
|
},
|
|
45
45
|
"dependencies": {
|
|
46
|
-
"@galacean/effects-core": "0.0.0-experimental-
|
|
46
|
+
"@galacean/effects-core": "0.0.0-experimental-20250807"
|
|
47
47
|
},
|
|
48
48
|
"devDependencies": {
|
|
49
49
|
"three": "^0.149.0",
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
"prebuild": "pnpm clean",
|
|
54
54
|
"build": "pnpm build:declaration && pnpm build:module",
|
|
55
55
|
"build:module": "rollup -c",
|
|
56
|
-
"build:declaration": "tsc -d --
|
|
57
|
-
"clean": "rimraf dist && rimraf
|
|
56
|
+
"build:declaration": "tsc -d --emitDeclarationOnly",
|
|
57
|
+
"clean": "rimraf dist && rimraf \"*+(.tsbuildinfo)\""
|
|
58
58
|
}
|
|
59
59
|
}
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
import type { Mesh, RenderPass, Texture, RenderFrameOptions } from '@galacean/effects-core';
|
|
2
|
-
import { RenderFrame } from '@galacean/effects-core';
|
|
3
|
-
import * as THREE from 'three';
|
|
4
|
-
/**
|
|
5
|
-
* runtime 中对渲染中的一帧的流程管理对象
|
|
6
|
-
* THREE 对此抽象类的实现
|
|
7
|
-
*/
|
|
8
|
-
export declare class ThreeRenderFrame extends RenderFrame {
|
|
9
|
-
group: THREE.Group;
|
|
10
|
-
threeCamera: THREE.Camera | undefined;
|
|
11
|
-
constructor(options: RenderFrameOptions);
|
|
12
|
-
/**
|
|
13
|
-
* 设置 pass 数组
|
|
14
|
-
*
|
|
15
|
-
* @param passes - pass 数组
|
|
16
|
-
*/
|
|
17
|
-
setRenderPasses(passes: RenderPass[]): void;
|
|
18
|
-
/**
|
|
19
|
-
* 添加 render pass
|
|
20
|
-
*
|
|
21
|
-
* @param pass - render pass 对象
|
|
22
|
-
*/
|
|
23
|
-
addRenderPass(pass: RenderPass): void;
|
|
24
|
-
/**
|
|
25
|
-
* 创建资源(滤镜元素会用到)
|
|
26
|
-
*/
|
|
27
|
-
createResource(): void;
|
|
28
|
-
/**
|
|
29
|
-
* 创建默认 mesh(滤镜元素会用到)
|
|
30
|
-
*
|
|
31
|
-
* @param semantics - mesh 创建参数
|
|
32
|
-
*/
|
|
33
|
-
createCopyMesh(semantics?: {
|
|
34
|
-
tex?: string;
|
|
35
|
-
size?: string;
|
|
36
|
-
blend?: boolean;
|
|
37
|
-
depthTexture?: Texture;
|
|
38
|
-
}): Mesh;
|
|
39
|
-
/**
|
|
40
|
-
* 添加 mesh 到默认 render pass 中
|
|
41
|
-
*
|
|
42
|
-
* @param mesh - mesh 对象
|
|
43
|
-
*/
|
|
44
|
-
addMeshToDefaultRenderPass(mesh: Mesh): void;
|
|
45
|
-
/**
|
|
46
|
-
* 从默认 render pass 删除 mesh
|
|
47
|
-
*
|
|
48
|
-
* @param mesh - mesh 对象
|
|
49
|
-
*/
|
|
50
|
-
removeMeshFromDefaultRenderPass(mesh: Mesh): void;
|
|
51
|
-
updateMatrix(): void;
|
|
52
|
-
updateUniform(): void;
|
|
53
|
-
/**
|
|
54
|
-
* 主要用来做 group 和 composition 的清理
|
|
55
|
-
*/
|
|
56
|
-
dispose(): void;
|
|
57
|
-
}
|