[Phaser] Depth 변경

[Phaser] Depth 변경 updated_at: 2024-03-21 18:18

Depth 변경

bringToTop

this.children.bringToTop([Object]); // 현재 scene에서 사용
this.scene.bringToTop(); // scene이 여러개 있을 경우 현재 scene을 가장 위로 올림
this.shapes.forEach((shape:any) => {
  this.children.bringToTop(shape);
});

sendToBack

this.children.sendToBack([Object]); // 현재 scene에서 사용
this.scene.sendToBack([Object]); // scene이 여러개 있을 경우 현재 scene을 가장 아래로 내림

swapPosition

두개의 scene이 있을 경우 다른 scene과 position을 swap 한다.

this.scene.swapPosition([other scene key]);
class Background extends Phaser.Scene
{
  constructor ()
  {
    super({ key: 'background', active: true });
  }
}

class Demo extends Phaser.Scene
{
  create ()
  {
    this.scene.swapPosition('background'); // scene 끼리 position을 swap 한다.
  }
}

const config = {
  ..........
  scene: [ Background, Demo ]
};

이렇게 하면 현재 scene 에서 맨 위로 올린다. 특정 위치에 끼워 넣을때...

[Object].depth = this.scene.scene.children.list.length;
평점을 남겨주세요
평점 : 5.0
총 투표수 : 1

질문 및 답글