UDN
Search public documentation:

PivotPainterToolKR
English Translation
日本語訳
中国翻译

Interested in the Unreal Engine?
Visit the Unreal Technology site.

Looking for jobs and company info?
Check out the Epic games site.

Questions about support via UDN?
Contact the UDN Staff

UE3 홈 > 스태틱 메시 > 피벗 페인터 툴
UE3 홈 > 배경 아티스트 > 피벗 페인터 툴

피벗 페인터 툴


문서 변경내역: Jeff Wilson 작성. 홍성진 번역.

개요


splash_demo.jpg

(클릭하면 비디오가 재생됩니다.)

피벗 페인터(Pivot Painter)는 모델의 버텍스 데이터에 피벗(중심점)과 로테이션(회전) 정보를 저장하는 MAXScript 입니다. 나중에 이 정보를 언리얼의 셰이서 시스템 안에서 참조하여 상호작용형 이펙트를 만들 수 있습니다.

위 샘플 비디오의 동작은 버텍스 셰이더를 사용하여 실시간으로 만든 것입니다. 풀잎 하나 하나마다 뿌리를 주위로 회전하며 굽이칩니다. 나뭇가지와 잎사귀는 계층구조를 이루면서 부모의 동작을 상속받아 각각의 피벗 포인트를 중심으로 애니메이션이 이루어 지고요. 서브-오브젝트의 회전 역시도 보관되므로, 바람에도 사실적이고 역동적인 반응이 가능합니다.

이런 셰이더 생성 작업이 2012년 1월 UDK 에 추가된 피벗 페인터 퍼티리얼 기능을 통해 훨씬 간편해 졌습니다. 위에 선보인 것같은 애니메이션이 어떻게 만들어지는지, 샘플 콘텐츠도 도움이 됩니다. 서브-오브젝트 피벗 포인트를 구하는 것도 이제 3D Studio Max 에서 피벗 페인트 스크립트로 메시를 처리해 주고, 파일을 임포트하여, 피벗 페인터 함수를 사용해 머티리얼을 만들기만 하면 끝입니다. 머티리얼 함수에는 2단계 계층구조와 1단계 계층구조 둘 다에 대한 피벗 포인트 출력이 들어 있습니다.

이른 식으로 동작을 만들면 나름 좋은 점이 있습니다. 이 기법으로 처리한 모델은 표준 스태틱 메시에 비해 메모리 측면에서 딱 18% 정도 클 뿐입니다. 애니메이션도 보관할 필요 없이 바로 계산되니 스켈레탈 애니메이션보다 훨씬 저렴합니다. 보통 버텍스 셰이더 인스트럭션 수는 퍼포먼스 측면에서 픽셀 인스트럭션 수보다 영향을 덜끼칩니다. 모델에 있는 버텍스의 수래봐야 화면에 있는 픽셀 수에 비할 바가 못되기 때문입니다.

아래 링크의 셰이더 예제가 보여주는 기능은 빙산의 일각에 지나지 않습니다. 제공된 정보로 이리저리 실험해 보다 보면 다른 사용법을 알아보고픈 마음이 들 것입니다. 플레이어 상호작용, 재미난 바람 설정, 포울리지에 무관한 모션, 기타 이펙트 모두 서브오브젝트 레벨 정보 접근을 통해 가능합니다.

설치


Pivot Painter 스크립트는 다음 UE3 디렉토리에서 찾을 수 있습니다: [UE3Directory]/Engine/Extras/3dsMaxScripts/PivotPainter.ms

여기서 직접 Pivot Painter 스크립트를 내려받으실 수도 있습니다: PivotPainter.ms (우클릭 후 다른 이름으로 저장)

스크립트를 설치하고 키보드 단축키와 피벗 페인터 툴을 열기 위한 메뉴를 만드는 법을 다루는 비디오입니다.

splash_installing.jpg

(클릭하면 비디오가 재생됩니다.)

프렙 툴 (Prep Tools)


스크립트의 "Prep Tools" 부분, 전체적인 프로세스에 대한 작업방식 꼼수와 정보를 다루는 비디오입니다. 프렙 툴에는 모델 엘리먼트를 별도의 오브젝트로 떼어내는(detach) 옵션, 새 중심점을 쉽게 만들 수 있는 여러가지 툴이 들어 있습니다.

splash_preptools.jpg

(클릭하면 비디오가 재생됩니다.)

하이어아키 페인터 (Hierarchy Painter)


스크립트의 "Hierarchy Painter" 부분을 다루는 비디오입니다. 툴의 이 부분은 예를 들면 가지와 잎 사이의 관계처럼 부모 자손 관계는 물론, 메시의 모델 피벗과 로테이션 정보를 저장하는 데 사용됩니다.

splash_hierarchy.jpg

(클릭하면 비디오가 재생됩니다.)

오브젝트별 페인터 (Per Object Painter)


"Per Object Painter" 스크립트 부분 아래에서 가능한 옵션을 다루는 비디오입니다. 몇 가지 사용법과 모델에 데이터를 저장하는 법에 대한 정보도 약간 다룹니다.

splash_perpainter.jpg

(클릭하면 비디오가 재생됩니다.)

언리얼 셰이더 예제


피벗 페인터를 사용하여 나무와 풀에 대한 머티리얼과 씬 셋업을 한 맵과 패키지는, 다음 UE3 디렉토리에서 찾을 수 있습니다.

  • [UE3Directory]/UDKGame/Content/TestPackages/UDNExamples/PivotPainterExamples.upk
  • [UE3Directory]/UDKGame/Content/Maps/Examples/PivotPainter_Examples.udk

3D Studio Max 예제 파일


비디오 튜토리얼에 사용된 트리 사본이 담긴 파일입니다.

  • Tree.max (우클릭 후 다른 이름으로 저장)

튜토리얼과 자막 파일


각 동영상 링크는 우클릭 > 다른 이름으로 저장해 주시기 바랍니다.

요구사항


  • 3D Studio Max - 스크립트는 3D Studio Max 2010 / 2012 로 테스트했습니다.
  • (2012년 1월 빌드부터 사용 가능한) Pivot Painter 머티리얼 함수. 함수 없이도 스크립트를 사용할 수는 있으나, 데이터 사용이 훨씬 불편해 집니다.