게임 만들기: GameMaker 빠른 시작 가이드
환영합니다! 이 빠른 시작 가이드는 GameMaker의 가장 중요한 측면을 익히고, 가능한 한 빨리 게임을 만들 수 있도록 기본 사항을 보여줍니다. 이 가이드는 필수 IDE 기능을 다루고, GML 코드 또는 GML 비주얼을 사용하여 제품을 최대한 활용할 수 있도록 프로그래밍에 대한 간단한 소개를 제공합니다.
GameMaker 워크플로우
GameMaker를 사용하여 게임을 만드는 것은 개념적으로 간단하고 직관적인 과정입니다. 다음과 같은 일반적인 단계를 따릅니다:
- 이미지 자산(스프라이트, 타일셋, 글꼴)을 생성하고 자산 브라우저에 추가합니다.
- 게임에서 사용할 객체 자산을 생성하고 필요한 이미지 자산을 할당합니다.
- 이러한 객체가 이벤트에 반응하여 동작하도록 프로그래밍합니다.
- 이러한 객체의 인스턴스를 방에 추가하여 지시 사항을 수행하게 합니다.
위의 각 항목에 대한 세부 사항은 다음 페이지에서 다루겠지만, 게임을 만들기 위해 필요한 일반적인 흐름은 이렇습니다. 게임의 주요 "구성 요소"는 항상 스프라이트, 객체 및 방이지만, 소리, 시퀀스 등과 같은 추가 기능이나 행동을 추가할 수 있는 여러 보조 자산도 사용할 수 있습니다.
게임 루프
이제 위의 구성 요소를 게임으로 변환하는 방법을 간단히 설명하겠습니다. 기본적으로 모든 것은 게임 루프에서 발생하며, 이 루프의 속도는 초당 프레임 수(FPS)로 측정됩니다. GameMaker에서 "프레임"은 스텝(Step)이라고 불립니다. 기본 FPS는 60으로, 1초가 지날 때마다 GameMaker는 게임 루프를 60번 실행하며, 각 스텝(루프/프레임)에서 여러 이벤트가 발생하고 게임이 진행됩니다.
예를 들어, 게임 방에서 캐릭터를 이동시키고 싶다고 가정해 보겠습니다. 캐릭터를 위한 스프라이트를 생성한 후, 객체를 만들고 그 객체에 스프라이트를 할당합니다. 그런 다음 객체에 스텝 이벤트(Step Event)를 추가합니다. 이 이벤트에서 객체가 오른쪽으로 2픽셀 이동하도록 지시합니다. 그런 다음 게임 방에 해당 객체의 인스턴스를 배치하고 게임을 실행하면, 인스턴스는 매 스텝마다 오른쪽으로 2픽셀씩 이동하게 됩니다. 즉, 1초 동안 인스턴스는 120픽셀 오른쪽으로 이동합니다.
위의 예에서 객체가 오른쪽으로 이동하도록 지시하는 방법은 무엇일까요? 이는 GML 비주얼 또는 GML 코드를 사용하여 작성한 프로그램을 통해 이루어집니다. 어떤 것을 사용할지는 여러분의 작업 방식에 따라 다르지만, 이를 통해 게임을 프로그래밍하게 됩니다.
활용 예제
스프라이트 생성
// 스프라이트 생성 코드 예제
sprite_index = spr_player; // 플레이어 스프라이트 설정
객체 생성
// 객체 생성 코드 예제
instance_create_layer(x, y, "Instances", obj_player); // 플레이어 객체 생성
이동 프로그래밍
// 이동 코드 예제
if (keyboard_check(vk_right)) {
x += 2; // 오른쪽으로 2픽셀 이동
}
점수 시스템
// 점수 증가 코드 예제
score += 10; // 점수 10점 증가
단계 | 설명 |
---|---|
1 | 스프라이트 생성 및 추가 |
2 | 객체 생성 및 이미지 할당 |
3 | 이벤트 프로그래밍 |
4 | 방에 인스턴스 추가 |