데이터프렙 개요

데이터프렙 시스템과 그 작동 원리를 살펴봅니다.

이 페이지에서는 비주얼 데이터프렙(Visual Dataprep) 시스템의 개요와 함께 리얼타임 시각화에 사용할 3D 데이터를 준비하기 위해 커스텀 임포트 레시피를 생성하는 방법에 대해 설명합니다.

비주얼 데이터프렙 활성화

프로젝트에서 다음과 같은 플러그인을 활성화합니다.

  • 데이터프렙 에디터(DataPrep Editor)

  • 데이터스미스 임포터(Datasmith Importer)

  • 데이터프렙 지오메트리 연산(Dataprep Geometry Operations) - 이 플러그인은 특정 필터 및 연산에 필요합니다.

  • 데이터스미스에서 지원하는 다른 소스 파일에서 임포트하려면 해당 파일 타입을 위해 다른 임포터 플러그인을 활성화해야 할 수도 있습니다. 자세한 내용은 언리얼 엔진에 데이터스미스 콘텐츠 임포트 페이지를 참고하세요.

플러그인을 활성화하는 방법에 대한 자세한 내용은 플러그인으로 작업하기 페이지를 참고하세요.

건축, 엔지니어링, 건설(Architecture, Engineering, and Construction) 또는 자동차, 제품 디자인, 제조(Automotive, Product Design, and Manufacturing) 카테고리의 템플릿에서 언리얼 프로젝트를 시작한 경우 위 플러그인 중 일부가 이미 활성화되어 있을 수 있습니다.

비주얼 데이터프렙 에셋

비주얼 데이터프렙 시스템은 데이터프렙 에셋이라고 하는 새로운 종류의 에셋을 기반으로 합니다. 이 에셋은 일련의 단계를 시각적으로 배치한다는 점에서 블루프린트와 유사합니다. 하지만 이 데이터프렙 그래프의 목적은 하나 이상의 지정한 입력 파일에서 읽은 씬 데이터를 변환하는 것입니다.

새 데이터프렙 에셋을 생성하려면 콘텐츠 브라우저(Content Browser)'에서 우클릭하고 컨텍스트 메뉴에서 데이터프렙(Dataprep) > 데이터프렙 에셋(Dataprep Asset) 을 선택합니다.

데이터프렙 에셋 생성

데이터프렙 에디터 UI

블루프린트 클래스와 마찬가지로 데이터프렙 에셋에는 특수한 전용 에디터 창이 있습니다. 콘텐츠 브라우저 에 있는 데이터프렙 에셋을 더블클릭하면 이 창을 열 수 있습니다.

데이터프렙 에디터 UI는 데이터프렙 워크플로의 다양한 지점에서 사용할 여러 패널로 나누어져 있습니다.

숫자

이름

설명

1

툴바(Toolbar)

임포트(Import), 실행(Execute), 커밋(Commit) 액션 등 데이터프렙 워크플로에서 가장 중요한 사용자 액션에 대한 바로가기를 제공합니다.

2

콘텐츠 브라우저 프리뷰(Content Browser Preview)

입력 파일에서 임포트한 모든 에셋을 나열합니다. 그래프를 커밋 했을 때 비주얼 데이터프렙 시스템이 콘텐츠 브라우저 에 생성할 에셋의 프리뷰입니다.

3

뷰포트 프리뷰(Viewport Preview)

입력 파일에서 임포트한 3D 씬의 비주얼 프리뷰를 표시합니다.

4

월드 아웃라이너 프리뷰(World Outliner Preview)

입력 파일에서 임포트한 3D 씬에 있는 모든 액터를 나열합니다. 비주얼 데이터프렙 시스템이 레벨에 생성할 액터와 레벨의 월드 아웃라이너(World Outliner) 에 생성될 씬 계층구조의 프리뷰입니다.

5

세팅(Settings) 패널

이 패널을 사용하여 3D 씬을 임포트할 입력 파일과 프로젝트의 콘텐츠 브라우저 에서 에셋을 생성할 위치를 지정합니다.

데이터프렙 에셋의 인스턴스 에서 오버라이드할 수 있도록 데이터프렙 그래프 내 파라미터를 노출한 경우, 여기에 나열된 파라미터를 파라미터화(Parameterization) 섹션에서도 확인할 수 있습니다. 자세한 내용은 데이터프렙 인스턴스 작업 페이지를 참고하세요.

6

팔레트(Palette)

데이터프렙 그래프 에디터로 드래그하여 임포트 레시피를 빌드할 수 있는 구성 요소를 제공합니다.

7

데이터프렙 그래프 에디터(Dataprep Graph Editor)

데이터프렙 레시피를 준비할 수 있는 영역으로, 데이터프렙 시스템이 언리얼 엔진에서 리얼타임 시각화를 위한 입력 콘텐츠를 준비하기 위해 왼쪽에서 오른쪽으로 수행할 단계입니다.

8

디테일(Details) 패널

메인 레벨 에디터(Level Editor)의 디테일 패널과 마찬가지로 월드 아웃라이너 프리뷰 에서 선택한 액터에 대한 정보를 표시합니다. 여기에 표시되는 세팅은 읽기 전용으로, 데이터프렙 그래프가 액터에 미치는 효과를 평가할 수 있도록 참조용으로만 제공됩니다.

데이터프렙 워크플로

비주얼 데이터프렙 에셋을 구성하기 위한 일반적인 워크플로는 다음 단계를 따릅니다.

  1. 입력 파일 지정 : 오른쪽 상단의 세팅 패널 에서 임포트하려는 각 파일 또는 입력 파일의 각 폴더에 새 입력 프로듀서를 생성합니다. 톱니바퀴 모양의 아이콘을 클릭하여 코드 허용치(Chord Tolerance)스티치 기법(Stitching Technique) 과 같은 추가 지오메트리 및 테셀레이션 옵션을 환경설정합니다.

    비주얼 데이터프렙 프로듀서 세팅 임포트

    다음과 같은 출력(Output) 세팅을 커스터마이징할 수도 있습니다.

    • 폴더(Folder) 는 임포트된 에셋을 보관하기 위해 프로젝트의 콘텐츠 브라우저 에 생성할 폴더의 이름을 결정합니다. 기본적으로 에셋은 데이터스미스에 의해 타입별로 이 폴더 내의 서브폴더에 배포됩니다. 예를 들어 하나는 스태틱 메시 에셋용, 하나는 머티리얼용, 하나는 텍스처용으로 분류됩니다. 데이터프렙 그래프를 빌드할 때 폴더로 출력(Output to Folder) 연산을 사용하여 이 디폴트 배포 방식을 오버라이드할 수 있습니다.

    • 레벨 이름(Level Name) 은 씬을 보관하기 위해 생성할 새 레벨 에셋의 이름을 설정합니다. 데이터프렙 그래프의 결과를 커밋하고 나면 해당 서브레벨을 추가하여 임포트한 씬을 프로젝트의 모든 레벨에 추가할 수 있습니다.

  2. 예비 임포트 : 툴바의 임포트 버튼을 눌러 소스 파일을 임시 월드에 임포트합니다.

    파일에서 읽은 콘텐츠로 3D 뷰포트 및 기타 프리뷰 패널이 업데이트되는 것을 볼 수 있습니다. 이 콘텐츠는 아직 프로젝트에 추가되지 않았으며, 데이터프렙 에디터 내부에만 존재하는 임시 월드에 있습니다. 이에 따라 결과를 프로젝트에 저장하기 전에 입력 파일에서 읽은 에셋과 씬 계층구조를 수정할 수 있습니다.

    엄밀히 말하자면 이 단계는 선택 사항이지만, 데이터프렙 그래프를 빌드할 때 그 효과를 더 쉽게 평가할 수 있게 해줍니다.

  3. 데이터프렙 그래프 빌드 : 팔레트에서 Select ByOperations 노드를 데이터프렙 그래프 에디터에 드래그하여 수행할 순서대로 액션 노드를 연결합니다. 자세한 내용은 아래의 데이터프렙 그래프를 참고하세요.

  4. 그래프 테스트 : 툴바의 실행 버튼을 눌러 빌드된 데이터프렙 그래프를 통해 소스 파일에서 임포트한 데이터를 실행합니다. 프리뷰 패널이 업데이트되어 결과가 표시되는 것을 볼 수 있습니다.

    이름을 우클릭하고 비활성화(Disable) 옵션을 선택하면 디버깅을 위해 개별 블록 또는 액션 노드를 비활성화할 수 있습니다. 비활성화된 블록 또는 액션은 그래프에서 회색으로 표시됩니다. 메뉴를 다시 열고 활성화(Enable) 옵션을 선택하면 비활성화된 항목을 활성화할 수 있습니다.

  5. 커밋 : 입력 파일에서 임포트한 3D 데이터에 미치는 그래프의 효과가 만족스러우면 툴바의 커밋(Commit) 버튼을 눌러 임포트 프로세스를 마무리합니다.

    결과를 커밋하면 비주얼 데이터프렙 시스템이 콘텐츠 브라우저 프리뷰 의 에셋을 프로젝트의 에셋에 저장하고, 현재 열려 있는 레벨을 수정하여 월드 아웃라이너 프리뷰 에 표시된 액터의 계층구조를 추가합니다.

    액터 계층구조를 새 레벨에 임포트하려면 세팅 패널의 서브레벨(Sub-Level) 세팅에서 레벨 이름을 설정합니다. 이름이 중복되지 않는 경우 비주얼 데이터프렙 시스템이 이 이름으로 새 레벨을 생성하고 해당 레벨에 액터를 추가한 후 현재 언리얼 에디터의 메인 창에 열려 있는 레벨 내의 서브레벨로 이 레벨을 추가합니다.

통계 패널

비주얼 데이터프렙 에셋 에디터의 메인 메뉴에서 통계(Statistics) 패널을 엽니다. 이렇게 하려면 창(Window) > 통계 를 클릭합니다. 이 패널은 데이터프렙 그래프를 실행하기 전후의 드로 콜, 액터 수 또는 총 버텍스 수와 같은 데이터 메트릭을 간단하게 비교하여 보여줍니다.

데이터프렙 그래프를 실행하기 전후의 메트릭을 비교하여 보여주는 비주얼 데이터프렙 통계 패널 예시

데이터프렙 그래프

모든 데이터프렙 에셋의 중심에는 지정한 입력 파일에 시스템이 수행할 연산 세트인 데이터프렙 그래프가 있습니다.

모든 데이터프렙 그래프는 액션(Action) 노드라고 하는 세로로 쌓인 블록으로 구성되어 있습니다. 예를 들어 위에 있는 그래프에는 세 개의 액션 노드가 포함되어 있습니다. 데이터프렙 그래프를 실행하면 왼쪽의 Start 노드에서부터 작업이 시작되며, 왼쪽에서 오른쪽으로 차례차례 각 액션 노드가 수행됩니다.

액션의 테두리를 드래그하여 전체 텍스트를 읽을 수 있도록 액션 크기를 가로로 조정할 수 있습니다.

액션 크기 조정

조건부 분기가 가능한 블루프린트 그래프와는 달리 데이터프렙 그래프는 단일 선형 실행 경로를 따라 항상 왼쪽에서 오른쪽으로 진행됩니다. 또한 연속적인 액션 노드 사이에는 데이터 플로가 없습니다. 모든 액션은 동일한 컨텍스트, 즉 제공한 입력 파일에서 임포트한 에셋과 액터 세트를 사용합니다.

각 액션은 하나 이상의 블록 스택입니다. 데이터프렙 그래프가 액션을 실행하면 액션 노드의 각 블록을 위에서부터 아래로 처리합니다.

액션 빌드를 시작하려면 왼쪽 팔레트에서 블록을 그래프 에디터로 드래그하거나, 그래프 에디터의 배경을 우클릭하고 컨텍스트 팔레트에서 블록을 선택하면 됩니다.

여러 액션을 함께 그룹으로 묶을 수 있습니다. 이렇게 하려면 다음 단계를 따릅니다.

  1. 클릭하고 드래그하여 그룹으로 묶을 액션을 선택합니다.

  2. 그룹을 우클릭합니다.

  3. 컨텍스트 메뉴에서 그룹 액션(Group Actions) 을 선택합니다.

그룹을 우클릭하고 컨텍스트 메뉴에서 액션 그룹 비활성화(Disable Action Group) 를 선택하여 액션 그룹 내의 모든 액션을 비활성화할 수 있습니다.

액션 그룹을 해체하려면 그룹을 우클릭하고 언그룹 액션(Ungroup Actions) 을 선택합니다.

연산, 필터, 트랜스폼

데이터프렙 액션 노드에서 사용할 수 있는 세 가지의 기본 블록 타입은 다음과 같습니다.

  • 연산(Operations) 은 에셋, 액터 또는 컴포넌트를 사전 정의된 방식으로 수정합니다. 예를 들어 위에 보이는 머티리얼 설정(Set Material), 컴팩트 씬 그래프(Compact Scene Graph), 단순 콜리전 설정(Set Simple Collision) 블록은 모두 다른 타입의 연산입니다.

    데이터프렙 그래프에서 사용할 수 있는 다양한 연산에 대한 자세한 내용은 데이터프렙 연산 레퍼런스 페이지를 참고하세요.

  • 기준(Select By) 블록이라고도 하는 필터(Filter) 는 현재 액션 블록에서 해당 연산이 수정해야 하는 에셋, 액터, 컴포넌트를 결정합니다. 기본적으로 모든 액션 단계는 입력 파일에서 생성된 임시 월드에 있는 모든 에셋, 액터, 컴포넌트에 연산을 수행합니다. 이러한 필터 블록을 사용하면 해당 오브젝트의 서브셋을 정의할 수 있으므로 액션 노드에서 수정할 오브젝트를 제어할 수 있습니다.

    데이터프렙 그래프에서 사용할 수 있는 다양한 선택 필터에 대한 자세한 내용은 데이터프렙 선택 레퍼런스 페이지를 참고하세요.

  • 트랜스폼(Transforms) 은 자칫 복잡할 수 있는 방식으로 현재 선택된 에셋, 액터, 컴포넌트를 변경합니다. 이러한 점에서 트랜스폼은 필터와도 유사하지만, 필터 블록은 전달된 오브젝트 목록을 줄일 수만 있는 반면에 트랜스폼 블록은 현재 선택된 항목에 오브젝트를 추가할 수 있습니다.

    예를 들어 씬 계층구조에서 오브젝트의 특정 트리를 선택하려는 경우가 있습니다. 이렇게 하려면 필터 블록을 사용하여 전체 씬 엘리먼트 세트를 소수의 특정 부모 엘리먼트로 좁힌 다음, 트랜스폼 블록을 사용하여 선택한 엘리먼트의 자손을 포함하도록 선택 영역을 다시 확장할 수 있습니다.

    액션 내에서 선택한 오브젝트 세트를 확장하거나 수정하는 데 사용할 수 있는 다양한 트랜스폼에 대한 자세한 내용은 데이터프렙 선택 트랜스폼 레퍼런스 페이지를 참고하세요.

액션 예시

아래 그림에 있는 액션은 CAD 어셈블리 파트에 새 머티리얼을 설정합니다. 이 노드는 필터 및 연산 스택을 통해 위에서부터 아래로 데이터를 처리하는 일련의 단계를 수행합니다.

샘플 액션 노드

단계 번호

이름

블록 타입

설명

1

입력 핀(Input Pin)

해당 없음

모든 액션은 전체 데이터(임포트된 파일에서 찾은 에셋과 액터 모두 포함)를 임시 월드에서 수집하고, 해당 오브젝트를 스택 상단에 있는 블록으로 전달합니다.

2

태그로 필터링(Filter by Tag)

필터

이 필터는 'Metal' 태그가 있는 액터만 유지하고 해당 액터 목록을 다음 블록으로 전달합니다.

3

액터 라벨로 필터링(Filter by Actor Label)

필터

이 필터는 이름에 'Mechanical'이라는 단어가 포함된 액터만 유지하고 해당 액터를 다음 블록으로 전달합니다.

4

단순 콜리전 설정

연산자

이 연산자는 위의 필터에 의해 전달된 액터 세트가 레퍼런스하는 모든 스태틱 메시 에셋에 박스 콜리전 셰이프를 설정한 다음, 동일한 액터 목록을 다음 블록으로 전달합니다.

5

머티리얼 설정

연산자

마지막 연산자는 위의 필터에 의해 전달된 액터 세트가 소유한 모든 스태틱 메시 컴포넌트에서 머티리얼을 모두 찾아 블록의 머티리얼(Material) 세팅에 지정된 대체 항목으로 해당 머티리얼을 바꿉니다.

이 액션의 모든 블록이 완료되면 그래프의 다음 액션이 실행되기 시작합니다. 다음 액션이 시작되면 임시 월드에서 모든 데이터를 다시 한번 수집합니다. 이전 블록에서 적용한 모든 필터는 더 이상 고려되지 않지만, 이전 액션에서 씬에 적용한 머티리얼 변경, 액터 삭제 등의 모든 변경사항은 다음 액션에서도 유지됩니다.

필터 작업

모든 필터 블록은 연산 블록으로 수정하려는 에셋, 액터, 컴포넌트의 정확한 목록을 손쉽게 캡처하고 필터에서 예상한 효과가 나타나는지 간편하게 확인할 수 있는 몇 가지 추가 옵션을 제공합니다.

이러한 옵션에 액세스하려면 필터 블록을 우클릭하고 컨텍스트 메뉴에서 필터(Filter) 섹션을 찾습니다.

필터 액션 서브메뉴

여러 필터 블록을 대상으로 작업하려면 Ctrl 키를 누른 상태에서 선택 영역에 포함할 블록을 모두 좌클릭합니다. 작업하려는 블록이 모두 하이라이트되었다면 이러한 블록 중 아무거나 우클릭합니다. 클릭하고 드래그하여 여러 블록을 선택하는 방법도 있습니다.

선택된 에셋에서 필터 생성

뷰포트(Viewport), 아웃라이너(Outliner) 또는 에셋(Asset) 패널에서 하나 이상의 액터 또는 컴포넌트를 선택한 상태에서 데이터프렙 그래프 에디터의 아무 곳이나 우클릭하고 컨텍스트 메뉴에서 선택에서 필터 생성(Create Filter From Selection) 을 선택합니다.

모든 선택된 에셋을 반환하는 필터 생성

새 필터는 선택할 액터 및 에셋의 수와 목록의 첫 번째 액터 또는 에셋을 보여줍니다.

이 목록을 직접 편집할 수는 없지만 다음 작업을 수행하여 이 목록을 포함하는 새 필터를 생성할 수 있습니다.

  1. 데이터프렙 레시피의 선택으로 필터링(Filter by Selection) 필터를 우클릭합니다.

  2. 컨텍스트 메뉴에서 프리뷰 필터(Preview Filter(s)) 를 선택하면 이 필터가 선택하는 '월드 아웃라이너 프리뷰' 패널의 액터와 에셋이 하이라이트됩니다.

  3. 새 액터와 에셋을 필터에 추가하려면 Ctrl 키를 누른 상태에서 '월드 아웃라이너 프리뷰' 패널의 액터와 에셋을 클릭합니다.

  4. 데이터프렙 그래프 에디터의 아무 곳이나 우클릭하고 컨텍스트 메뉴에서 선택에서 필터 생성 을 선택합니다.

필터 로직 반전

필터 > 필터 선택 반전(Inverse Filter(s) Selection) 을 선택하여 선택 기준 블록의 선택 로직을 반전시켜 이 블록을 제외 기준(Exclude By) 블록으로 바꿉니다. 이 작업을 수행하면 설정한 기준과 일치하지 않는 씬 엘리먼트 세트에만 동일한 액션의 연산이 적용됩니다.

필터 결과 프리뷰

필터 > 프리뷰 필터 를 선택하여 콘텐츠 브라우저 프리뷰월드 아웃라이너 프리뷰 패널에서 필터로 선택된 모든 에셋과 액터 옆에 체크 표시를 합니다.

선택한 필터와 일치하는 오브젝트 프리뷰

필터 또는 선택된 필터 세트는 한 번에 하나만 프리뷰할 수 있습니다. 다른 필터나 필터 세트를 프리뷰하기 시작하면 이전 필터의 프리뷰가 중지됩니다.

언리얼 엔진의 이전 버전을 위해 작성된 페이지입니다. 현재 언리얼 엔진 5 버전을 위해 업데이트되지 않았습니다.