1. 애니메이션이 들어간 SpriteSheet 샘플을 준비합니다. 없다면 아래 이미지를 다운받아주세요.

    blueman.png

  2. 위 이미지 같이 낱장의 이미지들이 동일한 규격으로 합쳐진 형태의 SpriteSheet 그림의 확장자는 png 파일이어야 합니다.

    sample1.png

<aside> 💡 **스프라이트 시트(sprite sheet)**는 여러개의 작은 그래픽을 정렬하여 구성한 비트맵 이미지 파일입니다.. 게임 개발에서 캐릭터의 연속적인 포즈를 한장의 이미지에 구성하여 2D 애니메이션 제작에 사용됩니다.

</aside>

  1. SpriteSheet를 읽는 API 로는 App.loadSpritesheet 를 사용합니다.
App.loadSpritesheet(fileName: string, frameWidth: integer, frameHeight: integer, anims: array, frameRate: integer): ScriptDynamicResource
  1. player의 속성을 변경하였으므로 player.sendUpdated() 를 써주어야 실제 반영됩니다.

  2. 예시 코드

// 블루맨이라는 변수를 자바스크립트 문법에 맞게 생성
let blueman = null;

// 변수에 SpriteSheet를 읽어 저장
blueman = App.loadSpritesheet('blueman.png', 48, 64, {
    left: [5, 6, 7, 8, 9], // left 라는 이미 정해진 왼쪽 방향으로 걸을 때의 애니메이션 이름
    up: [15, 16, 17, 18, 19], // 그 이름에 쓰일 전체 파일에서의 인덱스 넘버들
    down: [0, 1, 2, 3, 4],
    right: [10, 11, 12, 13, 14],
}, 8); // 1초에 8장으로 한다.

// 플레이어가 입장할 때 바로 블루맨 그림으로 교체해준다.
App.onJoinPlayer.Add(function(player){
	player.sprite = blueman;
  
  // 플레이어 속성이 변경되었으므로 호출해서 실제 반영해준다.
	player.sendUpdated();
})
  1. 활용