1인 개발/나홀로 성 지키기

나홀로 성 지키기 개인 프로젝트 6일차

잼잼재미 2024. 3. 23. 14:36

구현 내용


1. SoundManager


이전 3D 프로젝트에서 사용했던 방법을 참고해서 구현했다. Dictionary를 사용해서 string key값으로 AudioClip value 값을 가져와서 Resources 폴더에 있는 음악 파일을 재생할 수 있도록 구현

 

 

https://kkln2486.tistory.com/213

 

SoundManger

SoundManger BGM을 담당하는 AudioSource 1개, Player SFX를 담당하는 AudioSource 1개, 그 외 SFX를 담당하는 AudioSource 여러개를 가지고 있음 BGM과 SFX의 사운드가 모두 SoundManger에서 재생 MainCamera 자식 오브젝트

kkln2486.tistory.com

 

 

2. CameraShake


 

 

메인 카메라의 rotation 값을 변경하는 방법으로 스킬 피격 시, 진동 효과를 구현했다. 이전 2D 로그라이크 팀 프로젝트에서 구현했던 내용을 참고했다.

 

 

https://kkln2486.tistory.com/194

 

카메라 진동 효과

position 변경 방법 가장 일반적으로 사용하는 방법 MainCamera의 psition을 랜덤하게 이동 스크립트 [SerializeField] private float _shakeAmount = 3.0f; [SerializeField] private float _shakeTime = 1.0f; private void Start() { StartCo

kkln2486.tistory.com

 

 

3. Damge Text


 

 

마찬가지로 이전 2D 로그라이크 팀 프로젝트에서 구현했던 내용을 참고했다. 기본 공격은 흰색, 스킬 공격은 분홍색으로 표시를 했다. TextMeshPro-Text를 가진 게임오브젝트를 생성해서 오브젝트풀을 통해 SetActive(true)를 했다.

 

 

회고


이미 구현했던 내용들은 블로그에 정리를 잘 해뒀기 때문에 생각보다 쉽게 구현했다. 다시 한번 블로그 정리의 중요성에 대해서 느꼈다. 하지만 SoundManger의 경우 조금 오래걸렸는데 Resource 경로를 잘못 입력했고, 이전 3D 프로젝트에서는 재생 위치를 구현하는 함수에서 Vector3.Distance를 사용했는데, 2D인 현재 프로젝트는 Vector2.Distance를 사용해야 정확한 거리 계산이 가능했다. 이제 슬슬 전체적인 게임 프로토 타입이 나오기 시작한 것 같다. 이번주까지 BattleMap을 마무리하고 다음주는 로비씬과 레벨업, 강화 기능을 구현하도록 하겠다!!