볼륨 레퍼런스

Volume, 볼륨을 어떻게 배치하고 사용하면 레벨의 작동방식이나 구성 상태를 증강시킬 수 있는지에 대한 안내입니다.

Windows
MacOS
Linux

Volume (볼륨)이란 레벨의 일정 영역에 대한 작동방식을 변경하는 데 사용되는 3차원 액터입니다. 볼륨이 사용되는 작동방식은 다음과 같습니다:

  • 볼륨 내 플레이어 또는 다른 액터에 대미지를 유발합니다.

  • 특정 액터의 볼륨 진입 금지, 즉 충돌 표면 역할을 합니다.

  • 액터가 볼륨에 들어서면 문을 엽니다.

  • 레벨의 라이팅 또는 가시성 계산 방식을 변경합니다.

볼륨 배치와 생성

볼륨 생성은 모드 메뉴의 볼륨 탭에서 볼륨을 선택한 뒤 레벨 뷰포트에 끌어놓으면 됩니다.

creatingVolumes.png

볼륨을 레벨에 배치했으면, 원하는 대로 크기와 위치를 조정합니다. 볼륨을 배치할 때 유념해야 할 중요한 점이 두 가지 있습니다:

  1. 볼륨은 지원형 액터로, 보통 특정 지역에 어떤 액터 유형이 들어서는지 감지하여 그에 대한 반응으로 이펙트를 발동시키는 데 사용됩니다.

  2. 볼륨은 가끔 자체적으로 (코드나 블루프린트) 내장 이펙트를 갖지만, 거의 대부분 다른 액터에 큐를 제공합니다. 보통 더욱 큰 시스템의 일부분으로 간주되며, 몇 가지 요소는 비주얼 큐 역할을 합니다.

예를 들어 Pain-Causing Volume (페인 코징 볼륨)은 그 안의 모든 것에 대미지를 입히는 것으로, 다음과 같이 레벨에 배치할 수 있습니다:

PainCausingVolume_NoEffect.png

PainCausingVolume_NoEffect_NoVolume.png

에디터내

게임내

이 경우 플레이어는 볼륨을 피할 길이 없으며, 대미지를 입는데도 왜 그런지 알 수가 없습니다. 레벨 디자이너는 플레이어가 페인 코징 볼륨에 들어섰다는 것을 알려주는 힌트를 제공해야 합니다:

PainCausingVolume_Effect.png

PainCausingVolume_Effect_NoVolume.png

에디터내

게임내

이 경우 화염 파티클 이펙트가 이 지역이 왜 위험한지를 시각적으로 설명해 주는 반면, 페인 코징 볼륨은 플레이어가 불에 닿았기 때문에 생명력이 감소하는 게임플레이 이펙트로 비주얼을 지원하는 역할을 합니다.

볼륨 유형

충돌 및 겹침 관련 볼륨

Blocking Volume

블로킹 볼륨은 오브젝트의 통과를 막기 위한 콜리전 모양 역할을 합니다. (아래 그림과 같이) 볼륨의 콜리전 채널 조절을 통해 통과시킬 오브젝트 유형을 결정할 수도 있고, 볼륨을 통과할 때 오버랩 이벤트를 생성하도록 할 수도 있습니다.

자세한 것은 콜리전 문서를 참고해 주시기 바랍니다.

blocking_volume_details.png

블로킹 볼륨은 스태틱 메시의 콜리전 표면 대신 사용 가능합니다. 구조물의 벽이 특히 그러합니다. 그러면 씬의 작동방식 예측이 보다 쉬워지는데, 피지컬 오브젝트가 바닥이나 벽의 돌기같은 작은 것에 반응하지 않기 때문입니다. 피직스 시뮬레이션 비용이 줄어드니 퍼포먼스 향상도 기대할 수 있습니다.

Camera Blocking Volume

Camera Blocking Volume (카메라 블로킹 볼륨)은 카메라만 막고 다른 모든 것들은 무시하도록 미리 설정된 콜리전 세팅의 볼륨입니다. 카메라가 안좋은 위치에 오지 않도록 보이지 않는 장벽 역할을 합니다. 삼인칭 게임에서 예제로, 플레이 영역의 벽에 잎사귀 덩굴같은 장식 덮개가 있는 경우입니다. 그런 경우 카메라 블로킹 볼륨을 벽에 배치하면 카메라가 덩굴이나 잎사귀 뒤로 넘어가지 않도록 하여, 부드럽게 미끄러지며 방의 동작을 방해받지 않고 볼 수 있도록 해줍니다.

Kill Z Volume

Kill Z Volume (킬 Z 볼륨)은 플랫포머 게임에서 절벽 또는 구덩이로 떨어지거나, 공상 과학 설정에서 우주복 없이 우주선 밖을 나가거나 하는 등, 특정 유형 게임에서 오브젝트가 경계를 벗어나지 못하도록 하는 데 쓰입니다. 킬 Z 볼륨은 들어서는 액터에 대해 FellOutOfWorld 함수를 호출하고, 기본적으로 액터는 빠른 클린업 절차 이후 자체 소멸됩니다. 다른 동작이 필요한 게임에서는 그 액터에 맞는 작동방식을 덮어쓸 수 있습니다. 예를 들어, 플레이어가 게임을 계속하기 위해 수집해야 하는 키나 다른 아이템이 용암 구덩이에 떨어진 경우, 그냥 소멸시켜 버리기 보다는 그 아이템을 플레이어가 도달할 수 있는 곳으로 순간이동시키거나, 아니면 게임이 끝나지 않는 상태로 놔두기 보다는 최소한 플레이어에게 아이템을 잃었으니 지난 체크포인트를 다시 로드하라고 알리기라도 해야 할 것입니다.

Pain-Causing Volume

Pain-Causing Volume (페인 코징 볼륨)은 사실 플레이어에게 대미지를 입히는 기능이 추가된 피직스 볼륨입니다. 레벨에 용암 구덩이라던가, 유독 가스 구름이라든가, 플레이어가 가지 말아야 할 곳이 있는 경우 좋습니다.

페인 코징 볼륨 관련 프로퍼티 상세 정보는 페인 코징 볼륨 레퍼런스 문서를 참고하세요.

Physics Volume

피직스 볼륨은 캐릭터와 다른 물리 오브젝트에 영향을 끼치는 물리 설정을 조작할 수 있는 볼륨입니다. 플레이어가 헤엄쳐야 하는 수중 환경을 생성하는 데 자주 쓰입니다. 피직스 볼륨의 이펙트는 눈에 보이며, 원하는 대로 해석 가능합니다. Character Movement Component 클래스는 현재 필드를 사용하여 소유중인 Character 의 환경 이동 방식을 조절합니다. 게임에 커스텀 피직스 세팅이 있는 경우, APhysicsVolume 에서 자체 자손 클래스를 파생시키면 도움이 될 수 있습니다.

피직스 볼륨 프로퍼티 관련 상세 정보는 피직스 볼륨 레퍼런스 문서를 참고하세요.

Trigger Volume

트리거 볼륨은 플레이어나 기타 오브젝트가 볼륨에 드나들 때 이벤트를 유발시키는 방편으로 사용됩니다. 레벨 블루프린트와 간단히 사용하여 이벤트 및 게임플레이 시나리오나 함수성을 별도의 블루프린트 추가 없이 테스트할 수 있습니다.

예를 들면 레벨에 트리거 볼륨을 배치한 뒤, 레벨 블루프린트 에서 그 볼륨에 대한 오버랩 이벤트를 만들어 사운드 재생, 문 열기, 시네마틱 씬 시작 등의 작업을 할 수 있습니다.

트리거가 의도된 액터에 오버랩 콜리전 리스폰스 세팅으로 반응하도록 되어 있는지 콜리전 세팅을 확인해 주시기 바랍니다.

그래픽 및 오디오 볼륨

Audio Volume

오디오 볼륨 은 레벨의 다양한 사운드를 제어하고 적용할 수 있을 뿐만 아니라 구획으로 나눈 오디오 지역을 만들어 볼륨 안팎에서 들리는 것을 제어할 수 있습니다. 오디오 볼륨을 사용하면 페이드를 통한 오디오 전환 효과 및 볼륨 자체 내 Ambient Zone (앰비언트 존) 세팅을 제어할 수도 있습니다.

오디오 볼륨 관련 프로퍼티 상세 정보는 오디오 볼륨 레퍼런스 문서를 참고하세요.

Cull Distance Volume

컬 디스턴스 볼륨(Cull Distance Volume)은 카메라에서 오브젝트까지의 거리 및 그 크기에 따라 컬링(, 다른 말로 화면에 그릴 때 생략)하는 데 쓰이는 일종의 최적화 도구입니다. 오브젝트가 일정 이하로 작아 중요하지 않은 것으로 간주되면 그리지 않는 식으로 씬을 최적화시키는 데 도움이 됩니다. 크기는 바운딩 박스 중 치수가 가장 긴 것으로 계산하며, 선택된 컬링 거리는 그 크기에 가장 가까운 것이 됩니다.

컬 디스턴스 볼륨 셋업은 아래 디테일 패널에 표시되는 Cull Distances (컬 디스턴스) 프로퍼티에 따라 달라집니다.

CullDistancesProperty.png

위 그림의 프로퍼티에서 정의되는 작동방식은 다음과 같습니다:

  • 볼륨 내 오브젝트 중 크기가 (거리 85 유닛 이하) 50 유닛에 가장 가까운 것은 카메라와의 거리가 500 유닛 이상일 때 컬링됩(사라집)니다.

  • 볼륨 내 오브젝트 중 크기가 (거리 85 에서 210 유닛 사이) 120 유닛에 가장 가까운 것은 카메라와의 거리가 1000 유닛 이상일 때 컬링됩(사라집)니다.

  • 볼륨 내 오브젝트 중 크기가 (거리 210 유닛 이상) 300 유닛에 가장 가까운 것은 컬링되지 않습니다. 여기서 0 은 무한으로 간주되기에, 카메라가 그만큼 멀어질 수 없습니다.

셋업은 Cull Distances 배열에 새 항목을 추가, 즉 button_Plus.png 버튼을 클릭하는 것으로 시작합니다. 그 다음, 오브젝트의 크기, 그리고 해당 크기 이하의 오브젝트가 컬링되었으면 하는 위치를 입력합니다. 프로퍼티를 입력하는 데 있어 정해진 순서는 없습니다.

Hierarchical LOD Volume

Hierarchical LOD Volume (계층형 LOD 볼륨)에는 별다른 프로퍼티는 없지만, HLOD 시스템에서 다수의 액터의 하나의 HLOD 클러스터로 그룹짓는 데 사용됩니다. 클러스터 생성 시 언리얼 엔진은 일반 생성 프로세스보다 수동 배치된 볼륨을 우선시합니다.

Lightmass Character Indirect Detail Volume

라이트매스 캐릭터 간접 디테일 볼륨은 라이트매스 임포턴스 볼륨과 비슷하게 간접광 샘플을 생성하지만, 땅 위의 플레이어 높이에서만이 아니라 전체 볼륨 내부에 대해 생성합니다. 이 볼륨은 간접광이 아래 뿐 아니라 위로 올라가면서도 올바르게 나와야 하는 엘리베이터에 주로 사용됩니다.

Lightmass Importance Volume

라이트매스 임포턴스 볼륨은 라이트매스 계산을 집중시키는 데 사용됩니다. 라이트매스는 언리얼 엔진 4 에서 사용되는 글로벌 일루미네이션 시스템으로, 라이팅을 미리계산하는 방식입니다. 레벨에 미리계산된 라이트를 생성하는 데 필요한 처리량을 최소화시키기 위해서는, 라이트매스 임포턴스 볼륨을 사용해서 레벨 지오메트리의 특정 영역을 감싸줘야 합니다. 그러면 라이트매스는 해당 영역 안쪽만 계산하며, 그 외 부분은 생략합니다.

라이트매스와 라이트매스 임포턴스 볼륨 관련 상세 정보는 라이트매스 글로벌 일루미네이션 문서를 참고해 주시기 바랍니다.

Mesh Merge Culling Volume

Mesh Merge Culling Volume (메시 머지 컬링 볼륨)은 그 안에 들어있는 메시 오브젝트를 하나의 메시로 합칠 수 있도록 마킹합니다. 일정 영역의 작은 메시 집합을 하나의 메시로 한꺼번에 컬링되도록 만들거나, HLOD 생성 시 지오메트리 감소를 좀 더 최적화된 방식으로 하도록 하여 퍼포먼스를 향상시킬 수 있습니다.

Post Process Volume

포스트 프로세스 볼륨은 그 공간 안에 있는 카메라에 포스트 프로세스 세팅을 적용하는 것으로, 이 세팅은 디테일 패널에서 프로퍼티를 조절하여 덮어쓸 수 있습니다.

포스트 프로세싱 관련 상세 정보는 포스트 프로세스 이펙트 문서를 참고하세요.

Precomputed Visibility Volume

프리컴퓨티드 비저빌리티 볼륨은 주로 퍼포먼스 최적화에 사용됩니다. 이 볼륨은 액터의 월드상 위치에 대한 표시여부를 저장하며, 플레이어가 접근할 수 있는 영역에만 배치해야 합니다.

Precomputed Visibility Override Volume

프리컴퓨터드 비저빌리티 오버라이드 볼륨은 프리컴퓨티드 비저빌리티 볼륨의 자동 생성 결과가 마음에 들지 않을 때 액터의 비저빌리티를 수동으로 덮어쓸 수 있습니다. 퍼포먼스 최적화에도 사용되며, 플레이어가 접근할 수 있는 영역에만 배치해야 합니다.

레벨 및 AI 볼륨

Level Streaming Volume

레벨 스트리밍 볼륨은 레벨 스트리밍 프로세스를 보조하는 데 사용됩니다. 레벨 캡슐화는 물론, 플레이어의 볼륨 출입에 따라 메모리에서의 레벨 스트림 인/아웃 시기를 간단히 제어할 수 있습니다.

내비 메시 바운드 볼륨은 레벨의 내비 메시를 만드는 부분을 조절하는 데 사용됩니다. 내비 메시는 레벨 영역 내 돌아다닐 수 있는 경로를 계산하는 데 사용됩니다.

볼륨 내 걸어다니기 적합한 각도의 모든 표면상에 내비 메시를 구성합니다. 필요하다면 얼마든지 겹쳐 원하는 내비 메시를 만들 수 있습니다.

내비 메시 바운드 볼륨을 사용하기 위해서는, 하나(이상)의 볼륨으로 레벨 내 돌아다닐 수 있는 영역을 둘러싸 주기만 하면 됩니다. 그러면 내비 메시는 자동으로 빌드됩니다.

언제든 뷰포트에서 P 키를 누르면 내비 메시를 시각화시켜 볼 수 있습니다.

자세한 설명과 예제는 콘텐츠 예제와 내비메시 콘텐츠 예제 문서를 참고해 주시기 바랍니다.

새로운 언리얼 엔진 4 문서 사이트에 오신 것을 환영합니다!

문서 사이트에 대한 의견을 모을 수 있는 피드백 시스템을 포함해서 여러가지 새로운 기능을 준비하고 있습니다. 아래 Documentation Feedback 포럼(영문) 또는 언리얼 엔진 네이버 공식 카페(한글) 중 편하신 곳에 의견이나 문제점을 알려 주세요.

새 시스템이 준비되면 알려 드리겠습니다.

네이버 카페
공식 포럼