3월, 2021의 게시물 표시

void PostList()

Animated Draw Line Effect 만들기

이미지
  Path of exile 에 등장하는 이펙트를 모작하려다가 마법진을 그리는 애니메이션을 구현해야할 상황과 마주하는 바람에 해당 효과를 어떻게 만들까를 연구했습니다. 이것저것 해본 결과 제가 찾은 방법은 다음과 같습니다. 여기서 필요한 준비물은 텍스쳐 2장입니다. 1. 애니메이션을 구현하기 위한 Gradient 맵 2. 마스킹을 위한 마스킹 맵 과정은 다음과 같습니다. 1 - 애니메이션이 0이 시작점이고 1이 끝일때 애니메이션이 어느정도 진행되었는지 진행도를 주기위한 부분입니다. Smoothstep - Wikipedia Smoothstep 은 Hermite 보간법을 사용하여 위 이미지와 같이 선형값을 부드러운 곡선값으로 반환해주는 노드입니다.  파티클 시스템을 사용한다면 Smoothstep 없이 0과 1사이의 Dynamic Parameter 값을 커브에디터에서 적절하게 조절한 뒤 그대로 2번과정으로 넘겨주어도 됩니다. 2 -  1번과정에서 넘어온 값과 Gradient 맵을 더해줍니다. 이를 통해 선이 점점 그려지게 할 것입니다. 3 -  Power 를 통해 대비를 극단적인 형태로 만들어 줍니다.  제곱없이 그대로 Add 만 할 경우 선이 그려지는 느낌이 아니라 전체적으로 밝아지는 느낌이 되어버립니다.  Exponent 값이 크면 클 수록 선이 선명한 움직임으로 그려집니다. 4 -  앞선 과정을 통해 색상값이 1을 넘어가는 픽셀이 생기게 됩니다. 색상을 0과 1사이의 값으로 잘라주기 위해 Clamp 노드를 사용합니다.  이때 Saturate 노드를 대신 사용할 수도 있습니다. 5 -  앞의 과정과 마스킹 텍스쳐를 곱해 마스킹을 해줍니다. 이걸 안하면 앞에서 색상을 가산한 결과가 그대로 남아 선 모양이 안남고 전체적으로 하얗게 타버립니다. 6 - 파티클 시스템을 사용하지 않는다면 그대로 Emissive Output 으로 넘기거나 Tint Color Input 을 만들어 곱한 다음 넘겨주면 됩니다. 여기서는 파티클 시스템과 연동할 것이기에 Particle Colo