게임에서 맞았을때 효과 ( sprite draw를 특정색으로 변하게 하는 효과)
어떤 효과인지 아래를 참고 바랍니다.
주인공이 적을 맞혔을때 몸이 흰색으로 변하는 효과입니다.
블랜더 모드
위 동영상 예제에서는 주인공의 경우 빨간색으로 변경되는 화면을 볼 수 있습니다. 해당처리는 draw시 블랜더 모드를 사용하고 있습니다만, 전체적으로 빨간색으로 변경하지는 못합니다.var mapc = c_white; if(hurtStart>0){ mapc = c_red; } draw_sprite_ext(sprite_index, image_index, x, y, facing * xscale, yscale, 0, mapc, image_alpha); draw_sprite_ext(guntype_sprite_index, 0, x, y+3+bo, facing * xscale, yscale, 0, mapc, image_alpha);
구현은 간단
draw전 gpu_set_fog 함수를 이용합니다. 함수의 설명은 아래와 같습니다. start, end를 2d게임에서 0을 전달함으로서 해당 sprite를 안개로 인식하게 합니다.gpu_set_fog(enable, color, start, end)
enable : 사용 color : 안개 색상 start : 카메라의 위치를 중심으로 안개를 적용할 시작위치(투명) end : 카메라의 위치를 중심으로 안개를 적용할 끝위치(불투명)
구현 소스
if( hurt==1 ){ gpu_set_fog(1,c_white,0,0); draw_sprite_ext(sprite_index, image_index, x, y, facing * 1, 1, image_angle, c_white, image_alpha); gpu_set_fog(0,0,0,0); }else{ draw_sprite_ext(sprite_index, image_index, x, y, facing * 1, 1, image_angle, c_white, image_alpha); }
댓글 없음:
댓글 쓰기