본문 바로가기
GameMaker강좌[GMS2]/DnD강좌-코딩

[게임메이커 강좌-DnD][GMS2] 시퀸스-1 : 드래그 앤 드롭

by 타락카얀 2021. 10. 15.
728x90

 

 

 

 

 

◈ 드래그 앤 드롭 시퀸스

 

 

이번 강좌에서는 시퀸스 기능에 대해 알아봅시다.

 

(▲ 시퀸스 사용)

 

시퀸스는 게임에 사용할 수 있는 애니메이션 장면을 구성할 수 있는 기능입니다.

일반적으로 타이틀 화면이나 또는 특정 애니메이션으로 구성할 수 있는 장면들을 만들 수 있습니다.

 

시퀸스는 기본적으로 시퀸스 리소스를 추가하여 편집하면 됩니다.

 

(▲ 시퀸스 편집기)

 

여기에서 편집기의 우측하단의 (+) 버튼을 누르면 시퀸스에 사용할 수 있는 리소스 에셋을 선택할 수 있어요.

선택할 수 있는 리소스는 스프라이트, 사운드, 그리고 오브젝트이며 이 리소스들을 적절하게 배치하여 장면을

구성하면 됩니다.

 

(▲ 시퀸스 편집기 주요 기능)

 

편집기의 트랙 판넬에서 리소스를 선택하면 캔버스에서 해당 리소스의 위치를 변경하거나, 확대/축소, 회전과 같이

간단하게 변형을 줄 수 있습니다.

 

(▲ 리소스 변형)

 

키 프레임을 삽입할 때는 <+> 버튼을 클릭합니다.

<○> 버튼을 활성화하면, 리소스 변형을 줄 때, 자동으로 키 프레임을 추가할 수 있습니다.

키 프레임이 있는 곳에서 <-> 버튼을 클릭하면 해당 키프레임을 삭제하게 됩니다.

 

시퀸스의 캔버스 크기는 아래의 버튼을 클릭하면 설정할 수 있습니다.

 

(▲ 시퀸스 캔버스 설정)

 

기본적으로 시퀸스의 중심점(Origin_x, Origin_y)은 캔버스의 가운데 위치입니다.

이 중심점은 스프라이트 이미지의 중심점과 같이 룸에 배치할 때 영향을 주게 됩니다.

 

(▲ 마우스 오른쪽 버튼 메뉴)

 

시퀸스의 애니메이션은 애니메이션 재생을 반복 재생할 것인지를 옵션에서 지정할 수 있어요.

 

(▲ 반복 재생 옵션-반복재생 버튼이 눌러져 있으면 시퀸스를 반복 재생)

 

게임메이커에서 시퀸스는 오브젝트 리소스는 아니지만, 특별한 객체로 처리됩니다.

오브젝트처럼 시퀸스만의 이벤트를 구성할 수 있고, 프레임마다 장면을 다양하게 연출 할 수도 있습니다.

시퀸스가 실행하는 중에도 오브젝트는 별도로 작동하기 때문에 오브젝트를 활용하면 좀 더 특별한 이벤트를

구성할 수 있습니다.

 

 

다음은 지금껏 만든 시퀸스를 게임에 적용하는 방법에 대해 알아봅시다.

 

시퀸스는 아래 액션으로 게임에 적용할 수 있습니다.

 

(▲ 시퀸스 액션)

 

먼저 시퀸스를 게임에 삽입하려면 룸에 에셋레이어가 추가되어 있어야 합니다.

 

(▲ 에셋 레이어)

 

시퀸스를 룸에 생성하려면, [Create Sequence] 액션을 사용합니다.

 

(▲ 시퀸스 액션)

 

Sequence 에 생성할 시퀸스를 지정하고, 생성할 위치를 정합니다.

생성할 시퀸스의 위치는 시퀸스의 중심점을 고려해야합니다.

시퀸스의 중심점이 보통 가운데로 설정되므로 생성할 때도 화면 가운데에 표시하도록 생성하는 것이 좋습니다.

예를 들어, 시퀸스의 크기가 800 X 600 이고, 중심이 (0,0) 이면, 룸에는 (400,300) 위치에 생성하면 됩니다.

 

Layer 에는 룸에 추가한 레이어의 이름을 지정해요.

그리고 마지막으로 생성한 시퀸스의 ID를 Target 변수에 할당하면 됩니다.

ID가 저장된 변수로 시퀸스를 제어할 때 사용할 수 있습니다.

 

 

[Destroy Sequence] 액션은 생성된 시퀸스를 룸에서 파기할 때 사용합니다.

시퀸스 자체에서는 제거 기능이 없기 때문에 룸에서 제거할 때는 이 기능으로 제거해야 합니다.

 

 

아래 액션은 시퀸스의 위치를 변경할 수 있습니다.

 

(▲ 시퀸스 액션)

 

[Get Sequence Position] 액션은 시퀸스의 현재 위치를 얻을 수 있습니다.

그리고 [Set Sequence Position] 액션은 시퀸스의 위치를 변경할 수 있습니다.

 

아래 액션은 시퀸스의 재생을 정지 또는 다시 재생시킬 수 있습니다.

 

(▲ 시퀸스 액션)

 

[Pause Sequence] 액션은 시퀸스의 재생을 멈추게합니다.

[Play Sequence] 액션은 재생을 멈춘 시퀸스를 다시 재개합니다.

 

(▲ 시퀸스 액션)

 

[If Sequence Exists] 액션은 시퀸스가 룸에 있는 지를 확인할 수 있어요.

지정한 시퀸스가 룸에 있다면 true (1) 을 반환하고, 룸에 없다면 false (0)을 반환합니다.

 

(▲ 시퀸스 액션)

 

[Get Sequence Length] 액션은 지정한 시퀸스의 총 프레임을 반환합니다.

[Get Sequence Head] 액션은 재생 중인 현재 프레임을 얻을 수 있고, [Set Sequence Head] 액션으로

재생 위치를 변경할 수 있어요.

 

 

 

 

 

300x250

댓글