반응형

유니티 5

[Unity] sprite 동적으로 변경하기(Resources.LoadAll)

Unity 개발을 하다보면 Sprite를 동적으로 변경해야하는 경우가 발생합니다. 이때 어떻게 처리를 해야하는지 살펴보도록 하겠습니다. 오늘은 Resources.LoadAll API를 이용할 예정입니다. 먼저 선행되어야할 작업은 Sprite의 경로를 확인하는 것입니다. Resources.LoadAll API를 이용하여 Sprite를 가져오기 위해서는 반드시 Resources 폴더내에 Sprite가 존재해야합니다. 그래야 정상적으로 Sprite를 로드할 수 있습니다. 위 이미지와 같이 Resouces/Sprites/Player 폴더에 있는 "Player01"이라는 Sprite를 가져온다고 가정해보겠습니다. 그렇다면 아래와 같은 소스를 이용하여 Sprite를 가져올 수 있습니다. Sprite[] sprite..

Unity 2020.07.03

[Unity] tag 비교하기('CompareTag()' VS '== tag')

유니티 프로그램을 개발하면서 Tag를 사용할 때가 많습니다. 제가 현재 개발하고 있는 게임에서는 플레이어와 몹이 충돌했는지 여부를 판단하기 위해 태그를 사용하고 있습니다. 아래 소스와 같이 태그를 비교하기 위해 CompareTag 메서드를 사용했습니다. private void OnTriggerEnter2D(Collider2D collision) { if (collision.CompareTag("Monster")) { // Monster 충돌 처리 } } 사실 tag는 string 문자열이기 때문에 아래와 같이 비교해도 됩니다. private void OnTriggerEnter2D(Collider2D collision) { if (collision.tag.Equals("Monster")) { // Mons..

Unity 2020.04.12

[Unity] Coroutine VS Invoke

안녕하세요. Jay입니다. 일반적으로 주기적으로 함수를 반복할 때 유니티에서는 Coroutine과 Invoke를 사용합니다. 그렇다면, 이 두 메서드는 각각 어떤 특징이 있는지 알아볼까요? Coroutine - 코루틴은 실행을 중지하여 Unity에 제어권을 돌려주고, 그러나 계속할 때는 다음 프레임에서 중지한 곳부터 실행을 계속할 수 있는 기능 - IEnumerator를 반환 값으로 가짐. - yield return 구문을 어딘가에 가짐 (참고로, yield return은 실행을 중단 시키고 다음 프레임에 이후 구문이 실행되도록 함). - 유니티에서는 IEnumerator 반환형은 명시할 필요는 없음. 일반적으로 코루틴은 yield를 실행한 바로 다음 프레임에서 재개되지만, 지연후 실행하기 위해서는 Wa..

Unity 2020.04.11

[Unity] Update() vs FixedUpdate()

안녕하세요. Jay입니다. 오늘은 Update() 매서드와 FixedUpdate()에 대해서 알아보도록 하겠습니다. Update() - 화면 갱신 주기에 맞춰서 실행 - Update는 불규칙한 호출임으로 물리엔진 충돌 검사등이 제대로 안될 수 있음. - 단순한 타이머, 키 입력 받을 때 주로 사용 FixedUpdate() - 물리 갱신 주기에 맞춰 실행 - *Fixed Timestep에 설정된 값(기본 값: 0.02초)에 따라 일정한 간격으로 실행 - RigidBody Object를 조정할 때 주로 사용 - 오차가 발생할 확률이 상대적으로 더 적음. *Fixed Timestep 설정 방법 Time 설정(메뉴: Edit -> Project Settings 로 이동한 다음 Time 카테고리 선택)을 통해 설..

Unity 2020.04.09

[Unity] Circular Progress Bar(원형 진행바) 구현하기

안녕하세요. Jay입니다. 오늘은 원형 프로그래스 바를 구현해보겠습니다. 1. 먼저 투명 배경의 원형 이미지를 준비합니다. 해당 이미지를 유니티 assets 폴더에 넣습니다. 2. 캔버스를 추가합니다. 캔버스를 추가한 후, 캔버스의 자식으로 empty game object를 추가합니다. 그리고 empty game object를 'CircularProgressBar'로 이름을 짓습니다. 아래 이미지와 같은 구조가 됩니다. 3. Loading Bar를 추가합니다. 3-1. CircularProgressBar의 자식으로 이미지를 추가합니다. 이미지 이름은 LoadingBar로 짓습니다. 3-2. LoadingBar 이미지의 'Source Image'를 assets에 추가한 circle.png로 변경합니다. 3..

Unity 2020.04.08
반응형