플로우맵을 사용하여 텍스쳐의 UV를 조절하고 싶을 때 사용하는 함수입니다.
Ben Cloward의 영상을 참고하였습니다.
머테리얼 에디터의 커스텀 노드에서 사용합니다.
// Output Type: CMOT Float 1
// Inputs: Flowmap, FlowmapStrength, UV
// Additional Outputs: UV1(CMOT Float 2), UV2(CMOT Float 2), LerpAlpha(CMOT Float 1)
// Output
// - result:
// - UV1: TextureSampler 2개 중 첫번째의 UV로 연결
// - UV2: TextureSampler 2개 중 두번째의 UV로 연결
// - LerpAlpha: Lerp 노드의 Alpha에 연결. Lerp 노드의 A, B값에는 각각 Texture Sampler의 결과값을 연결.
if (FlowmapStrength > 0)
{
UV1 = Flowmap * FlowmapStrength * frac(View.GameTime) + TextureCoordinate;
UV2 = Flowmap * FlowmapStrength * frac(View.GameTime + 0.5) + TextureCoordinate;
LerpAlpha = abs(frac(View.GameTime) * 2.0 - 1.0);
return 1;
}
return 0;