Expression Editor 워크플로에는 일부 내장된 가이드가 포함되어 있지만, 모든 단계가 항상 실행되는 것은 아니며 실행 순서나 빈도도 매번 동일하지 않을 수 있습니다. 이 워크플로를 제대로 이해하려면 최소한 몇 가지 기본 개념을 알고 있어야 합니다.
세션과 씬(Maya)
Maya에서 씬이라는 용어는 두 가지 의미로 교차 사용됩니다. 하나는 Maya 클라이언트가 열려 있고, 디폴트 세팅이 아닌 변경된 상태를 메모리에 가진 경우를 의미합니다. 다른 하나는 저장된 모든 파일을 가리킵니다. 이 표현은 워크플로 내에서 너무 모호합니다.
언리얼 엔진의 워크플로는 '씬'의 콘텐츠를 자주 그리고 대규모로 변경하며, 어떤 단계에서는 씬을 완전히 비우기도 합니다. 이 모든 주요 오퍼레이션은 오로지 메타휴먼 DNA(간단히 'DNA') 데이터에만 의존합니다. 따라서 씬을 저장해도 대부분 유용하지 않습니다.
따라서 Maya의 세션이라는 용어를 사용하려고 하는데, 여기서는 Expression Editor 창이 활성화되어 있고 DNA 로딩 명령이 실행된 Maya 인스턴스를 의미합니다.
언리얼 엔진에서 씬이라고 할 때는 언리얼 엔진에서 직접 관리하지 않는 Maya 메모리 내의 콘텐츠만 의미합니다(예: 아웃라이너 및 뷰포트에 있는 오브젝트).
세션 데이터
Maya를 시작하고 Expression Editor 창을 열면 헤드 DNA 파일을 로드할 수 있습니다. 파일이 로드되면 해당 데이터의 인스턴스가 메모리에 존재하게 되며, Expression Editor 창에서 레퍼런스됩니다.
워크플로의 여러 포인트에서 메모리에 있는 DNA를 업데이트하거나 DNA 파일을 디스크에 저장할 수 있습니다. 이러한 경우에 영향을 받거나 저장되는 것은 위에서 언급한 DNA 인스턴스입니다.
이는 구현상의 디테일이 아니라 반드시 기억해야 하는 중요한 내용입니다.
편집 작업은 Maya 씬(세션의 콘텐츠, 즉 Maya 팩토리 오브젝트)에서 수행되지만, 이는 대부분의 경우 씬의 콘텐츠가 메모리에 있는 DNA 데이터와 다를 수 있다는 뜻입니다. 워크플로에서 'DNA 업데이트'를 자주 해야 하는데, 이는 거의 항상 씬의 콘텐츠를 가져와 언리얼 엔진에서 관리하는 DNA 데이터가 저장된 메모리 영역에 기록하는 작업을 의미합니다.
DNA를 익스포트할 때 씬의 상태가 자동으로 반영되는 것이 아니라 마지막으로 업데이트되었을 때의 메모리 내 DNA 상태가 반영됩니다.
이 부분이 지금은 혼란스러울 수 있지만, Expression Editor를 실제로 사용하다 보면 이해가 될 것입니다.
이러한 비동기적 비헤이비어가 발생하는 이유는, 일부 DNA 오퍼레이션이 마지막 편집 이후 몇 초에서 몇 분까지 걸리는 연산을 필요로 하기 때문입니다(예: 여러 LOD에 변경사항을 전파하거나 자동으로 조인트를 일치시키는 작업 등).
다음 단계
메타휴먼 DNA, 릭 정의 및 릭 오퍼레이션
메타휴먼 DNA, 릭 정의, 릭 오퍼레이션에 대한 정보를 살펴봅니다.
편집 모드
Expression Editor의 작업별 편집 모드를 살펴봅니다.