데이터스미스에 Rhino 사용

데이터스미스로 McNeel Rhinoceros 3D 에서 씬을 임포트할 때 적용되는 특수 사항을 설명합니다.

Windows
MacOS
Linux

이 페이지에서는 데이터스미스 를 사용하여 McNeel Rhinoceros(Rhino) 에서 언리얼 엔진 으로 씬을 임포트하는 방법에 대해 설명합니다. 이 설명은 데이터스미스 개요데이터스미스 임포트 프로세스에 대하여 에 나와 있는 기본 프로세스를 따르지만 Rhino에 한정되는 특별한 변환 동작이 일부 추가되어 있습니다. 데이터스미스를 사용하여 Rhino에서 언리얼 에디터로 씬을 임포트할 계획인 경우, 이 페이지에서 제공하는 정보를 통해 씬이 변환되는 방식과 언리얼 에디터에서 그 결과물로 작업하는 방식을 이해하는 데 도움을 얻을 수 있습니다.

Rhino 워크플로

데이터스미스는 Rhino용 익스포트 워크플로를 사용합니다. 즉, 데이터스미스를 사용하여 Rhino 콘텐츠를 언리얼로 옮기려면 다음 작업을 수행해야 합니다.

  1. Rhino용 데이터스미스 익스포터 플러그인을 설치합니다. Rhino용 데이터스미스 익스포터 설치 를 참고하세요.

  2. '다른 이름으로 저장(Save As)'이나 '익스포트(Export)' 프로세스를 사용하여 Rhino 콘텐츠를 익스포트하세요. Rhino에서 데이터스미스 콘텐츠 익스포트 를 참고하세요.

  3. 언리얼 에디터의 툴바에 있는 데이터스미스 임포터를 사용하여 .udatasmith 파일을 임포트합니다. 데이터스미스 콘텐츠를 언리얼 엔진 4에 임포트 를 참고하세요.

데이터스미스 워크플로의 다른 유형들에 대해 더 알아보고 싶은 경우 데이터스미스 지원 소프트웨어 및 파일 유형 을 참고하세요.

지오메트리를 스태틱 메시로 변환

데이터스미스는 Rhino 파일에 각 메시, 입체, 표면별로 개별 스태틱 메시 에셋을 생성합니다. 아래 이미지의 왼쪽에서와 같이 Rhino의 프로퍼티(Properties) 패널에 오브젝트의 이름(Name) 프로퍼티가 설정되어 있는 경우 데이터스미스는 아래 이미지의 오른쪽에서와 같이 해당 이름을 스태틱 메시 에셋에 사용합니다. 데이터스미스가 레벨에 생성하는 액터 중 해당 스태틱 메시 에셋을 참조하는 액터는 모두 이 이름을 동일하게 사용합니다.

인스턴싱

데이터스미스가 Rhino 씬에서 동일한 블록의 인스턴스를 다수 감지할 경우, 해당 블록의 지오메트리에 대해서는 하나의 스태틱 메시 에셋 세트만 생성합니다. 그런 다음 해당 스태틱 메시의 인스턴스 다수를 씬에 배치합니다. 보통 프로젝트의 런타임 메모리 요구사항과 퍼포먼스 측면에서 더 좋을 뿐만 아니라 콘텐츠 브라우저(Content Browser) 에서 스태틱 메시 수를 관리하기도 더 쉬워집니다.

가능하다면 씬에서 반복적으로 사용되는 창, 문, 의자 같은 요소는 Rhino에서 블록으로 만들어 이러한 이점을 활용하는 것이 권장됩니다.

자세한 내용은 Rhino 문서 를 참고하세요.

테셀레이션 및 렌더 메시

언리얼 엔진은 항상 트라이앵글 메시를 사용하여 오브젝트를 렌더링합니다. Rhino 파일에 파라메트릭 표면이나 NURBS로 정의된 오브젝트가 있는 경우, 이러한 표면은 트라이앵글 메시로 트랜스폼 또는 테셀레이트해야 합니다. 데이터스미스는 파일(File) > 프로퍼티...(Properties...) > 문서 프로퍼티(Document Properties) | 메시(Mesh) 에 있는 Rhino 테셀레이션 옵션을 활용합니다.

이름

설명

매끄럽지 않지만 빠름(Jagged and Faster)

퀄리티를 일부 희생하여 오브젝트를 빠르게 셰이딩하는 낮은 밀도의 메시를 생성합니다.

매끄럽지만 느림(Smoother and Slower)

속도를 일부 희생하여 오브젝트를 보다 정확하게 셰이딩하는 높은 밀도의 메시를 생성합니다.

커스텀(Custom)

생성된 메시를 보다 세부적으로 제어합니다. 밀도 슬라이더는 NURBS 표면에서 생성된 폴리곤의 밀도와 수를 대략적으로 제어합니다. 세부 제어...(Detailed controls...) 버튼을 클릭하여 추가적인 사항을 제어할 수 있습니다.

Rhino에서 커스텀 렌더 옵션을 사용하는 방법에 대한 자세한 내용은 Rhino 문서에서 Polygon Mesh Detailed Options 를 참고하세요.

트라이앵글이 향하는 방향

데이터스미스로 익스포트될 때 표면은 오리엔테이션을 유지합니다. Rhino에서는 후면을 밝은 녹색으로 설정하는 방식으로 표면의 오리엔테이션을 시각화합니다. 이렇게 하려면 문서 프로퍼티 를 실행하여 보기(View) > 디스플레이 모드(Display Modes) > 렌더링됨(Rendered) 으로 이동합니다. 해당 메뉴에서 셰이딩 세팅(Shading Settings) 을 찾아 후면(Backface) 옵션을 확인합니다. 마지막으로, 모든 후면에 대해 단일 컬러 사용(Single color for all backfaces) 컬러를 밝은 녹색으로 바꿉니다.

데이터스미스로 익스포트하기 전에 이런 방식을 통해 오리엔트가 향하는 방향이 정확한지 확인할 수 있습니다:

backward-facing

forward-facing

이 주제에 대한 자세한 내용과 권장 솔루션은 데이터스미스 임포트 프로세스에 대하여 를 참고하세요.

Rhino 머티리얼

데이터스미스는 Rhino 씬에서 찾은 서로 다른 각 표면 머티리얼마다 언리얼 엔진에서 동일한 이름을 사용하여 개별 머티리얼 에셋 을 생성합니다. 그런 다음 각 머티리얼은 데이터스미스 씬 에셋 옆의 머티리얼(Materials) 폴더에 배치됩니다.

  • 머티리얼 폴더의 각 머티리얼은 머티리얼 인스턴스 로, Rhino 파일에 설정된 프로퍼티를 노출합니다. 여기에는 컬러 값, 텍스처 맵 등이 있습니다. 이렇게 노출된 프로퍼티를 변경하여 머티리얼이 표면에 적용되었을 때 표시되는 방식을 수정할 수도 있습니다. 데이터스미스는 이러한 머티리얼 에셋을 스태틱 메시 에셋에 할당하여 Rhino 렌더러에 표시된 것과 동일한 방식으로 표면에 셰이딩을 생성합니다.

    데이터스미스는 Rhino 오브젝트에서 언리얼 엔진으로 머티리얼만 임포트합니다. Rhino 디스플레이 컬러는 완전 무시합니다. 이런 식으로 언리얼 엔진으로 임포트한 시각적 결과가 Rhino 렌더링과 최대한 일치하도록 합니다.

  • 데이터스미스는 머티리얼/마스터(Materials/Master) 폴더에 부모 머티리얼 세트도 생성합니다. 이들 각각은 '머티리얼' 폴더에 있는 최소 하나 이상의 머티리얼 에셋에 대한 부모입니다. 머티리얼 그래프를 보다 세부적으로 제어하여 표면의 표시 방식을 정의하거나, 추가적인 파라미터를 자손 인스턴스에 노출하거나, 노출된 파라미터가 렌더링 동안 참조되는 방식을 변경하고 싶은 경우에는 이러한 부모 머티리얼을 편집할 수 있습니다.

    부모 머티리얼을 변경할 경우 해당 부모로부터 상속을 받는 모든 머티리얼 인스턴스도 자동으로 변경된다는 점에 유의해 주세요. 보통 부모 머티리얼을 수정하기 전에 먼저 복제하고, 복제본을 변경한 다음에 최종적으로 특정 머티리얼 인스턴스가 새 복제본을 부모로 사용하도록 업데이트하는 것이 좋습니다. 자세한 내용은 데이터스미스 마스터 머티리얼 수정 을 참고하세요.

Rhino 메타데이터

'어트리뷰트 사용자 텍스트(Attribute User Text)' 메뉴에서 입력한 데이터는 데이터스미스 메타데이터로 익스포트됩니다.

데이터는 키/값 짝으로 테이블에 입력됩니다. '어트리뷰트 사용자 텍스트'를 활용하는 방법에 대한 자세한 내용은 Rhino 문서에서 Attribute User Text 를 참고하세요.

데이터스미스 씬 계층구조 만들기

데이터스미스가 Rhino 모델에서 씬 계층구조를 만드는 방식은 다음과 같습니다.

  • 데이터스미스는 Rhino 씬의 각 레이어마다 해당 레이어의 모든 오브젝트에 대한 부모 역할을 하는 액터를 언리얼 엔진에 하나씩 생성합니다. 언리얼 에디터의 '레이어(Layers)' 패널에서 생성되는 레이어와 달리, 이 액터의 계층구조는 평탄화되지 않습니다. 이 액터들은 Rhino 씬의 레이어와 정확히 똑같이 중첩됩니다.

  • 각 레이어를 나타내는 액터 아래에서 해당 레이어의 모든 인스턴스드 블록은 다른 액터로 나타납니다.

  • 마지막으로, 각 레이어와 블록을 나타내는 액터는 해당 레이어 또는 블록을 구성하는 실제 지오메트리 오브젝트를 나타내는 스태틱 메시 액터를 포함합니다. Rhino의 포인트는 언리얼 엔진에서 기본 액터로 나타납니다. 이를 통해 해당 포인트가 원래 그대로 유지됩니다.

  • Rhino의 그룹은 언리얼 엔진의 씬 계층구조에 영향을 주지 않으며, 이는 씬 계층구조에서 중요한 요소가 아닌 선택을 도와주는 요소로만 간주되기 때문입니다.

예를 들어 아래 이미지에서 Rhino 계층구조의 모든 레이어에 대응하는 액터를 언리얼 엔진에서도 가지고 있음을 알 수 있습니다. '라이트(lights) > 턴 시그널(turn signal)'처럼 Rhino에서 지오메트리 오브젝트만 포함하는 레이어의 경우, 언리얼 엔진에서는 이에 대응하는 스태틱 메시 액터만 포함합니다. Rhino의 '라이트' 레이어는 또한 두 개의 블록 인스턴스를 포함하며, 각각 'left_headlight'와 'right_headlight'로 명명됩니다. 언리얼 엔진에서는 2개 모두가 중첩된 액터로 나타나며, 해당 블록을 구성하는 지오메트리 오브젝트를 포함합니다.

크레딧: 이 페이지에 사용된 모델은 Turbosquid 사용자 tomashorin.design 님이 제공해 주셨습니다.

Select Skin
Light
Dark
언리얼 엔진 문서의 미래를 함께 만들어주세요! 더 나은 서비스를 제공할 수 있도록 문서 사용에 대한 피드백을 주세요.
설문조사에 참여해 주세요
건너뛰기

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

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

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

네이버 카페
공식 포럼