layer_tilemap_create 함수 설명
layer_tilemap_create 함수는 프로젝트에서 사용할 타일 맵을 위해 레이어에 타일 세트 자산을 할당하는 기능을 제공합니다. 이 함수를 사용하려면 레이어 핸들(레이어를 생성할 때 layer_create()를 사용하여 얻은 것) 또는 레이어 이름(문자열 형식, 성능에 영향을 미침)과 타일 맵을 추가할 초기 (x, y) 위치, 사용할 타일 세트 자산, 그리고 타일 맵의 너비와 높이를 셀 단위로 지정해야 합니다. 예를 들어, 너비가 20이고 높이가 10이면 20개의 셀 너비와 10개의 셀 높이를 가진 200개의 셀로 구성된 타일 맵이 생성됩니다. 셀의 크기는 선택한 타일 세트에 의해 정의됩니다. 타일 맵 내에서 음수 위치에 타일을 배치할 수 없으므로 모든 타일은 셀 공간 0에서 너비 - 1, 0에서 높이 - 1 사이에 배치해야 합니다.
함수 문법
layer_tilemap_create(layer_id, x, y, tileset, width, height)
매개변수 설명
| 매개변수 | 타입 | 설명 |
|---|---|---|
| layer_id | String 또는 Layer ID | 타겟 레이어의 핸들(또는 문자열로 된 레이어 이름) |
| x | Real | 방 안에서 타일 맵의 x 위치 |
| y | Real | 방 안에서 타일 맵의 y 위치 |
| tileset | Tile Set Asset | 사용할 타일 세트 자산 |
| width | Real | 타일 맵의 너비(셀 단위) |
| height | Real | 타일 맵의 높이(셀 단위) |
반환값
- 타일 맵 요소 ID
예제 코드
global.back_layer = layer_create(10000);
global.back_tiles = layer_tilemap_create(global.back_layer, 0, 0, tmap_Trees, 16, 32);
위 코드는 새로운 레이어를 생성하고, (0,0) 위치에 타일 맵 요소를 추가하며, 사용할 타일 세트와 타일 맵의 너비 및 높이를 설정합니다.
활용 예제
- 기본 타일 맵 생성
gml var my_layer = layer_create(20000); var my_tiles = layer_tilemap_create(my_layer, 5, 5, tmap_Grass, 10, 10); - 다양한 위치에 타일 맵 추가
gml var layer1 = layer_create(30000); var layer2 = layer_create(40000); layer_tilemap_create(layer1, 0, 0, tmap_Water, 20, 15); layer_tilemap_create(layer2, 10, 10, tmap_Rocks, 5, 5); - 타일 맵 크기 조정
gml var layer = layer_create(50000); var tiles = layer_tilemap_create(layer, 0, 0, tmap_Forest, 30, 20); - 타일 세트 변경
gml var layer = layer_create(60000); var tiles = layer_tilemap_create(layer, 0, 0, tmap_Sand, 25, 25); - 여러 레이어에 타일 맵 추가
gml var bg_layer = layer_create(70000); var fg_layer = layer_create(80000); layer_tilemap_create(bg_layer, 0, 0, tmap_Background, 40, 30); layer_tilemap_create(fg_layer, 0, 0, tmap_Foreground, 40, 30);