이 튜토리얼은 절대적인 월드 포지션이 아니라 머티리얼의 로컬 공간 값을 사용하여 슬라이스할 위치를 결정합니다.
슬라이스 이펙트를 생성하려면 먼저 이미시브 노드 그래프를 생성하여 단색 머티리얼을 만든 후 메시 로컬 스페이스와 머티리얼 함수를 사용하여 메시에서 슬라이스를 수행할 위치를 결정합니다.
이미시브 노드 그래프 생성하기
-
머티리얼 루트 노드를 선택하고 디테일(Details) 패널에서 양면(Two Sided) 옵션을 체크합니다.
-
블렌드 모드(Blend Mode) 드롭다운 메뉴를 열고 마스크 적용(Masked) 을 선택합니다.
-
노드 그래프에서 우클릭하고 지정된 이름을 검색하여 복사한 머티리얼에 다음 노드를 추가합니다.
-
Constant 노드(3)
-
Constant3Vector 표현식 노드(2)
-
Clamp 노드(2)
-
Append3Vector 노드
-
WorldPosition 노드
-
Subtract 노드
-
DotProduct 노드
-
Multiply 노드
-
Linear Interpolate 노드
-
TwoSidedSign 노드
-
-
첫 번째 Constant3Vector 노드를 두 번 클릭하고 머티리얼에 외부 컬러를 추가합니다.
-
첫 번째 Constant3Vector 노드에서 흰색 핀에서 드래그하여 머티리얼 루트 노드의 베이스 컬러(Base Color) 입력에 연결합니다.
-
첫 번째 Constant 노드의 핀에서 드래그하여 머티리얼 루트 노드의 러프니스(Roughness) 입력에 연결하고 값을 0.75 로 변경합니다.
이 환경설정은 머티리얼이 할당된 오브젝트의 베이스 컬러와 라이트에 대한 머티리얼의 반응을 생성합니다. 다음 환경설정은 메시의 내부를 입체로 보이게 해 주는 이미시브를 생성합니다.
-
TwoSidedSign 노드에서 드래그하여 Clamp 노드에 연결하고, Clamp 노드에서 드래그하여 Lerp 노드의 알파(Alpha) 입력에 연결합니다.
-
두 번째 Constant3vector 노드를 두 번 클릭하고 메시 내부에 컬러를 추가합니다. 그런 다음 Constant3Vector 노드의 흰색 핀에서 드래그하여 Lerp 노드의 A 입력에 연결합니다.
-
Lerp 노드를 선택하고 B 입력 값을 0.0 으로 설정합니다.
-
Lerp 노드에서 드래그하여 Multiply 노드의 A 입력에 연결합니다.
-
Multiply 노드를 선택하고 B 입력 값을 0.3 으로 변경합니다.
-
Multiply 노드에서 드래그하여 머티리얼 루트 노드의 이미시브 컬러(Emissive Color) 입력에 연결합니다.
이미시브 노드 그래프가 완성되었습니다.
위치 그래프
다음으로, 메시의 위치를 타기팅하는 위치 그래프를 생성하여 프로젝트에서 메시의 부분을 제거합니다.
이미 이미시브 그래프를 사용하는 노드를 복사하여 필요 없는 그래프 부분을 삭제하고 이펙트를 생성하는 데 필요한 노드 구성을 추가할 수 있습니다.
메시 위치 데이터를 타기팅하면 머티리얼을 사용하여 메시의 일부를 사라지게 만들 수 있습니다. 이 이펙트는 애니메이션 제작에도 사용됩니다.
'머티리얼 에디터(Material Editor)'에서 우클릭하고 검색창에 Functions 를 입력하여 머티리얼 함수 노드를 생성합니다. MaterialFunctionCall 옵션을 선택합니다. '머티리얼 에디터'에 Unspecified Function 노드가 나타납니다.
'머티리얼 에디터'에서는 특정 머티리얼 함수를 검색할 수 없으며, 대신 지정되지 않은 머티리얼 함수 노드를 생성하고 함수를 할당해야 합니다.

Unspecified Function 노드를 선택하고 '디테일' 패널의 머티리얼 함수(Material Function) 드롭다운 메뉴에서 Local Position 머티리얼 함수를 할당합니다. '머티리얼 에디터'에 LocalPosition 머티리얼 함수 노드가 자동으로 나타납니다.
두 번째 Unspecified Function 노드를 생성하고 ObjectLocalBounds 함수를 이 노드에 할당합니다.

-
새 머티리얼 인스턴스 를 생성하여 엽니다.
-
MainMaterialNode를 선택하고 블렌드 모드 세팅을 마스크 적용 으로 변경합니다.
-
'머티리얼 에디터'에 다음과 같은 노드를 추가합니다.
-
Divide 노드
-
Constant3Vector 노드
-
ComponentMask 노드
-
Clamp 노드
-
Constant 노드(2)
-
Subtract 노드(2)
-
-
Constant3Vector 노드를 선택하고 더블클릭하여 노드에 컬러를 추가합니다.
-
Constant3Vector 노드의 화이트(White) 출력 핀에서 드래그하여 MainMaterialNode의 베이스 컬러(Base Color) 입력에 연결합니다.
-
Constant 노드를 선택하고 값을 .75 로 설정합니다.
-
Constant 노드에서 드래그하여 MainMaterialNode의 러프니스 입력에 연결합니다.
-
LocalPosition 노드의 인스턴스 로컬 위치(Instance Local Position) 핀에서 드래그하여 Divide(Divide) 노드의 A 입력에 연결합니다.
-
ObjectLocalBounds 노드의 로컬 바운드 크기(Local Bounds Size) 핀에서 드래그하여 Divide 노드의 B 입력에 연결합니다.
-
Divide 노드에서 드래그하여 첫 번째 Subtract 노드의 B 입력에 연결합니다.
-
Subtract 노드의 A 입력 값을 1.0 으로 변경합니다.
-
첫 번째 Subtract 노드에서 드래그하여 Mask 노드에 연결합니다.
-
Mask 노드에서 드래그하여 두 번째 Subtract 노드의 A 입력에 연결합니다.
-
두 번째 Constant 노드를 선택하고 값을 0.1 로 변경합니다.
-
Constant 노드에서 드래그하여 두 번째 Subtract 노드의 B 입력에 연결합니다.
-
두 번째 Subtract 노드에서 드래그하여 Clamp 노드의 화이트 입력에 연결합니다.
-
Clamp 노드의 최대(Max) 값을 1.0 으로 변경합니다.
-
머티리얼 루트 노드를 선택하고 '디테일 패널'에서 블렌드 모드 값을 마스크 적용 으로 변경합니다. 메인 루트 노드에서 오파시티 마스크(Opacity Mask) 옵션을 사용할 수 있게 됩니다.
-
Clamp 노드에서 드래그하여 머티리얼 루트 노드의 오파시티 마스크 에 연결합니다.
노드가 연결되었을 때의 환경설정입니다.

첫 번째 Subtract 노드에서 A 입력 값을 변경하면 메시의 룩이 변경됩니다.

오브젝트의 로컬 위치(오브젝트 중앙 왼쪽/아래쪽/뒤쪽은 모두 음수, 오브젝트 중앙 오른쪽/위쪽/앞쪽은 모두 양수인 X/Y/Z의 그레이디언트)를 구합니다. 이 값은 오브젝트의 월드 스케일에 의해 결정됩니다.
예를 들어 값을 [0, 1] 범위에 넣는 등 값을 정규화하려면 해당 값을 오브젝트 바운드에 따라 지정된 최대 범위로 나눕니다. 1 - B 입력은 그레이디언트의 방향을 반전시켜 오른쪽/위쪽/앞쪽의 값이 왼쪽/아래쪽/뒤쪽의 값보다 낮아집니다.
ComponentMask 노드는 파란색 채널이 있는 DotProduct 노드의 대안으로, 동일한 결과를 제공합니다. 그런 다음 위와 같이 파라미터로 변환된 상수 중 하나인 클립 값(0, 1 범위에 속하는 값)을 빼고 음수 값은 오파시티 슬롯에 연결하기 전에 범위제한하면 됩니다.