피벗 페인터 2 머티리얼 함수는 텍스처를 사용하여 피벗 페인터 2 MAXScript에 저장된 유용한 모델 정보에 접근하고 디코딩할 수 있습니다. MAXScript의 각 텍스처 출력은 머티리얼에서 직접 레퍼런스되지만, 텍스처 샘플링 후 적절한 단계별 과정을 거치지 않으면 올바르지 않은 값이 나오게 됩니다. 이 페이지의 머티리얼 함수들은 텍스처 정보를 빠르게 디코딩하는 작업이 한층 쉬워집니다.
이 페이지의 머티리얼 함수 대다수는 피벗 페인터 2 피벗 및 회전 정보를 사용하여 머티리얼을 통한 특정 이펙트를 생성할 수 있도록 해 주지만, 피벗 페인터 2의 더욱 돋보이는 장점 중 하나는 폴리지용 샘플 셰이더인 PivotPainter2FoliageShader 가 제공되어 사용 편의성이 높다는 것입니다. 이 머티리얼 함수가 있으면 직접 머티리얼 네트워크를 만들지 않아도 폴리지에 사용할 모델 및 피벗 페인터 2로 생성된 텍스처 구성 작업이 순식간에 완료되므로 바람과 터뷸런스를 빠르게 생성할 수 있습니다.
피벗 페인터 2 함수
다음은 피벗 페인터 2.0에 관련된 모든 함수 목록입니다.
PivotPainter2FoliageShader
이 머티리얼 함수에는 텍스처 및 숫자 파라미터가 포함되어 있으며, 특정 에셋에 맞게 변경할 수 있습니다.
PivotPainter2FoliageShader Workflow
이 함수의 경우, 머티리얼의 머티리얼 인스턴스를 생성해야 머티리얼 함수에 이미 구성된 바람 및 터뷸런스 파라미터에 액세스할 수 있습니다.
또한 이 함수의 경우 머티리얼 인스턴스를 생성하고, 거기에서 머티리얼 함수의 파라미터에 접근하여 피벗 페인터 2 셰이더에 수정을 가할 것을 추천합니다.
이미지를 클릭하면 최대 크기로 볼 수 있습니다
| 항목 | 설명 |
|---|---|
| 입력 | |
| Material Attributes | 머티리얼 내 탄젠트 스페이스 노멀을 사용하고 있으며 탄젠트 스페이스 노멀 사용(Use Tangent Space Normals) 옵션이 체크 해제되어 있는지 확인합니다. 노멀은 내부적으로 월드 스페이스로 변환됩니다. |
| Pivot Painter Texture Coordinate | 어느 텍스처 좌표 UV가 사용되는지 가리키는 입력을 받습니다. |
| 출력 | |
| Final Material with World Space Normals | 이 출력 머티리얼 어트리뷰트는 머티리얼 인스턴스에 Animate Level "X" Normals 옵션이 켜진 경우 입력 머티리얼 어트리뷰트의 월드 포지션 오프셋 및 노멀 출력을 대체합니다. |
| Modified World Space Normal Component | 이 출력은 변경된 에셋 노멀 자체를 반환합니다. |
| 월드 포지션 오프셋 컴포넌트(World Position Offset Component) | 이 출력은 새로운 월드 포지션 오프셋 값을 반환합니다. |
ms_PivotPainter2_CalculateMeshElementIndex
이 머티리얼 함수는 모델의 UV에서 모델의 엘리먼트 ID를 가져옵니다.
| 항목 | 설명 |
|---|---|
| 입력 | |
| Data Texture Dimensions | 텍스처 프로퍼티 노드를 사용하여 텍스처의 치수를 수집합니다. |
| Pivot Painter UV Coordinates | 모델의 UV에서 모델 엘리먼트의 엘리먼트 ID를 가져옵니다. |
| 출력 | |
| Index | 이 출력은 모델의 UV에서 모델 엘리먼트 ID를 가져옵니다. |
ms_PivotPainter2_Decode8BitAlphaAxisExtent
이 머티리얼 함수는 8비트 축 익스텐트 텍스처 데이터 정보를 피벗 페인터 2 MAXScript에서 월드 스페이스 데이터로 리스케일링합니다.
| 항목 | 설명 |
|---|---|
| 입력 | |
| 8 Bit Alpha Extent Value | 텍스처의 피벗 페인터 2 알파 텍스처 컴포넌트를 8비트 알파 익스텐트 값으로 삽입합니다. 렌더 옵션의 피벗 페인터 2 MAXScript에 있는 알파 출력 드롭다운 옵션에서 적절한 옵션을 선택하여 생성할 수 있습니다. |
| 출력 | |
| Rescaled Extent | 출력값은 오브젝트의 피벗 포인트부터 시작되어 선택된 모델의 주어진 축에서의 길이를 나타냅니다. 반환값은 8~2048 사이의 8의 배수입니다. |
ms_PivotPainter2_DecodeAxisVector
이 머티리얼 함수는 피벗 페인터 2의 로컬 스페이스 벡터 정보를 월드 스페이스 벡터로 변환합니다.
| 항목 | 설명 |
|---|---|
| 입력 | |
| Axis Vector RGB | 피벗 페인터 2 텍스처에서 해당 값을 출력하는 입력 RGB 벡터 정보입니다. |
| 출력 | |
| 결과(Result) | 입력 축 벡터 정보가 월드 스페이스로 변환됩니다. |
ms_PivotPainter2_DecodePosition
이 머티리얼 함수는 피벗 페인터 2의 로컬 스페이스 정보를 월드 포지션 정보로 변환합니다.
| 항목 | 설명 |
|---|---|
| 입력 | |
| Position RGB | 피벗 페인터 2 피벗 위치(16비트) 데이터를 포함하는 텍스처의 RGB 값을 삽입합니다. |
| 출력 | |
| Result | 출력값은 피벗 페인터 2가 캡처한 각 모델의 피벗 포인트 위치의 월드 스페이스 위치입니다. |
ms_PivotPainter2_ReturnParentTextureInfo
이 머티리얼 함수는 피벗 페인터 2의 Parent Index (Integer as Float) 텍스처 데이터를 사용하여 부모 서브 오브젝트의 텍스처 데이터를 읽습니다.
| 항목 | 설명 |
|---|---|
| 입력 | |
| Parent Index As Float | 이 입력은 데이터를 float 형태로 가정합니다. 부모 인덱스 'int as float' 텍스처에서 읽는 경우, 먼저 ms_PivotPainter2_UnpackIntegerAsFloat 머티리얼 함수를 사용하여 에셋을 디코딩합니다. |
| Texture Dimensions | 텍스처의 현재 치수입니다. |
| Current Index | 이 에셋이 다른 컴포넌트의 자손인지 여부를 결정하고자 하는 경우에만 이 값을 제공하면 됩니다. |
| 출력 | |
| Parent UVs | 엘리먼트의 부모 엘리먼트 픽셀 위치에 대한 UV 좌표를 출력합니다. |
| Is Child? | 오브젝트가 다른 오브젝트의 자손인 경우 1을 반환합니다. 자손이 아니면 0을 반환합니다. 현재 인덱스(Current Index) 입력에 현재 인덱스를 입력해야 합니다. 모델의 UV를 사용하여 텍스처를 참조하는 경우, 현재 인덱스는 ms_PivotPainter2_CalculateMeshElementIndex 를 사용하여 알아낼 수 있습니다. |
ms_PivotPainter2_UnpackIntegerAsFloat
이 머티리얼 함수는 피벗 페인터 2의 Integer as Float 텍스처 데이터를 디코딩합니다.
| 항목 | 설명 |
|---|---|
| 입력 | |
| Integer as Float | integer 데이터를 float 데이터로 변환할 수 있도록 디코딩합니다. |
| 출력 | |
| Result | 피벗 페인터 integer를 float 데이터로 출력합니다. |