@galacean/effects-core 2.3.2 → 2.4.0-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.
- package/dist/components/base-render-component.d.ts +20 -25
- package/dist/components/shape-component.d.ts +4 -1
- package/dist/composition-source-manager.d.ts +0 -4
- package/dist/engine.d.ts +5 -0
- package/dist/fallback/migration.d.ts +4 -0
- package/dist/index.js +17466 -17355
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +17455 -17354
- package/dist/index.mjs.map +1 -1
- package/dist/material/index.d.ts +1 -0
- package/dist/material/mask-ref-manager.d.ts +15 -0
- package/dist/material/types.d.ts +32 -0
- package/dist/material/utils.d.ts +2 -1
- package/dist/plugins/index.d.ts +6 -0
- package/dist/plugins/particle/particle-system.d.ts +18 -4
- package/dist/plugins/sprite/sprite-item.d.ts +5 -5
- package/dist/plugins/text/text-item.d.ts +5 -6
- package/package.json +2 -2
|
@@ -1,21 +1,22 @@
|
|
|
1
|
+
import { Color } from '@galacean/effects-math/es/core/color';
|
|
1
2
|
import * as spec from '@galacean/effects-specification';
|
|
2
|
-
import { Matrix4 } from '@galacean/effects-math/es/core/matrix4';
|
|
3
|
-
import { RendererComponent } from './renderer-component';
|
|
4
|
-
import { Texture } from '../texture';
|
|
5
|
-
import type { GeometryDrawMode, Renderer } from '../render';
|
|
6
|
-
import { Geometry } from '../render';
|
|
7
3
|
import type { Engine } from '../engine';
|
|
4
|
+
import type { Maskable, MaterialProps } from '../material';
|
|
5
|
+
import { MaskMode, Material, MaskProcessor } from '../material';
|
|
8
6
|
import type { BoundingBoxTriangle, HitTestTriangleParams } from '../plugins';
|
|
9
|
-
import type {
|
|
10
|
-
import {
|
|
7
|
+
import type { GeometryDrawMode, Renderer } from '../render';
|
|
8
|
+
import { Geometry } from '../render';
|
|
11
9
|
import type { GeometryFromShape } from '../shape';
|
|
10
|
+
import { Texture } from '../texture';
|
|
11
|
+
import { RendererComponent } from './renderer-component';
|
|
12
12
|
/**
|
|
13
13
|
* 图层元素渲染属性, 经过处理后的 spec.SpriteContent.renderer
|
|
14
14
|
*/
|
|
15
|
-
export interface ItemRenderer extends Required<Omit<spec.RendererOptions, 'texture' | 'shape' | 'anchor' | 'particleOrigin'>> {
|
|
15
|
+
export interface ItemRenderer extends Required<Omit<spec.RendererOptions, 'texture' | 'shape' | 'anchor' | 'particleOrigin' | 'mask'>> {
|
|
16
16
|
order: number;
|
|
17
|
-
mask: number;
|
|
18
17
|
texture: Texture;
|
|
18
|
+
mask: number;
|
|
19
|
+
maskMode: MaskMode;
|
|
19
20
|
shape?: GeometryFromShape;
|
|
20
21
|
anchor?: spec.vec2;
|
|
21
22
|
particleOrigin?: spec.ParticleOrigin;
|
|
@@ -36,26 +37,17 @@ export interface ItemRenderInfo {
|
|
|
36
37
|
/**
|
|
37
38
|
* @since 2.1.0
|
|
38
39
|
*/
|
|
39
|
-
export declare class BaseRenderComponent extends RendererComponent {
|
|
40
|
+
export declare class BaseRenderComponent extends RendererComponent implements Maskable {
|
|
40
41
|
interaction?: {
|
|
41
42
|
behavior: spec.InteractBehavior;
|
|
42
43
|
};
|
|
43
|
-
cachePrefix: string;
|
|
44
|
-
geoData: {
|
|
45
|
-
atlasOffset: number[] | spec.TypedArray;
|
|
46
|
-
index: number[] | spec.TypedArray;
|
|
47
|
-
};
|
|
48
|
-
anchor?: spec.vec2;
|
|
49
44
|
renderer: ItemRenderer;
|
|
50
|
-
|
|
51
|
-
color: spec.vec4;
|
|
52
|
-
worldMatrix: Matrix4;
|
|
45
|
+
color: Color;
|
|
53
46
|
geometry: Geometry;
|
|
47
|
+
readonly maskManager: MaskProcessor;
|
|
54
48
|
protected renderInfo: ItemRenderInfo;
|
|
55
|
-
protected readonly wireframe?: boolean;
|
|
56
49
|
protected preMultiAlpha: number;
|
|
57
50
|
protected visible: boolean;
|
|
58
|
-
protected isManualTimeSet: boolean;
|
|
59
51
|
protected frameAnimationTime: number;
|
|
60
52
|
/**
|
|
61
53
|
*
|
|
@@ -71,6 +63,13 @@ export declare class BaseRenderComponent extends RendererComponent {
|
|
|
71
63
|
* 获取当前 Mesh 的可见性。
|
|
72
64
|
*/
|
|
73
65
|
getVisible(): boolean;
|
|
66
|
+
/**
|
|
67
|
+
* 设置当前图层的颜色
|
|
68
|
+
* > Tips: 透明度也属于颜色的一部分,当有透明度/颜色 K 帧变化时,该 API 会失效
|
|
69
|
+
* @since 2.4.0
|
|
70
|
+
* @param color - 颜色值
|
|
71
|
+
*/
|
|
72
|
+
setColor(color: Color): void;
|
|
74
73
|
/**
|
|
75
74
|
* 设置当前图层的颜色
|
|
76
75
|
* > Tips: 透明度也属于颜色的一部分,当有透明度/颜色 K 帧变化时,该 API 会失效
|
|
@@ -93,10 +92,6 @@ export declare class BaseRenderComponent extends RendererComponent {
|
|
|
93
92
|
render(renderer: Renderer): void;
|
|
94
93
|
onStart(): void;
|
|
95
94
|
onDestroy(): void;
|
|
96
|
-
protected getItemInitData(): {
|
|
97
|
-
atlasOffset: spec.TypedArray | number[];
|
|
98
|
-
index: number[];
|
|
99
|
-
};
|
|
100
95
|
protected setItem(): void;
|
|
101
96
|
protected getItemGeometryData(): {
|
|
102
97
|
index: number[];
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import * as spec from '@galacean/effects-specification';
|
|
2
2
|
import type { Engine } from '../engine';
|
|
3
|
+
import type { Maskable } from '../material';
|
|
4
|
+
import { MaskProcessor } from '../material';
|
|
3
5
|
import { MeshComponent } from './mesh-component';
|
|
4
6
|
interface ShapeAttribute {
|
|
5
7
|
/**
|
|
@@ -90,7 +92,7 @@ export interface PolygonAttribute extends ShapeAttribute {
|
|
|
90
92
|
* 图形组件
|
|
91
93
|
* @since 2.1.0
|
|
92
94
|
*/
|
|
93
|
-
export declare class ShapeComponent extends MeshComponent {
|
|
95
|
+
export declare class ShapeComponent extends MeshComponent implements Maskable {
|
|
94
96
|
private hasStroke;
|
|
95
97
|
private hasFill;
|
|
96
98
|
private shapeDirty;
|
|
@@ -100,6 +102,7 @@ export declare class ShapeComponent extends MeshComponent {
|
|
|
100
102
|
private shapeAttribute;
|
|
101
103
|
private vert;
|
|
102
104
|
private frag;
|
|
105
|
+
readonly maskManager: MaskProcessor;
|
|
103
106
|
get shape(): ShapeAttribute;
|
|
104
107
|
/**
|
|
105
108
|
*
|
package/dist/engine.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ import type { Database, SceneData } from './asset-loader';
|
|
|
3
3
|
import { AssetLoader } from './asset-loader';
|
|
4
4
|
import type { EffectsObject } from './effects-object';
|
|
5
5
|
import type { Material } from './material';
|
|
6
|
+
import { MaskRefManager } from './material';
|
|
6
7
|
import type { GPUCapability, Geometry, Mesh, RenderPass, Renderer, ShaderLibrary } from './render';
|
|
7
8
|
import type { Scene } from './scene';
|
|
8
9
|
import type { Texture } from './texture';
|
|
@@ -29,6 +30,10 @@ export declare class Engine implements Disposable {
|
|
|
29
30
|
* 渲染过程中错误队列
|
|
30
31
|
*/
|
|
31
32
|
renderErrors: Set<Error>;
|
|
33
|
+
/**
|
|
34
|
+
* maskRef 值分配
|
|
35
|
+
*/
|
|
36
|
+
maskRefManager: MaskRefManager;
|
|
32
37
|
protected destroyed: boolean;
|
|
33
38
|
protected textures: Texture[];
|
|
34
39
|
protected materials: Material[];
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import * as spec from '@galacean/effects-specification';
|
|
1
2
|
import type { BaseContent, BinaryFile, JSONScene, JSONSceneLegacy, SpineResource, SpineContent } from '@galacean/effects-specification';
|
|
2
3
|
/**
|
|
3
4
|
* 2.1 以下版本数据适配(mars-player@2.4.0 及以上版本支持 2.1 以下数据的适配)
|
|
@@ -12,6 +13,9 @@ export declare function version22Migration(json: JSONSceneLegacy): JSONSceneLega
|
|
|
12
13
|
* - 富文本插件名称的适配
|
|
13
14
|
*/
|
|
14
15
|
export declare function version31Migration(json: JSONScene): JSONScene;
|
|
16
|
+
export declare function version32Migration(json: JSONScene): JSONScene;
|
|
17
|
+
export declare function processContent(composition: spec.CompositionData): void;
|
|
18
|
+
export declare function processMask(renderContent: any): void;
|
|
15
19
|
/**
|
|
16
20
|
* 3.0 以下版本数据适配(runtime 2.0及以上版本支持)
|
|
17
21
|
*/
|