draw_sprite_stretched_ext 함수 설명
draw_sprite_stretched_ext
함수는 draw_sprite_stretched()
함수와 동일하게 작동하지만, 스프라이트를 그릴 때 색상 혼합 및 알파 값을 설정할 수 있는 기능이 추가되었습니다. 이는 draw_sprite_ext()
함수와 유사합니다.
주의 사항
- 이 함수를 사용하여 그릴 때, 스프라이트의 x 오프셋과 y 오프셋(또는 원점)은 무시되며, 스프라이트는 지정된 x/y 위치의 좌상단 모서리에서 그려집니다.
- 색상 혼합은 HTML5 타겟에서 WebGL이 활성화된 경우에만 권장됩니다. WebGL이 비활성화된 경우에도 혼합 색상을 설정할 수 있지만, 스프라이트는 일반적으로 혼합됩니다. 그러나 이 방식으로 모든 혼합은 복제된 스프라이트를 생성하여 캐시에 저장하고 필요할 때 사용합니다. 이는 최적이 아니며, 여러 색상 변경을 사용할 경우 게임 성능이 저하될 수 있습니다. WebGL을 사용하지 않으려면
sprite_set_cache_size()
함수를 사용하여 캐시 크기를 조정할 수 있습니다.
문법
draw_sprite_stretched_ext(sprite, subimg, x, y, w, h, colour, alpha);
인수 설명
인수 | 유형 | 설명 |
---|---|---|
sprite | 스프라이트 | 그릴 스프라이트 |
subimg | 정수 | 그릴 스프라이트의 서브 이미지(프레임) (image_index 또는 -1은 객체의 현재 애니메이션 프레임에 해당) |
x | 정수 | 스프라이트를 그릴 x 좌표 |
y | 정수 | 스프라이트를 그릴 y 좌표 |
w | 정수 | 늘어난 스프라이트가 차지할 너비 |
h | 정수 | 늘어난 스프라이트가 차지할 높이 |
colour | 색상 | 스프라이트와 혼합할 색상. c_white는 일반적으로 표시됨 |
alpha | 실수 | 스프라이트의 알파 값 (0에서 1까지, 0은 투명, 1은 불투명) |
반환 값
- N/A
활용 예제
// 스프라이트를 반투명하게 그리기
draw_sprite_stretched_ext(sprite_index, image_index, x, y, sprite_width, sprite_height / 2, c_white, 0.5);
// 스프라이트를 빨간색으로 혼합하여 그리기
draw_sprite_stretched_ext(sprite_index, image_index, x, y, sprite_width, sprite_height, c_red, 1);
// 스프라이트를 특정 위치에 크기를 조정하여 그리기
draw_sprite_stretched_ext(sprite_index, image_index, 100, 150, 200, 100, c_white, 0.8);
위의 예제들은 draw_sprite_stretched_ext
함수를 활용하여 스프라이트를 다양한 방식으로 그리는 방법을 보여줍니다.