{TIL} Unity 파티클 시스템

Kwaksang·2024년 6월 12일

TIL

목록 보기
37/37
post-thumbnail

Unity 파티클 시스템

Chapter .1 파티클 시스템

Content .1 파티클 시스템(Particle System) 이란?

  • 수 천개의 작은 2D 또는 3D 오브젝트들을 관리 및 동작과 생애를 제어
  • 각각의 작은 오브젝트를 '파티클'이라고 부름
  • 파티클 시스템의 주요 컴포넌트는 'emitter'(발사체), 'particles'(파티클), 'animator'(애니메이터), 'renderer'(렌더러) 등으로 이루어짐
  • 시간에 따른 파티클의 행동을 시뮬레이션
  • 각 파티클에 대해 위치, 속도, 수명, 색상, 크기 등의 정보를 저장
  • 시스템의 최대 파티클 수를 제한하거나, 파티클의 적용 범위를 제한하는 등의 기능이 있음

Content .2 파티클 시스템의 주요 모듈

  1. Main모듈
  • 파티클의 움직이는 속도, 크기, 회전, 최대 파티클 수를 정할 수 있음
  • 파티클 시스템에서는 이러한 값들을 일반적인 상수값말고도 Random Between Two Constant 등을 통해 랜덤한 값을 넣는 등, 다양한 값을 넣을 수 있음
  1. Renderer 모듈
  • 파티클을 어떻게 보여줄 지에 대해 정의
  • 어떤 파티클을 표현할 지, Order in Layer는 어떻게 되는지 등을 결정해서 보여줄 수 있음
  1. Shape 모듈
  • 생성되는 모양에 대한 내용을 정의
  • 박스, 콘, 도넛 형태 등 다양한 생성 형태를 정의
  1. Emission 모듈
  • 파티클이 생성될 1초당 생성량, 움직일 때 생성될 양, 한번에 왕창 생성되는 패턴(Burst : 양, 시간, 간격) 등을 설정할 수 있음

Content .3 애니메이션 이벤트(Animation Events)

  • 애니메이션이 진행되는 동안 코드를 실행시킬 수 있음
  • 캐릭터가 특정 동작을 할 때 사운드를 재생하거나, 특정 애니메이션 프레임에서 파티클 시스템을 발사하는 등의 작업을 할 수 있음
  • Unity 애니메이션 편집기에서 설정할 수 있음
  • 편집기를 통해 애니메이션 타임라인에 이벤트를 추가하고, 해당 이벤트가 호출할 함수를 지정할 수 있음
  • 해당 애니메이션 클립이 재생되는 게임 오브젝트에 연결된 모든 스크립트에서 호출할 수 있는 함수를 실행할 수 있음
  • 이벤트는 특정 프레임에서만 실행되며, 애니메이션 상태가 변경될 때에도 자동으로 실행되지 않음
  • 애니메이션과 코드의 상호작용을 더욱 유연하게 관리할 수 있음
  • 애니메이션의 시각적 효과와 사운드, 효과 등의 프로그래밍적 요소를 조화롭게 통합할 수 있음
  • 애니메이션 이벤트를 통해 호출되는 함수는 일반적으로 공용 함수(public function)이어야 하며, 매개변수가 없거나 최대 하나의 매개변수를 가질 수 있음
profile
게임은 재미와 기능!

0개의 댓글