draw_clear_alpha 함수 설명
draw_clear_alpha
함수는 주어진 색상으로 전체 화면을 지우는 데 사용됩니다. 이 함수는 목적지의 알파 컴포넌트를 설정한 값으로 설정하며, 블렌딩 작업을 수행하지 않습니다. 그러나 이후의 블렌드 작업은 설정한 목적지 알파를 사용할 수 있습니다. 이 함수는 인스턴스의 드로우 이벤트에서만 사용할 수 있으며, 다른 이벤트에서는 표시되지 않습니다. 또한, 새로 생성된 서피스를 지우는 데 매우 유용합니다.
HTML5 모듈을 사용할 때 이 함수를 사용하여 캔버스 배경을 투명하게 만들 수 있습니다. 이렇게 하면 게임이 실행되는 동안 호스트 HTML에서 사용되는 이미지가 보이게 됩니다. 이 효과를 얻으려면 먼저 방 편집기에서 모든 배경 레이어를 제거하고, 보기 속성에서 "보기 배경 지우기" 옵션의 선택을 해제해야 합니다. 마지막으로, 새로운 객체를 만들고 게임의 첫 번째 방에 배치한 후 매우 높은 깊이(예: 10000)를 할당해야 합니다. 그런 다음 Pre Draw 이벤트에서 이 함수를 사용하여 캔버스 알파를 원하는 색상과 투명도로 설정합니다.
문법
draw_clear_alpha(col, alpha);
매개변수 설명
매개변수 | 타입 | 설명 |
---|---|---|
col | 색상 | 화면을 지우는 데 사용할 색상 |
alpha | 실수 | 화면을 지우는 데 사용할 색상의 투명도 |
반환값
- 없음
예제
draw_clear_alpha(c_red, 0.5);
위 코드는 빨간색으로 50% (0.5) 투명도로 화면을 지웁니다.
활용 예제
- 기본 화면 지우기
gml draw_clear_alpha(c_black, 1);
- 투명한 배경 만들기
gml draw_clear_alpha(c_white, 0);
- 게임 시작 시 화면 초기화
gml if (room == room_start) { draw_clear_alpha(c_blue, 0.7); }
- 특정 이벤트에서 화면 지우기
gml if (event_type == ev_mousebuttonup) { draw_clear_alpha(c_green, 0.3); }
- 서피스 초기화
gml if (surface_exists(my_surface)) { draw_surface(my_surface, 0, 0); draw_clear_alpha(c_black, 0); }
이 함수는 게임의 시각적 효과를 조정하는 데 매우 유용하며, 다양한 상황에서 활용될 수 있습니다.