카메라 속도 설정 함수 설명
camera_set_view_speed
함수는 특정 타겟 객체를 따라갈 때 방 안에서 카메라의 속도를 업데이트하는 데 사용됩니다. 이 함수는 타겟 인스턴스가 버퍼 존 밖에 있을 때 카메라가 이동하는 속도를 설정합니다.
함수 사용법
이 함수는 고유한 카메라 ID 값(다양한 camera_create()
함수에서 반환됨)을 입력받고, 주어진 인스턴스를 따라갈 때 카메라가 이동해야 하는 x축(수평) 및 y축(수직) 속도를 설정합니다. 속도는 픽셀 단위로 계산되며, "-1"로 설정하면 카메라가 즉시 이동하게 됩니다. 그러나 카메라가 어떤 인스턴스를 따라가도록 설정되지 않은 경우, 여기서 설정한 값은 시각적으로 아무런 효과가 없습니다.
문법
camera_set_view_speed(camera, x_speed, y_speed)
인수 설명
인수 | 타입 | 설명 |
---|---|---|
camera | Camera ID | 카메라를 생성할 때 반환된 고유한 카메라 ID 값 |
x_speed | Real | 타겟을 따라잡기 위해 수평(x) 축에서 뷰가 이동해야 하는 속도 (픽셀/게임 프레임) |
y_speed | Real | 타겟을 따라잡기 위해 수직(y) 축에서 뷰가 이동해야 하는 속도 (픽셀/게임 프레임) |
반환값
- N/A
예제
camera_set_view_speed(view_camera[0], 5, 5);
위 코드는 view_port[0]
에 할당된 카메라의 속도를 설정합니다.
활용 예제
- 타겟 객체를 따라가는 카메라 설정
var target = obj_player; // 플레이어 객체를 타겟으로 설정 camera_set_view_speed(view_camera[0], 4, 4); // 카메라 속도 설정
- 즉시 이동하는 카메라
camera_set_view_speed(view_camera[1], -1, -1); // 카메라를 즉시 이동
- 다양한 속도로 카메라 이동
camera_set_view_speed(view_camera[2], 10, 5); // 수평으로 빠르게, 수직으로 느리게 이동
- 카메라 속도 조정
if (some_condition) { camera_set_view_speed(view_camera[0], 3, 3); // 조건에 따라 속도 조정 } else { camera_set_view_speed(view_camera[0], 1, 1); }
- 버퍼 존을 고려한 카메라 속도 설정
if (target_out_of_buffer) { camera_set_view_speed(view_camera[0], 6, 6); // 타겟이 버퍼 존 밖에 있을 때 속도 증가 }
이와 같이 camera_set_view_speed
함수를 활용하여 다양한 카메라 이동 효과를 구현할 수 있습니다.