본문 바로가기

TIL(Today I Learned)/오늘 무엇을 배웠을까

TIL(Today I Learned) - 42

 

📆 오늘의 TIL (Today I Learned)


1. 퀵 슬롯 시스템 개선

  • 문제 해결:
    • 아이템 데이터를 UI 퀵 슬롯과 연결하고, 자동으로 슬롯 UI를 업데이트하도록 시스템을 설계.
    • 비어 있는 슬롯 선택 시 장착 해제가 발생하는 문제를 조건문으로 방지.
  • 학습:
    • 이벤트 구독을 활용하여 장착 상태를 UI에 실시간 반영.
    • Action<WeaponData> 이벤트를 활용해 데이터를 동적으로 처리.

2. 사운드 매니저 구현

  • Singleton 기반 SoundManager:
    • AudioSource를 활용하여 발사, 장전, 무기 장착 등 상황별 사운드 재생.
    • PlayOneShot과 PlayClipAtPoint를 사용하여 위치 기반 및 일반 사운드 구현.
  • 문제 해결:
    • 오디오 소스가 누락된 경우 디버깅 로그를 활용해 문제를 빠르게 해결.
  • 확장 가능성:
    • 각 무기마다 고유의 사운드를 추가해 다양성 구현.

3. 미니맵 시스템 구축

  • 미니맵 구현 과정:
    • Render Texture를 사용하여 미니맵을 제작.
    • 플레이어 아이콘 및 적 아이콘을 미니맵에 표시.
  • 문제 해결:
    • 플레이어 아이콘이 잘못된 위치로 이동하는 문제를 RectTransform의 중심 기준으로 수정.
    • 확장성을 고려해 좌표를 동적으로 계산하여 플레이어와 적 아이콘의 위치를 반영.
  • 추가 기능:
    • 적 아이콘 추가 및 플레이어 중심 고정.
    • 줌 인/아웃 기능과 맵 확장을 고려한 설계.

4. Unity 워크플로우 팁

  • 오브젝트를 바닥에 스냅:
    • Ctrl + Shift 드래그(Windows) 또는 Command + Shift 드래그(Mac)로 오브젝트를 바닥에 빠르게 정렬.
  • Render Texture 활용:
    • Render Texture를 카메라 출력에 연결하여 다양한 UI 연출 가능.

💡 오늘의 배움

  1. 확장성을 고려한 설계: 단순히 현재 요구사항만 해결하지 않고, 확장성을 위해 데이터를 동적으로 처리하는 방식으로 설계.
  2. 디버깅과 문제 해결 능력 향상: 디버그 로그를 통해 문제를 빠르게 파악하고, 코드의 흐름을 명확히 이해.
  3. Unity의 유용한 단축키와 기능 활용: 워크플로우를 최적화하여 작업 속도를 개선.

🚀 앞으로의 개선점

  1. 적 아이콘 및 동적 레이어 관리 추가.
  2. 미니맵 확대/축소 및 드래그 기능 구현.
  3. 사운드 믹서를 통해 사운드 볼륨 제어 및 그룹화.

'TIL(Today I Learned) > 오늘 무엇을 배웠을까' 카테고리의 다른 글

TIL(Today I Learned) - 44  (0) 2024.11.21
TIL(Today I Learned) - 43  (0) 2024.11.21
TIL(Today I Learned) - 41  (0) 2024.11.15
TIL(Today I Learned) - 40  (0) 2024.11.14
TIL(Today I Learned) - 39  (0) 2024.11.13