디버깅

게임을 만들 때, 특정 시점에서 게임 메커니즘의 세부 사항을 알거나, 게임의 다양한 방법과 아이디어를 테스트하기 위해 특정 키 값을 입력할 수 있는 것이 매우 중요합니다. GameMaker는 다음과 같은 기능을 제공합니다:

  • 기본 디버그 함수: 디버그 모드(또는 Windows 타겟)에서 메시지를 표시하고 입력을 요청하는 기본 디버그 함수입니다. 이 함수들은 입력이 해결될 때까지 게임을 닫힌 루프 상태로 두기 때문에 다른 타겟 모듈로 컴파일할 때는 무시됩니다.
  • 디버그 오버레이: FPS, 로그 및 오디오 창을 볼 수 있는 인게임 오버레이로, 사용자 정의 디버그 뷰를 생성할 수 있습니다. 특정 플랫폼에서 작동할 수 있지만 디버깅 외의 용도로 사용해서는 안 됩니다.

게임을 디버깅하는 방법에 대한 추가 정보는 디버거 섹션에서 확인할 수 있습니다.

기본 디버그 함수

다음 함수들은 게임을 디버깅하는 기본 기능을 제공합니다:

함수 이름 설명
debug_mode 디버그 모드 활성화
debug_event 디버그 이벤트 처리
debug_get_callstack 호출 스택 가져오기
exception_unhandled_handler 처리되지 않은 예외 핸들러
get_integer 정수 입력 받기
get_string 문자열 입력 받기
show_errors 오류 메시지 표시
show_messages 메시지 표시
show_questions 질문 표시
show_debug_messages 디버그 메시지 표시
show_debug_message_ext 확장된 디버그 메시지 표시
show_debug_overlay 디버그 오버레이 표시
code_is_compiled 코드가 컴파일되었는지 확인
fps 초당 프레임 수
fps_real 실제 초당 프레임 수

디버그 오버레이

GameMaker는 디버그 오버레이를 통해 더 고급 디버깅 기능을 제공합니다.

디버그 매크로

GameMaker는 게임 디버깅을 쉽게 할 수 있도록 몇 가지 내장 매크로를 제공합니다:

매크로 이름 설명
GMLINE 스크립트 편집기에서 보여지는 줄 번호
GMFILE 현재 코드 파일의 이름
GMFUNCTION 현재 매크로가 사용되는 가장 안쪽 함수의 이름

위 스크린샷의 디버그 출력은 다음과 같습니다:

gml_GlobalScript_Macros3
show_macros
gml_GlobalScript_Macros10
gml_GlobalScript_Macros

오류 메시지

GameMaker는 게임 코드 작성, 컴파일 또는 실행 중에 표시될 수 있는 긴 오류 메시지 목록을 가지고 있습니다. 이러한 메시지는 특정 오류를 가리키며, 특정 객체나 스크립트 함수 내의 문제를 파악하는 데 도움이 됩니다. 그러나 오류 메시지가 정확히 무엇을 의미하는지 항상 명확하지 않을 수 있으므로, 다음 섹션에서는 가능한 모든 메시지를 나열하고 그 의미를 설명하여 여러분의 작업을 쉽게 만들어 줍니다:

오류 유형 설명
구문 오류 코드의 문법적 오류
컴파일 오류 컴파일 중 발생한 오류
실행 오류 게임 실행 중 발생한 오류

활용 예제

디버깅을 위한 다양한 활용 예제는 다음과 같습니다:

// 디버그 모드 활성화
debug_mode(true);

// 특정 값 입력 받기
var player_health = get_integer("플레이어의 체력을 입력하세요:", 100);

// FPS 출력
show_debug_messages(fps);

// 사용자 정의 디버그 메시지 표시
show_debug_message("게임이 시작되었습니다!");

// 호출 스택 확인
var call_stack = debug_get_callstack();
// 오류 발생 시 예외 처리
try {
    // 코드 실행
} catch (exception) {
    exception_unhandled_handler(exception);
}

// 디버그 오버레이 표시
show_debug_overlay(true);
// 특정 조건에서 오류 메시지 표시
if (player_health < 0) {
    show_errors("플레이어의 체력이 0 이하입니다!");
}

Read more

기술 문서 해설 및 활용 예제

이 문서는 특정 기술에 대한 설명과 활용 방법을 다룹니다. 아래에서 내용을 쉽게 이해할 수 있도록 해설하고, 다양한 활용 및 응용 예제를 추가로 제공합니다. 기술 개요 이 기술은 게임 개발에서 자주 사용되는 기능으로, 특정 작업을 자동화하거나 효율적으로 처리하는 데 도움을 줍니다. 주로 게임의 로직을 구성하거나 사용자 인터페이스를 제어하는 데 사용됩니다. 주요

By 이재협/실장/시스템개발실/PHYSIA

키워드 설명서

이 문서는 특정 키워드에 대한 설명과 사용법을 제공합니다. 문법 (arguments); 인수 인수 이름 유형 설명 argument_name 인수에 대한 설명을 여기에 작성합니다. 반환값 (선택적 설명) 예제 code_example() { // 여기에 코드 예제를 설명합니다. } 코드 예제 설명 위의 코드 예제는 특정 기능을 수행하는 함수의 기본 구조를 보여줍니다. 이 함수는 인수를 받아들이고, 특정

By 이재협/실장/시스템개발실/PHYSIA

GameMaker 환경 설정 및 기능

이 문서에서는 GameMaker의 환경 설정 및 다양한 IDE 기능에 대한 정보를 제공합니다. 다음은 주요 항목들입니다: IDE 환경 설정 IDE(통합 개발 환경) 설정은 GameMaker의 전반적인 사용 경험을 조정하는 데 도움을 줍니다. 여기서 사용자는 개인의 필요에 맞게 다양한 옵션을 설정할 수 있습니다. 주요 설정 항목 설정 항목 설명 테마 IDE의 색상

By 이재협/실장/시스템개발실/PHYSIA

GameMaker IDE 설명서

GameMaker IDE는 게임을 만들고 소프트웨어에서 제공하는 모든 기능을 활용하는 주요 인터페이스입니다. 이 프로그램은 시작 화면부터 게임을 만들기 위해 사용하는 모든 편집기 창까지 포함되며, 매뉴얼과 다양한 튜토리얼에서 IDE라고 언급됩니다. IDE의 구성 요소 다음 섹션에서는 IDE에 대한 정보를 다룹니다: 1. 설정 및 기능 IDE의 설정 및 기능은 사용자가 게임 개발을 보다 효율적으로

By 이재협/실장/시스템개발실/PHYSIA