mirror of
https://github.com/unanmed/HumanBreak.git
synced 2025-04-18 17:48:52 +08:00
perf: 在修改不透明度等属性时只需要更新父元素
This commit is contained in:
parent
d2b7a5d430
commit
310e597c58
@ -476,7 +476,8 @@ export abstract class RenderItem<E extends ERenderItemEvent = ERenderItemEvent>
|
|||||||
*/
|
*/
|
||||||
setFilter(filter: string) {
|
setFilter(filter: string) {
|
||||||
this.filter = filter;
|
this.filter = filter;
|
||||||
this.update(this);
|
// 设置滤镜时,不需要更新自身的缓存,直接调用父元素的更新即可
|
||||||
|
this._parent?.update();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -485,7 +486,8 @@ export abstract class RenderItem<E extends ERenderItemEvent = ERenderItemEvent>
|
|||||||
*/
|
*/
|
||||||
setComposite(composite: GlobalCompositeOperation) {
|
setComposite(composite: GlobalCompositeOperation) {
|
||||||
this.composite = composite;
|
this.composite = composite;
|
||||||
this.update();
|
// 设置混合模式时,不需要更新自身的缓存,直接调用父元素的更新即可
|
||||||
|
this._parent?.update();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -494,7 +496,8 @@ export abstract class RenderItem<E extends ERenderItemEvent = ERenderItemEvent>
|
|||||||
*/
|
*/
|
||||||
setAlpha(alpha: number) {
|
setAlpha(alpha: number) {
|
||||||
this.alpha = alpha;
|
this.alpha = alpha;
|
||||||
this.update();
|
// 设置不透明度时,不需要更新自身的缓存,直接调用父元素的更新即可
|
||||||
|
this._parent?.update();
|
||||||
}
|
}
|
||||||
|
|
||||||
setHD(hd: boolean): void {
|
setHD(hd: boolean): void {
|
||||||
@ -521,7 +524,8 @@ export abstract class RenderItem<E extends ERenderItemEvent = ERenderItemEvent>
|
|||||||
setAnchor(x: number, y: number): void {
|
setAnchor(x: number, y: number): void {
|
||||||
this.anchorX = x;
|
this.anchorX = x;
|
||||||
this.anchorY = y;
|
this.anchorY = y;
|
||||||
this.update();
|
// 设置锚点时,不需要更新自身的缓存,直接调用父元素的更新即可
|
||||||
|
this._parent?.update();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -609,7 +613,8 @@ export abstract class RenderItem<E extends ERenderItemEvent = ERenderItemEvent>
|
|||||||
}
|
}
|
||||||
|
|
||||||
updateTransform() {
|
updateTransform() {
|
||||||
this.update();
|
// 更新变换矩阵时,不需要更新自身的缓存,直接调用父元素的更新即可
|
||||||
|
this._parent?.update();
|
||||||
this.emit('transform', this, this._transform);
|
this.emit('transform', this, this._transform);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user