라니안 2021. 3. 14. 09:36


Material

  • Blend Mode: Masked

기본적으로 필요한 Parameter를 파악해보자!

- Texture: 임포트할 텍스쳐

- Distortion_Strength: 얼마나 타오르게 할것인지.(세기)

- FlowMap_Tiling

- Noise_tiling

- Power: uv에 Multiply로 곱해줘도 된다.

- Color: 불의 색상


Texture Sample(Flow_Tiling 준비)

  • Texture: Flowmap_texture

vector를 parameter(Flowmap_Tiling)으로 변환 후


Noise_Tiling 준비


Texture Sample(Noise_Map 준비)

RGB는 Vector가 3개 / UV는 Vector가 2개

그래서 Component Mask로 RGB에서 R(U)과 G(V)만 사용할 수 있게 연결해줘야 한다.

Material Expression Constant 2Vector

  • R: 0.0
  • G: 1.0 (G만 쓰겠다는 의미.)
밑에서부터 위로 흘러가게 만들기 위해서는 V값을 써야한다.

 


Distortion_Strenghth 준비

Distortion_Strength

  • Default Value: 1.2

Time

움직이게 만들기 위해 추가한다.  / 0.5를 곱해서 천천히 흘러가게 해준다.
  • Const B: 0.5

Frac

값을 소수점으로만 표현해준다. EX) 0.1~0.9

Add 추가

AddFrac을 추가하여 움직임을 하나더 만들어준다.


Tiling과 연결/Lerp(LinearInterpolate)로 Red값만 갖고 오기.

 


SINE처럼 A부터 B까지 위아래로 움직이게 해주는 기능만들기.

SINE을 쓰면 너무 무겁기에 여기에서는 다른방법을 진행한다. 

출력값을 alpha에 연결해준다.

 

  • Multiply: ConstB: 2.0
  • Subtract
  • abs

FlowMap_Noise 완성


Clamp: 0과 1사이에서 값을 재정렬해준다.


UV Mask 만들기.

ComponentMask

Mask는 햐얀색 부분은 보이고, 검은색부분은 보이지 않게 만들어준다.

  • 세로만 필요하기에 ComponentMask에서 G(V)값만 활성화시킨다.

Power

  • Const Exponent: 2.0

Parameter(Power로 이름변경)

  • Default Value: 5.0


EmberGlow만들기

 

Distance

두 점/색/위치/벡터 사이의(유클리드) 거리를 계산하여 결과값을 출력합니다.


EmberColor 만들기


Black Smoke 만들기


연결

Base Color/Emissive Color/Opacity Mask에 최종적으로 연결해준다.


  • Metallic/Specular: 0
  • Roughness: 1