@galacean/effects-core 2.0.0-alpha.7 → 2.0.0-alpha.8

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.
@@ -1,3 +1,4 @@
1
+ import * as spec from '@galacean/effects-specification';
1
2
  import type { EffectsObject } from './effects-object';
2
3
  import type { Engine } from './engine';
3
4
  import type { ShaderMarcos } from './render';
@@ -17,104 +18,26 @@ export declare class AssetLoader {
17
18
  export declare class Database {
18
19
  loadGUID(guid: string): Promise<EffectsObject | undefined>;
19
20
  }
20
- export declare enum DataType {
21
- VFXItemData = "VFXItemData",
22
- EffectComponent = "EffectComponent",
23
- Material = "Material",
24
- Shader = "Shader",
25
- SpriteComponent = "SpriteComponent",
26
- ParticleSystem = "ParticleSystem",
27
- InteractComponent = "InteractComponent",
28
- CameraController = "CameraController",
29
- Geometry = "Geometry",
30
- Texture = "Texture",
31
- TextComponent = "TextComponent",
32
- MeshComponent = "MeshComponent",
33
- SkyboxComponent = "SkyboxComponent",
34
- LightComponent = "LightComponent",
35
- CameraComponent = "CameraComponent",
36
- ModelPluginComponent = "ModelPluginComponent",
37
- TreeComponent = "TreeComponent"
38
- }
39
- export interface DataPath {
40
- id: string;
41
- }
42
- export interface EffectsObjectData {
43
- id: string;
44
- name?: string;
45
- dataType: string;
46
- }
47
- export interface ColorData {
48
- r: number;
49
- g: number;
50
- b: number;
51
- a: number;
52
- }
53
- export interface Vector4Data {
54
- x: number;
55
- y: number;
56
- z: number;
57
- w: number;
58
- }
59
- export interface Vector2Data {
60
- x: number;
61
- y: number;
62
- }
63
- export interface MaterialTextureProperty {
64
- texture: DataPath;
65
- offset: Vector2Data;
66
- scale: Vector2Data;
67
- }
68
- export interface MaterialData extends EffectsObjectData {
69
- shader: DataPath;
70
- blending?: boolean;
71
- zWrite?: boolean;
72
- zTest?: boolean;
73
- ints: Record<string, number>;
74
- floats: Record<string, number>;
75
- vector4s: Record<string, Vector4Data>;
76
- colors: Record<string, ColorData>;
77
- textures: Record<string, MaterialTextureProperty>;
21
+ export interface MaterialData extends spec.MaterialData {
78
22
  /**
79
23
  * shader的宏定义
80
24
  */
81
25
  marcos?: ShaderMarcos;
82
26
  }
83
- export interface GeometryData extends EffectsObjectData {
84
- vertexData: VertexData;
27
+ export interface GeometryData extends spec.EffectsObjectData {
28
+ vertexData: spec.VertexData;
85
29
  indexFormat: number;
86
30
  indexOffset: number;
87
31
  buffer: string;
88
32
  }
89
- export interface VertexData {
90
- vertexCount: number;
91
- channels: VertexChannel[];
92
- }
93
- export interface VertexChannel {
94
- offset: number;
95
- format: number;
96
- dimension: number;
97
- }
98
- export interface ShaderData extends EffectsObjectData {
99
- vertex: string;
100
- fragment: string;
101
- properties?: string;
102
- }
103
- export interface EffectComponentData extends EffectsObjectData {
33
+ export interface EffectComponentData extends spec.EffectsObjectData {
104
34
  _priority: number;
105
- item: DataPath;
106
- materials: DataPath[];
107
- geometry: DataPath;
35
+ item: spec.DataPath;
36
+ materials: spec.DataPath[];
37
+ geometry: spec.DataPath;
108
38
  }
109
39
  export type VFXItemData = VFXItemProps & {
110
- dataType: DataType;
111
- components: DataPath[];
40
+ dataType: spec.DataType;
41
+ components: spec.DataPath[];
112
42
  };
113
- export type SceneData = Record<string, EffectsObjectData>;
114
- export interface EffectsPackageData {
115
- fileSummary: {
116
- guid: string;
117
- assetType: string;
118
- };
119
- exportObjects: EffectsObjectData[];
120
- }
43
+ export type SceneData = Record<string, spec.EffectsObjectData>;
@@ -26,11 +26,6 @@ export interface SceneLoadOptions {
26
26
  * ```
27
27
  */
28
28
  variables?: Record<string, number | string | string[]>;
29
- /**
30
- * 模板图片缩放倍数
31
- * @default 1 如果图片比较糊,可以用 2(但会增大图片内存)
32
- */
33
- templateScale?: number;
34
29
  /**
35
30
  * 是否使用压缩纹理
36
31
  */
@@ -4,7 +4,6 @@ export declare const SEMANTIC_PRE_COLOR_ATTACHMENT_SIZE_0 = "PRE_COLOR_SIZE_0";
4
4
  export declare const SEMANTIC_MAIN_PRE_COLOR_ATTACHMENT_0 = "PRE_MAIN_COLOR_0";
5
5
  export declare const SEMANTIC_MAIN_PRE_COLOR_ATTACHMENT_SIZE_0 = "PRE_MAIN_COLOR_SIZE_0";
6
6
  export declare const PLAYER_OPTIONS_ENV_EDITOR = "editor";
7
- export declare const FILTER_NAME_NONE = "none";
8
7
  export declare const HELP_LINK: {
9
8
  'Filter not imported': string;
10
9
  'Item duration can\'t be less than 0': string;
@@ -1,5 +1,8 @@
1
1
  type SuccessHandler<T> = (data: T) => void;
2
2
  type ErrorHandler = (status: number, responseText: string) => void;
3
+ /**
4
+ *
5
+ */
3
6
  /**
4
7
  * JSON 值,它可以是字符串、数字、布尔值、对象或者 JSON 值的数组。
5
8
  *
@@ -70,4 +73,5 @@ export declare function loadBlob(url: string): Promise<Blob>;
70
73
  * @param url - 视频文件的 URL 或 MediaProvider 对象
71
74
  */
72
75
  export declare function loadVideo(url: string | MediaProvider): Promise<HTMLVideoElement>;
76
+ export declare function loadMedia(url: string | string[], loadFn: (url: string) => Promise<HTMLImageElement | HTMLVideoElement>): Promise<HTMLImageElement | HTMLVideoElement>;
73
77
  export {};
@@ -1,4 +1,4 @@
1
- import type { EffectsObjectData } from './asset-loader';
1
+ import type * as spec from '@galacean/effects-specification';
2
2
  import type { Engine } from './engine';
3
3
  /**
4
4
  * @since 2.0.0
@@ -20,6 +20,6 @@ export declare abstract class EffectsObject {
20
20
  *
21
21
  * @param data - 对象的序列化的数据
22
22
  */
23
- fromData(data: EffectsObjectData): void;
23
+ fromData(data: spec.EffectsObjectData): void;
24
24
  dispose(): void;
25
25
  }
package/dist/engine.d.ts CHANGED
@@ -1,4 +1,5 @@
1
- import type { Database, EffectsObjectData, SceneData } from './asset-loader';
1
+ import * as spec from '@galacean/effects-specification';
2
+ import type { Database, SceneData } from './asset-loader';
2
3
  import { AssetLoader } from './asset-loader';
3
4
  import type { EffectsObject } from './effects-object';
4
5
  import type { Material } from './material';
@@ -30,8 +31,8 @@ export declare class Engine implements Disposable {
30
31
  */
31
32
  static create: (gl: WebGLRenderingContext | WebGL2RenderingContext) => Engine;
32
33
  clearResources(): void;
33
- addEffectsObjectData(data: EffectsObjectData): void;
34
- findEffectsObjectData(uuid: string): EffectsObjectData;
34
+ addEffectsObjectData(data: spec.EffectsObjectData): void;
35
+ findEffectsObjectData(uuid: string): spec.EffectsObjectData;
35
36
  addInstance(effectsObject: EffectsObject): void;
36
37
  getInstance(id: string): EffectsObject;
37
38
  removeInstance(id: string): void;