@galacean/effects-core 2.0.3 → 2.1.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.
@@ -27,10 +27,10 @@ export declare class CompositionComponent extends Behaviour {
27
27
  private timelineAsset;
28
28
  private timelinePlayable;
29
29
  private graph;
30
- start(): void;
30
+ onStart(): void;
31
31
  setReusable(value: boolean): void;
32
32
  getReusable(): boolean;
33
- update(dt: number): void;
33
+ onUpdate(dt: number): void;
34
34
  createContent(): void;
35
35
  onDestroy(): void;
36
36
  hitTest(ray: Ray, x: number, y: number, regions: Region[], force?: boolean, options?: CompositionHitTestOptions): Region[];
@@ -9,22 +9,14 @@ export declare abstract class Component extends EffectsObject {
9
9
  * 附加到的 VFXItem 对象
10
10
  */
11
11
  item: VFXItem;
12
+ isAwakeCalled: boolean;
13
+ isStartCalled: boolean;
14
+ isEnableCalled: boolean;
15
+ private _enabled;
12
16
  /**
13
17
  * 附加到的 VFXItem 对象 Transform 组件
14
18
  */
15
19
  get transform(): import("@galacean/effects-core").Transform;
16
- onAttached(): void;
17
- onDestroy(): void;
18
- fromData(data: any): void;
19
- dispose(): void;
20
- }
21
- /**
22
- * @since 2.0.0
23
- */
24
- export declare abstract class Behaviour extends Component {
25
- isAwakeCalled: boolean;
26
- isStartCalled: boolean;
27
- private _enabled;
28
20
  /**
29
21
  * 组件是否可以更新,true 更新,false 不更新
30
22
  */
@@ -34,23 +26,40 @@ export declare abstract class Behaviour extends Component {
34
26
  /**
35
27
  * 生命周期函数,初始化后调用,生命周期内只调用一次
36
28
  */
37
- awake(): void;
29
+ onAwake(): void;
38
30
  /**
39
- * 在每次设置 enabled true 时触发
31
+ * enabled 变为 true 时触发
40
32
  */
41
33
  onEnable(): void;
34
+ /**
35
+ * 在 enabled 变为 false 时触发
36
+ */
37
+ onDisable(): void;
42
38
  /**
43
39
  * 生命周期函数,在第一次 update 前调用,生命周期内只调用一次
44
40
  */
45
- start(): void;
41
+ onStart(): void;
46
42
  /**
47
43
  * 生命周期函数,每帧调用一次
48
44
  */
49
- update(dt: number): void;
45
+ onUpdate(dt: number): void;
50
46
  /**
51
47
  * 生命周期函数,每帧调用一次,在 update 之后调用
52
48
  */
53
- lateUpdate(dt: number): void;
54
- onAttached(): void;
49
+ onLateUpdate(dt: number): void;
50
+ /**
51
+ * 生命周期函数,在组件销毁时调用
52
+ */
53
+ onDestroy(): void;
54
+ setVFXItem(item: VFXItem): void;
55
+ fromData(data: any): void;
56
+ dispose(): void;
57
+ private start;
58
+ }
59
+ /**
60
+ * @since 2.0.0
61
+ */
62
+ export declare abstract class Behaviour extends Component {
63
+ setVFXItem(item: VFXItem): void;
55
64
  dispose(): void;
56
65
  }
@@ -22,7 +22,7 @@ export declare class EffectComponent extends RendererComponent {
22
22
  private destroyed;
23
23
  private hitTestGeometry;
24
24
  constructor(engine: Engine);
25
- start(): void;
25
+ onStart(): void;
26
26
  render(renderer: Renderer): void;
27
27
  /**
28
28
  * 设置当前 Mesh 的材质
@@ -11,5 +11,5 @@ export declare class PostProcessVolume extends Behaviour {
11
11
  vignetteSmoothness: number;
12
12
  vignetteRoundness: number;
13
13
  useToneMapping: boolean;
14
- start(): void;
14
+ onStart(): void;
15
15
  }
@@ -1,31 +1,20 @@
1
1
  import type { Material } from '../material';
2
2
  import type { Renderer } from '../render';
3
+ import type { VFXItem } from '../vfx-item';
3
4
  import { Component } from './component';
4
5
  /**
5
6
  * 所有渲染组件的基类
6
7
  * @since 2.0.0
7
8
  */
8
9
  export declare class RendererComponent extends Component {
9
- isStartCalled: boolean;
10
10
  materials: Material[];
11
11
  protected _priority: number;
12
- protected _enabled: boolean;
13
12
  get priority(): number;
14
13
  set priority(value: number);
15
- get enabled(): boolean;
16
- set enabled(value: boolean);
17
- /**
18
- * 组件是否可以更新,true 更新,false 不更新
19
- */
20
- get isActiveAndEnabled(): boolean;
21
14
  get material(): Material;
22
15
  set material(material: Material);
23
- onEnable(): void;
24
- start(): void;
25
- update(dt: number): void;
26
- lateUpdate(dt: number): void;
27
16
  render(renderer: Renderer): void;
28
- onAttached(): void;
17
+ setVFXItem(item: VFXItem): void;
29
18
  fromData(data: unknown): void;
30
19
  toData(): void;
31
20
  dispose(): void;
@@ -0,0 +1,26 @@
1
+ import { Component } from '../components/component';
2
+ export declare class SceneTicking {
3
+ update: UpdateTickData;
4
+ lateUpdate: LateUpdateTickData;
5
+ addComponent(obj: Component): void;
6
+ removeComponent(obj: Component): void;
7
+ clear(): void;
8
+ }
9
+ declare class TickData {
10
+ components: Component[];
11
+ ticks: ((dt: number) => void)[];
12
+ constructor();
13
+ tick(dt: number): void;
14
+ tickComponents(components: Component[], dt: number): void;
15
+ addComponent(component: Component): void;
16
+ removeComponent(component: Component): void;
17
+ addTick(method: (dt: number) => void, callee: object): void;
18
+ clear(): void;
19
+ }
20
+ declare class UpdateTickData extends TickData {
21
+ tickComponents(components: Component[], dt: number): void;
22
+ }
23
+ declare class LateUpdateTickData extends TickData {
24
+ tickComponents(components: Component[], dt: number): void;
25
+ }
26
+ export {};
@@ -17,6 +17,7 @@ import { VFXItem } from './vfx-item';
17
17
  import type { CompositionEvent } from './events';
18
18
  import { EventEmitter } from './events';
19
19
  import type { PostProcessVolume } from './components/post-process-volume';
20
+ import { SceneTicking } from './composition/scene-ticking';
20
21
  export interface CompositionStatistic {
21
22
  loadTime: number;
22
23
  loadStart: number;
@@ -60,6 +61,7 @@ export interface CompositionProps {
60
61
  */
61
62
  export declare class Composition extends EventEmitter<CompositionEvent<Composition>> implements Disposable, LostHandler {
62
63
  renderer: Renderer;
64
+ sceneTicking: SceneTicking;
63
65
  /**
64
66
  * 当前帧的渲染数据对象
65
67
  */
@@ -185,6 +187,7 @@ export declare class Composition extends EventEmitter<CompositionEvent<Compositi
185
187
  * @param compositionSourceManager
186
188
  */
187
189
  constructor(props: CompositionProps, scene: Scene);
190
+ initializeSceneTicking(item: VFXItem): void;
188
191
  /**
189
192
  * 所有合成 Item 的根变换
190
193
  */
@@ -297,9 +300,6 @@ export declare class Composition extends EventEmitter<CompositionEvent<Compositi
297
300
  private shouldDispose;
298
301
  private getUpdateTime;
299
302
  private callAwake;
300
- private callStart;
301
- private callUpdate;
302
- private callLateUpdate;
303
303
  /**
304
304
  * 构建父子树,同时保存到 itemCacheMap 中便于查找
305
305
  */