본문 바로가기
TIL

12.14 (TIL - Unity)

by 오랑이귀엽다 2023. 12. 14.

사운드 컨트롤 - 핵심내용

1. 사운드를 처리하는 주요 컴포넌트

AudioClip:

  • AudioClip은 사운드 파일을 유니티에서 사용할 수 있도록 하는 데이터 타입
  • .wav, .mp3, .ogg 등 다양한 형식의 오디오 파일을 지원

AudioSource:

  • AudioSource 컴포넌트는 사운드를 재생하는 데 사용
  • AudioSource에 AudioClip을 연결하여 재생할 수 있다.
  • AudioSource는 3D 사운드 설정, 볼륨 조절, 사운드 반복 재생 등의 설정을 제공

AudioListener:

  • AudioListener 컴포넌트는 사운드를 듣는 포인트를 나타냄
  • 일반적으로 주요 카메라에 AudioListener가 위치
  • 게임에는 하나의 AudioListener만 있어야 한다.

 

UI만들기 - 핵심내용

1. UGUI (Unity's User Interface):

  • Unity의 기본 UI 시스템으로 게임 내의 사용자 인터페이스를 구축하는 데 사용

Canvas:

  • UGUI에서 모든 UI 요소는 Canvas라는 컴포넌트 내에 배치
  • Canvas는 스크린 공간, 월드 공간, 카메라 공간의 3가지 렌더 모드를 지원.

Rect Transform:

  • Unity의 기본 Transform 대신 UI 요소에는 Rect Transform이 사용
  • 위치, 크기, 회전, 스케일을 지정하는데 사용되며, 앵커 및 피벗을 사용하여 부모와의 상대적인 위치를 지정

UI Components:

  • UGUI는 다양한 UI 요소들을 제공: 버튼, 이미지, 텍스트, 슬라이더, 스크롤 바 등.

Event System:

  • UGUI의 이벤트 시스템은 UI 상호작용을 관리
  • 마우스 클릭, 드래그, 키보드 입력 등 다양한 입력 이벤트를 처리

2. TextMeshPro

  • TextMeshPro는 원래 독립적인 개발자에 의해 Unity 에셋 스토어에서 판매. 그러나 이후 Unity Technologies에 인수되어 Unity의 기본 기능으로 포함. 이러한 변화는 2017년에 발생했으며, 그 이후로 TextMeshPro는 Unity 사용자들에게 무료로 제공
  • TextMeshPro는 Unity에서 제공하는 고급 텍스트 렌더링 시스템. 기본 텍스트 구성 요소보다 훨씬 더 많은 기능과 정확성을 제공.

 

로직 구현하기 - 핵심내용

1. 코루틴

  • 코루틴은 비동기적으로 실행되는 함수로, 특정 코드 블럭의 실행을 일시적으로 중지하고 다시 시작할 수 있게 해준다.
  • IEnumerator 리턴 타입의 함수에서 **yield return**을 사용하여 코루틴을 구현할 수 있다.
  • StartCoroutine 함수를 통해 코루틴을 시작할 수 있고, StopCoroutine 함수를 통해 코루틴을 중지할 수 있다.
  • 코루틴은 프레임 간의 지연, 비동기 작업, 시간에 따른 애니메이션 등의 작업에 주로 사용된다.
  • **yield return null**은 다음 프레임까지 대기를 의미하고, **yield return new WaitForSeconds(n)**은 n초 동안 대기를 의미
  • 코루틴은 별도의 스레드에서 실행되지 않는다. 따라서 Unity의 메인 스레드에서 안전하게 Unity API를 호출할 수 있다.
  • 코루틴은 일반 함수와는 다르게, 실행을 일시 중단하고 나중에 다시 시작할 수 있어, 시간 지연, 반복, 조건부 대기 등의 작업을 수행할 때 매우 유용

'TIL' 카테고리의 다른 글

12.18 (TIL-코딩문제)  (1) 2023.12.18
12.15 (TIL-Unity3D)  (0) 2023.12.15
12.13 (TIL - Unity)  (0) 2023.12.13
12.12 (TIL-Unity)  (0) 2023.12.12
12.11 (TIL-Unity)  (0) 2023.12.11