draw_sprite_tiled 함수 설명
draw_sprite_tiled
함수는 주어진 스프라이트를 화면 전체에 반복적으로 타일링하여 그리는 기능을 제공합니다. 이 함수는 2D(정사영) 프로젝션에서만 작동하며, 3D 카메라 프로젝션에서는 올바르게 작동하지 않습니다.
함수 구문
draw_sprite_tiled(sprite, subimg, x, y);
매개변수 설명
매개변수 | 유형 | 설명 |
---|---|---|
sprite | 스프라이트 | 그릴 스프라이트 |
subimg | 정수 | 그릴 스프라이트의 서브 이미지(프레임) |
x | 정수 | 스프라이트를 그릴 x 좌표 |
y | 정수 | 스프라이트를 그릴 y 좌표 |
반환값
이 함수는 반환값이 없습니다.
사용 예제
다음은 draw_sprite_tiled
함수를 사용하는 예제입니다.
// 스프라이트를 타일링하여 그리기
draw_sprite_tiled(sprite_index, image_index, x, y);
위 코드는 인스턴스에 할당된 스프라이트(sprite_index
)와 현재 애니메이션 프레임(image_index
)을 인스턴스의 x, y 위치에 그리며, 화면 전체에 수평 및 수직으로 타일링합니다.
활용 및 응용 예제
- 배경 타일링
gml // 배경 스프라이트를 타일링하여 그리기 draw_sprite_tiled(background_sprite, -1, 0, 0);
- 게임 맵 타일링
gml // 게임 맵의 타일을 그리기 for (var i = 0; i < map_width; i++) { for (var j = 0; j < map_height; j++) { draw_sprite_tiled(tile_sprite, -1, i * tile_width, j * tile_height); } }
- 패턴 생성
gml // 특정 패턴으로 스프라이트 타일링 if (pattern_condition) { draw_sprite_tiled(pattern_sprite, -1, x, y); }
- 애니메이션 효과
gml // 애니메이션 효과를 주기 위해 서브 이미지 변경 draw_sprite_tiled(sprite_index, image_index, x, y); image_index = (image_index + 1) % total_frames; // 프레임 변경
이와 같이 draw_sprite_tiled
함수는 다양한 방식으로 활용될 수 있으며, 게임의 비주얼을 풍부하게 만드는 데 유용합니다.