@galacean/effects-threejs 0.0.1-alpha.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.
@@ -0,0 +1,208 @@
1
+ import type { TextureDataType, TextureSourceOptions } from '@galacean/effects-core';
2
+ import { Texture, TextureSourceType } from '@galacean/effects-core';
3
+ import * as THREE from 'three';
4
+ /**
5
+ * THREE 抽象纹理类
6
+ */
7
+ export declare class ThreeTexture extends Texture {
8
+ /**
9
+ * THREE 纹理对象
10
+ */
11
+ texture: THREE.Texture;
12
+ /**
13
+ * 将 WebGL 纹理过滤器枚举类型映射到 THREE 纹理过滤器枚举类型
14
+ * @param filter - WebGL 纹理过滤器枚举类型
15
+ * @returns THREE 纹理过滤器枚举类型
16
+ */
17
+ static toThreeJsTextureFilter(filter?: GLenum): THREE.TextureFilter;
18
+ /**
19
+ * 将 WebGL 纹理环绕方式枚举类型映射到 THREE 纹理环绕方式枚举类型
20
+ * @param wrap - WebGL 纹理环绕方式枚举类型
21
+ * @returns THREE 纹理环绕方式枚举类型
22
+ */
23
+ static toThreeJsTextureWrap(wrap?: GLenum): THREE.Wrapping;
24
+ /**
25
+ * 构造函数
26
+ * @param data - 纹理数据
27
+ * @param options - 纹理选项
28
+ */
29
+ constructor(data?: TextureDataType, options?: TextureSourceOptions);
30
+ /**
31
+ * 更新纹理数据
32
+ * @param options - 纹理选项
33
+ */
34
+ updateSource(options: TextureSourceOptions): void;
35
+ /**
36
+ * 开始更新视频数据
37
+ *
38
+ */
39
+ startVideo(): Promise<void>;
40
+ /**
41
+ * 组装纹理选项
42
+ * @param options - 纹理选项
43
+ * @returns 组装后的纹理选项
44
+ */
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
+ };
203
+ /**
204
+ * 释放纹理占用的内存
205
+ */
206
+ dispose(): void;
207
+ private createTextureByType;
208
+ }
package/package.json ADDED
@@ -0,0 +1,59 @@
1
+ {
2
+ "name": "@galacean/effects-threejs",
3
+ "version": "0.0.1-alpha.0",
4
+ "description": "Galacean Effects runtime threejs plugin for the web",
5
+ "module": "./dist/index.mjs",
6
+ "main": "./dist/index.js",
7
+ "brower": "./dist/index.min.js",
8
+ "types": "./dist/index.d.ts",
9
+ "files": [
10
+ "dist"
11
+ ],
12
+ "exports": {
13
+ ".": {
14
+ "import": "./dist/index.mjs",
15
+ "require": "./dist/index.js",
16
+ "types": "./dist/index.d.ts"
17
+ }
18
+ },
19
+ "contributors": [
20
+ {
21
+ "name": "燃然"
22
+ },
23
+ {
24
+ "name": "飂兮"
25
+ },
26
+ {
27
+ "name": "十弦"
28
+ },
29
+ {
30
+ "name": "云垣"
31
+ },
32
+ {
33
+ "name": "茂安"
34
+ },
35
+ {
36
+ "name": "意绮"
37
+ }
38
+ ],
39
+ "author": "Ant Group CO., Ltd.",
40
+ "license": "MIT",
41
+ "publishConfig": {
42
+ "access": "public",
43
+ "registry": "https://registry.npmjs.org"
44
+ },
45
+ "dependencies": {
46
+ "@galacean/effects-core": "0.0.1-alpha.0"
47
+ },
48
+ "devDependencies": {
49
+ "three": "^0.149.0",
50
+ "@types/three": "^0.149.0"
51
+ },
52
+ "scripts": {
53
+ "prebuild": "pnpm clean",
54
+ "build": "pnpm build:declaration && pnpm build:module",
55
+ "build:module": "rollup -c",
56
+ "build:declaration": "tsc -d --declarationDir dist --emitDeclarationOnly",
57
+ "clean": "rimraf dist && rimraf '*+(.tsbuildinfo)'"
58
+ }
59
+ }