Animation 범주 - Stingray 셰이더 노드 참조

Animation 범주

설명

이 범주의 노드는 음영 처리되는 픽셀의 로컬 애니메이션을 시뮬레이션합니다.

노드

입력

scalar

FPS

플립북 노드가 소스 텍스처의 새 스프라이트 또는 그리드 셀로 전환되는 초당 횟수입니다.

기본값: 5

scalar

Time

현재 시스템 시간입니다. 필수 항목입니다. Input > Time 노드에서 이 값을 가져올 수 있습니다.

vector2

UV

텍스처 좌표로, 일반적으로 Vertex Inputs > Texcoord 노드의 출력입니다. 필수 항목입니다.

scalar

Sprite Rows

스프라이트 시트의 행 수입니다.

기본값: 2

scalar

Sprite Columns

스프라이트 시트의 열 수입니다.

기본값: 2

출력

Out

auto

이 프레임의 애니메이션된 텍스처에서 샘플링할 UV 좌표입니다.

플립북 노드가 UV 공간을 구성 가능한 행 및 열 수를 가진 그리드로 분할합니다. 각 프레임으로, 애니메이션에 대해 원하는 재생 속도 및 현재 시간을 기반으로 이 그리드 셀에서 무엇을 표시해야 하는지 결정합니다. 그런 다음 텍스처 좌표를 해당 단일 셀로 제한하는 출력 UV 값을 생성합니다.

노드 정의 파일: core/shader_nodes/flipbook.shader_node

입력

vector4

Vertex Position

표준 공간에서 음영 처리되는 정점의 위치입니다. 필수 항목입니다. Transform > Object To World를 사용하여 해당 값을 변환하는 경우 Vertex Inputs > Position 노드에서 이 값을 가져올 수 있습니다.

vector4

Vertex Color

잎이 구부러지는 방식을 세부적인 수준에서 지정하는 RGBA 값입니다. 일반적으로 이러한 값은 3ds Max 또는 Maya 등의 DCC 도구로 작업 중인 아티스트에 의해 메시의 정점에 페인팅됩니다.

  • 빨간색 채널은 잎 가장자리의 강도를 결정합니다.
  • 초록색 채널은 잎당 단계 변형을 결정합니다. 이 채널에서 다양한 강도로 잎을 페인팅하여 모든 잎이 동시에 같은 방향으로 움직이는 것을 방지할 수 있습니다.
  • 파란색 채널은 잎의 전체적인 강도를 결정합니다.
  • 알파 채널은 사전 계산된 주변 폐색에 사용됩니다.

필수 항목입니다.

vector3

World Normal

표준 공간에서 음영 처리되는 정점의 법선입니다. 필수 항목입니다. Vertex Inputs > World Normal 노드에서 이 값을 가져올 수 있습니다.

scalar

Time

현재 시스템 시간입니다. 필수 항목입니다. Input > Time 노드에서 이 값을 가져올 수 있습니다.

scalar

Speed

시뮬레이션 속도입니다.

기본값: 0.5

vector2

Bend Amplitude Frequency

이 쌍의 첫 번째 값은 잎을 구부릴 수 있는 정도를 결정합니다. 두 번째 값은 잎이 원래 위치로 돌아가는 속도를 결정합니다.

기본값: (0.3, 0.1)

vector2

Detail Amplitude Frequency

이 쌍의 첫 번째 값은 잎 가장자리를 구부릴 수 있는 정도를 결정합니다. 두 번째 값은 가장자리가 원래 위치로 돌아가는 속도를 결정합니다.

기본값: (0.05, 0.5)

vector3

Wind

바람이 X 및 Y축을 따라 부는 방향 및 강도를 나타내는 벡터입니다. Z 값은 사용되지 않습니다.

기본값: (1.0, 1.0, 0.0)

scalar

Bend Scale

식물이 바람의 방향에 따라 변형되는 정도를 결정합니다.

기본값: 0.005

출력

Out

vector3

현재 프레임에 대해 계산된 위치 간격띄우기입니다. 이 출력 값을 Output > Standard Base 셰이더 노드의 Position Offset 입력 플러그에 전달합니다.

전제 조건
Output nodes이 노드는 다음 출력 노드가 있는 셰이더 그래프에서만 사용할 수 있습니다.

Output > Standard Base

먼저, 전체 정점 변위가 수직 축을 따라 전체 오브젝트에 적용되어 줄기 구부림을 시뮬레이션합니다. 이 변위의 방향 및 강도는 Wind 옵션에 의해 제어되고 배율은 Bend Scale 옵션으로 지정됩니다. 또한 구부림 배율은 메시 높이에 따라 자동으로 조절되므로 메시 위쪽은 변형되지만 메시 아래쪽(즉, 뿌리)은 이동하지 않습니다.

그런 다음 잎 및 잎 가장자리가 Bend Amplitude/FrequencyDetailed Amplitude/Frequency 설정에 따라 개별적으로 애니메이션됩니다. 메시 정점을 페인팅하여 이러한 잎 애니메이션을 매우 세부적인 수준에서 제어할 수도 있습니다. Vertex Color 설정을 참조하십시오.

이 노드는 NVIDIA GPU Gems 3이 장에 설명되어 있는 기술을 기반으로 한 것입니다.

이 노드의 사용 방법을 보여 주는 자습서는 이 비디오를 참조하십시오.

노드 정의 파일: core/shader_nodes/vegetation_bending.shader_node