웹 및 HTML5
GameMaker는 인터넷 또는 서버와 상호작용하기 위한 다양한 기능을 제공합니다. 이러한 기능은 모든 지원 플랫폼에서 사용할 수 있습니다. 주요 기능은 다음과 같습니다:
기능 이름 | 설명 |
---|---|
url_open | 주어진 URL을 엽니다. |
url_open_ext | 외부 URL을 엽니다. |
url_open_full | 전체 URL을 엽니다. |
url_get_domain | URL의 도메인을 가져옵니다. |
http_request | HTTP 요청을 보냅니다. |
http_get | GET 요청을 보냅니다. |
http_get_file | 파일을 GET 요청으로 다운로드합니다. |
http_post_string | 문자열을 POST 요청으로 보냅니다. |
HTML5 타겟에는 게임에서 특별히 사용하도록 설계된 추가 웹 기능이 있습니다:
기능 이름 | 설명 |
---|---|
browser_height | 브라우저의 높이를 가져옵니다. |
browser_width | 브라우저의 너비를 가져옵니다. |
browser_input_capture | 브라우저 입력을 캡처합니다. |
webgl_enabled | WebGL이 활성화되어 있는지 확인합니다. |
clickable_exists | 클릭 가능한 요소가 존재하는지 확인합니다. |
clickable_add | 클릭 가능한 요소를 추가합니다. |
clickable_add_ext | 확장된 클릭 가능한 요소를 추가합니다. |
clickable_change | 클릭 가능한 요소를 변경합니다. |
clickable_change_ext | 확장된 클릭 가능한 요소를 변경합니다. |
clickable_set_style | 클릭 가능한 요소의 스타일을 설정합니다. |
clickable_delete | 클릭 가능한 요소를 삭제합니다. |
analytics_event | 분석 이벤트를 기록합니다. |
analytics_event_ext | 확장된 분석 이벤트를 기록합니다. |
os_browser | 운영 체제의 브라우저 정보를 가져옵니다. |
http_get_request_crossorigin | 교차 출처 GET 요청을 보냅니다. |
http_set_request_crossorigin | 교차 출처 요청을 설정합니다. |
HTML5 타겟 모듈의 이러한 기능 외에도, HTML5 게임 폴더의 내용이 완전히 다른 위치(URL)에 저장되는 드문 경우에 사용할 수 있는 특별한 JavaScript 변수가 있습니다. 일반적으로 이 경로는 JavaScript 파일에 하드코딩되어 있으며, JavaScript가 호출되는 위치에 상대적입니다. 그러나 게임 스크립트를 호출하기 전에 g_GameMakerHTML5Dir
변수를 설정하면 게임이 새로 정의된 위치에서 실행됩니다. 예를 들어:
<script>
var g_GameMakerHTML5Dir = "http://mygamealternatedirectory.com/";
</script>
또한, gmcallback_
접두사를 사용하여 스크립트 함수를 플래그할 수 있습니다. 이는 HTML5용 프로젝트를 컴파일할 때 해당 함수가 난독화되지 않도록 합니다. 이는 위에 나열된 clickable_*
함수들을 사용할 때 매우 유용합니다.
활용 예제
다음은 GameMaker에서 제공하는 웹 및 HTML5 기능을 활용한 몇 가지 예제입니다.
URL 열기 예제
url_open("http://example.com");
HTTP GET 요청 예제
var response = http_get("http://example.com/api/data");
클릭 가능한 요소 추가 예제
clickable_add("myClickable", 100, 100, 200, 50);
분석 이벤트 기록 예제
analytics_event("game_start");
교차 출처 요청 설정 예제
http_set_request_crossorigin(true);