@galacean/effects-core 2.1.0-alpha.8 → 2.1.0-alpha.9

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,43 +1,11 @@
1
- import { Matrix4 } from '@galacean/effects-math/es/core/matrix4';
2
1
  import type { Engine } from '../engine';
3
- import type { Material, MaterialDestroyOptions } from '../material';
4
- import type { BoundingBoxTriangle, HitTestTriangleParams } from '../plugins';
5
- import type { MeshDestroyOptions, Renderer } from '../render';
6
- import type { Geometry } from '../render';
7
- import { DestroyOptions } from '../utils';
8
- import { RendererComponent } from './renderer-component';
2
+ import { MeshComponent } from './mesh-component';
9
3
  /**
10
4
  * @since 2.0.0
11
5
  */
12
- export declare class EffectComponent extends RendererComponent {
13
- /**
14
- * Mesh 的世界矩阵
15
- */
16
- worldMatrix: Matrix4;
17
- /**
18
- * Mesh 的 Geometry
19
- */
20
- geometry: Geometry;
21
- private triangles;
22
- private destroyed;
23
- private hitTestGeometry;
6
+ export declare class EffectComponent extends MeshComponent {
24
7
  constructor(engine: Engine);
25
8
  onStart(): void;
26
9
  onUpdate(dt: number): void;
27
- render(renderer: Renderer): void;
28
- /**
29
- * 设置当前 Mesh 的材质
30
- * @param material - 要设置的材质
31
- * @param destroy - 可选的材质销毁选项
32
- */
33
- setMaterial(material: Material, destroy?: MaterialDestroyOptions | DestroyOptions.keep): void;
34
- getHitTestParams: (force?: boolean) => HitTestTriangleParams | void;
35
- getBoundingBox(): BoundingBoxTriangle | void;
36
10
  fromData(data: unknown): void;
37
- toData(): void;
38
- /**
39
- * 销毁当前资源
40
- * @param options - 可选的销毁选项
41
- */
42
- dispose(options?: MeshDestroyOptions): void;
43
11
  }
@@ -0,0 +1,18 @@
1
+ import type { BoundingBoxTriangle, HitTestTriangleParams } from '../plugins';
2
+ import { MeshCollider } from '../plugins';
3
+ import type { Geometry } from '../render/geometry';
4
+ import type { Renderer } from '../render/renderer';
5
+ import { RendererComponent } from './renderer-component';
6
+ export declare class MeshComponent extends RendererComponent {
7
+ /**
8
+ * 渲染的 Geometry
9
+ */
10
+ protected geometry: Geometry;
11
+ /**
12
+ * 用于点击测试的碰撞器
13
+ */
14
+ protected meshCollider: MeshCollider;
15
+ render(renderer: Renderer): void;
16
+ getHitTestParams: (force?: boolean) => HitTestTriangleParams | void;
17
+ getBoundingBox(): BoundingBoxTriangle | void;
18
+ }
@@ -1,22 +1,20 @@
1
1
  import type * as spec from '@galacean/effects-specification';
2
2
  import type { Engine } from '../engine';
3
- import type { Renderer } from '../render';
4
- import { RendererComponent } from './renderer-component';
3
+ import { MeshComponent } from './mesh-component';
5
4
  /**
6
5
  * 图形组件
7
6
  * @since 2.1.0
8
7
  */
9
- export declare class ShapeComponent extends RendererComponent {
8
+ export declare class ShapeComponent extends MeshComponent {
10
9
  private path;
11
10
  private curveValues;
12
- private geometry;
13
11
  private data;
14
12
  private animated;
15
13
  private vert;
16
14
  private frag;
17
15
  constructor(engine: Engine);
16
+ onStart(): void;
18
17
  onUpdate(dt: number): void;
19
- render(renderer: Renderer): void;
20
18
  private buildGeometryFromPath;
21
19
  private buildPath;
22
20
  fromData(data: ShapeComponentData): void;