카메라 및 뷰 포트 설명서
이 문서는 특정 뷰 포트에 할당된 고유 카메라 ID를 저장하는 배열인 view_camera
에 대해 설명합니다. 이 배열은 새로운 카메라를 설정하거나 현재 카메라를 읽어오는 데 사용되며, 카메라가 할당되지 않은 경우 -1을 반환합니다. 한 방에서 최대 8개의 뷰 포트를 활성화할 수 있으며(배열 값 0부터 7까지), 이 변수에 카메라 ID 값을 설정하여 카메라를 할당할 수 있습니다. 만약 방 편집기를 통해 뷰 포트에 카메라를 설정했다면, 이 변수는 해당 포트의 카메라 ID를 보유하게 됩니다.
문법
view_camera[0 ... 7]
반환 값
- 카메라 ID
- -1 (카메라가 할당되지 않은 경우)
예제
if view_camera[0] == -1 {
view_camera[0] = camera_create_view(0, 0, room_width, room_height);
}
위의 코드는 뷰 포트 [0]에 카메라가 연결되어 있는지 확인하고, 연결되어 있지 않다면 카메라를 생성하여 설정합니다.
활용 예제
예제 번호 | 설명 |
---|---|
1 | 뷰 포트 1에 카메라가 할당되어 있는지 확인하고, 없으면 새로운 카메라를 생성하여 할당하는 코드 |
2 | 뷰 포트 2의 카메라 ID를 읽어와서, 해당 카메라의 위치를 변경하는 코드 |
3 | 모든 뷰 포트에 대해 카메라가 할당되어 있는지 확인하고, 할당되지 않은 경우 기본 카메라를 설정하는 코드 |
4 | 특정 조건에 따라 뷰 포트 3의 카메라를 다른 카메라로 변경하는 코드 |
5 | 뷰 포트 4의 카메라를 제거하고, -1로 설정하는 코드 |
코드 스니펫 예제
// 예제 1: 뷰 포트 1에 카메라 할당
if view_camera[1] == -1 {
view_camera[1] = camera_create_view(0, 0, room_width, room_height);
}
// 예제 2: 뷰 포트 2의 카메라 위치 변경
if view_camera[2] != -1 {
camera_set_view_pos(view_camera[2], 100, 100);
}
// 예제 3: 모든 뷰 포트에 카메라 할당 확인
for (var i = 0; i < 8; i++) {
if view_camera[i] == -1 {
view_camera[i] = camera_create_view(0, 0, room_width, room_height);
}
}
// 예제 4: 뷰 포트 3의 카메라 변경
if (some_condition) {
view_camera[3] = new_camera_id;
}
// 예제 5: 뷰 포트 4의 카메라 제거
view_camera[4] = -1;