-
[TIL] 9주차 3일 유니티 심화 과정 ( 파티클, 사운드 컨트롤 )개발일지/스파르타 코딩클럽 부트캠프 2024. 6. 12. 20:56
오늘 배운 내용
파티클 시스템
파티클 시스템은 수 천개의 작은 2D또는 3D 오브젝트들을 관리하고, 그들의 동작과 생애를 제어한다.
각각의 작은 오브젝트를 '파티클' 이라고 부른다.
파티클 시스템의 주요 컴포넌트는 emitter(발사체), particles(파티클), animator(애니메이터), renderer(렌더러) 등으로
이루어져 있다.
유니티의 파티클 시스템은 시간에 따른 파티클의 행동을 시뮬레이션 하며, 이를 위해서 각 파티클에 대해
위치, 속도, 수명, 색상, 크기 등의 정보를 저장한다.
파티클 시스템은 성능 최적화를 위해서 다양한 기능을 제공한다. 예를 들어서, 시스템의 최대 파티클 수를 제한하거나,
파티클 적용 범위를 제한하는 등의 기능이 있다.
다음은 파티클 시스템의 주요 모듈이다.
파티클 시스템의 주요 모듈
Main 모듈
파티클의 움직이는 속도, 크기, 회전, 최대 파티클 수를 정할 수 있다.
파티클 시스템에서는 이런 값들을 일반적인 상수값말고도 Random Between Two Constant 등을 통해
랜덤한 값을 넣는 등, 다양한 값을 넣을 수 있다.
Renderer 모듈
파티클을 어떻게 보여줄 지에 대해 정의한다. 어떤 파티클을 표현할 지, Order in Layer는 어떻게 되는지
등을 결정해서 보여줄 수 있다.
Shape 모듈
생성되는 모양에 대한 내용을 정의한다. 박스, 콘, 도넛 형태 등 다양한 생성형태를 정의한다.
Emission 모듈
파티클이 생성될 1초당 생성량, 움직일 때 생성될 양, 한번에 왕창 생성되는 패턴(Burst : 양, 시간, 간격) 등을
설정할 수 있다.
애니메이션 이벤트
애니메이션 이벤트는 애니메이션이 진행되는동안 코드를 실행시킬 수 있다.
유니티 애니메이션 편집기에서 설정할 수 있으며, 해당 애니메이션 클립이 재생되는 게임 오브젝트에
연결된 모든 스크립트에서 호출할 수 있는함수를 실행할 수 있다.
이벤트는 특정 프레임에서만 실행되며, 애니메이션 상태가 변경될 때에도 자동으로 실행되지 않는다.
또한, 애니메이션 이벤트를 사용하면 애니메이션과 코드의 상호작용을 더욱 유연하게 관리할 수 있다.
이를 통해서 애니메이션의 시각적 효과와 사운드, 효과 등의 프로그래밍적 요소를 통합할 수 있다.
애니메이션 이벤트를 통해서 호출되는 함수는 일반적으로 public 이어야 하며, 매개변수가 없거나
최대 하나의 매개변수를 가질 수 있다.
사운드를 처리하는 주요 컴포넌트
AudioSource
AudioSource컴포넌트는 사운드를 재생하는 데 사용되며, AudioClip을 연결하여 재생할 수 있다.
AudioSource는 3D 사운드 설정, 볼륨 조절, 사운드 반복 재생 등의 설정을 제공한다.
AudioClip
AudioClip은 사운드 파일을 유니티에서 사용할 수 있도록 하는 데이터 타입이다.
.wav, .mp3, .ogg 등 다양한 형식의 오디오 파일을 지원한다.
AudioListener
AudioListener 컴포넌트는 사운드를 듣는 포인트를 나타낸다. 일반적으로 주요 카메라에 위치하며,
게임에는 하나의 AudioListener만 있어야한다.
다음은 이번에 사운드 매니저를 만들어서 관리한 모습이다.
'개발일지 > 스파르타 코딩클럽 부트캠프' 카테고리의 다른 글
[TIL] 9주차 5일 개인과제 진행 ( Coroutine ) (0) 2024.06.14 [TIL] 9주차 4일 개인과제 진행 (0) 2024.06.13 [TIL] 9주차 2일 팀 프로젝트 마무리 (2) 2024.06.11 [TIL] 9주차 1일 팀 프로젝트 마무리 단계 ( OnTriggerEnter ) (0) 2024.06.10 [TIL] 8주차 5일 팀 프로젝트 진행 , 시험 (2) 2024.06.07