본문 바로가기

Unity/제로부터 Effect

VFX, 전류 Trail 구현하기

728x90

오늘 구현

전류 trail 구현하기.

 

Visual Effect Subgraph Operator 생성.  (Random Direction 노드 만들기)

  1. ParticleId를  시드로 사용해 랜덤한 위치값을 생성하기위해 노드 생성합니다.
  2. 단위원 안에 랜덤한 세타값을 가져와 싸인, 코싸인으로 Vector2 값을 설정합니다
  3. z축 설정과 함께 particle들을 안쪽으로 좀더 밀집시켜 줍니다.
  4. 2번과 3번을 이용해 Vector3 값을 만들어준 뒤 이 값을 반환해줍니다

Visual Effect Graph 생성

파티클 세팅하기.

  1. Set Target Position 으로 랜덤한 위치까지 파티클이 이동 하도록 합니다.
  2. 랜덤한 백터값과 y축 벡터가 만드는 평면의 수직을 구한뒤 Normalize 해준 값을 Set Custom Attribute로 particle의 vector3 값으로 설정해 줍니다.(Cross Product)
  3. Set Lifetime Random from Curve 로 particle의 수명을 랜덤하게 설정해줍니다.

Update Particle 설정

  1. Rotate 3D 노드를 만들어 주고 particle의 현재위치를 설정해 줍니다.
    1. 회전 중심을 기준으로 위치를 지정하고, 어떤 축을 기준으로 회전을 할지 설정한 뒤 입자 시스템의 수명시간과 원주율을 곱한 값을 회전 각도로 사용해 줍니다.
      • Position : 회전 중심을 기준으로 파티클의 위치
      • Position center : 회전의 중심
      • Rotation Axis : 회전 축
      • Angle : 회전 각도
  2. Multiply Position을 추가하고 랜덤한 값을 곱해 줍니다.
  3. Multiply Position을 하나더 추가해 transform 변수를 만들어 scale(1,1,1) 값을 곱해줍니다. (가운데 너무 뭉쳐 있어서)
  4. Trigger Event Rate(Over time) 를 만들어줍니다. 이 노드를 이용해 이벤트에 사용할 이펙트를 설정해 줄 수 있습니다.
  5. Output Particle Point를 추가하면 해당 파티클이 어떻게 움직이는지 확인할 수 있습니다.

 

GPUEvent

위에서 만든 Trigger Event Rate(Over time) 노드에 연결해 줍니다.

  1. Initialize Particle Strip 컨텍스트를 추가해주고 파티클의 포지션과 알파값을 상속 시켜줍니다. (부모 파티클은 Trigger Evenet Rate가 들어가있는 컨텍스트인 Initialize Particle)
  2. 파티클의 수명을 랜덤하게 생성해줍니다.
  3. 생성된 파티클의 타겟위치를 현재위치로 설정해준뒤 Add Target Position을 0,0,0 으로 설정해줍니다.
  4.  Set Color over Life 로 파티클의 색상을 적절하게 조절해 줍니다.

Update Particle Strip

  1. 파티클의 포지션을 targetPosition 으로 업데이트 해줍니다.
  2. Set Size Random from Curve 로 사이즈 조절을 해줍니다.
  3. Add Position을 만들어주고 Perlin Curl Noise 3D로 노이즈를 만들어 연결해 줍니다.

Output ParticleStrip Quad

  1. Orient:Face Camera Position
  2. Set Alpha over Life

 

 

 

완성

 

 

728x90

'Unity > 제로부터 Effect' 카테고리의 다른 글

Disintegrate Enemy Effect(Shader+VFX)  (0) 2024.01.06
Electricity (Shader + Visual Effect)  (0) 2023.12.28
TrailShader 만들기  (1) 2023.11.23
VFX Graph - Arrow Projectile  (0) 2023.11.20
Shader Graph - Fire+smoke  (0) 2023.11.17