본문 바로가기
728x90

분류 전체보기42

유니티 안드로이드 빌드 (API Level 29 ~ 30) 사용된 유니티 버전은 2019.4.10f1. 구글 플레이 콘솔은 앱 배포 시 29~30 이상의 API 레벨을 지원하도록 요구한다. (2020년도에 이와 관련된 구글 플레이 콘솔 메시지를 수신한 적이 있다.) 유니티는 버전 2019.4.10f1 기준으로 API 레벨 28까지 지원한다. 안드로이드 API 설정은 플레이어 설정에서 확인이 가능하다. Project settings → Player → other settings → Target API Level ( Minimum API Level) Player 설정에서는 29~30 레벨이 표시된다. 그렇지만 위의 버전들과 약간 다른 것을 확인할 수 있다. 설정을 29~30 버전으로 변경하고, 프로젝트를 빌드하면, Andrioid SDK is Missing requ.. 2021. 1. 26.
유니티 Invoke 1. Invoke() 이전 글에서는 시간의 경과에 따른 절차적 단계를 수행하는 로직을 구현하는 데 사용되는 함수로 Update 함수들과 Coroutine을 언급하였다. 이 함수들에 시간을 지연시키는 로직을 구현할 수 있다. 이러한 지연시키는 로직을 간단하게 구현한 함수가 Invoke() 함수이다. Invoke() 함수는 지정 시간 이후에 대상 함수를 호출한다. 또한, 일정 시간 후에 반복적으로 해당 함수를 호출하도록 구현한 InvokeRepeating() 함수와 같은 추가적인 함수들을 제공한다. Invoke(string methodName, float delayTime) InvokeRepeating(string methodName, float delayTime, float repeatRateTime ) .. 2020. 12. 1.
유니티 코루틴(Coroutine) 과 IEnumerator 1. 코루틴 (Coroutine) 코루틴은 시간의 경과에 따른 절차적 단계를 수행하는 로직을 구현하는 데 사용되는 함수이다. 시간의 경과에 따른 절차적 단계에 대한 로직을 구현하는 것은 Update() 함수들에서도 가능하다. 매 프레임마다 호출되는 로직은 Update()에서 구현하면 된다. 하지만 초당 호출이나, 매 프레임마다 호출이 필요하지 않은 부분을 매 프레임마다 호출하는 것은 바람직한 로직이 아니다. 코루틴은 함수를 호출한다. 함수는 한 프레임에 호출되어 완료가 된다. 이에 IEnumerator 형식을 반환 값으로 가지는 함수를 사용한다. IEnumerator는 함수 내부에 실행을 중지하고, 다음 프레임에서 실행을 재개할 수 있는 yield return 구문을 사용한다. 2. yield retur.. 2020. 11. 30.
유니티 데이터 저장 및 불러오기 (PlayerPrefs) 1. PlayerPrefs 프로그램의 개발에 있어서, 데이터는 가장 중요한 요소이다. 데이터는 지속적으로 저장되어, 캐릭터의 레벨과 같은 상태, 획득한 아이템 등은 영구적인 보관이 요구된다. 온라인 게임의 경우 대부분의 데이터는 서버에 저장된다. 이는 위조, 변조를 방지하는데 유리하며, 관리하기에 용이하다. 하지만 모든 데이터를 서버에 저장하는 것은, 지속적으로 클라이언트와 서버 간의 통신이 발생한다는 것을 의미하며, 이는 서버의 부담을 가중시킨다. 따라서, 중요하지 않은 데이터는 직접 클라이언트에 저장하고 관리한다. 중요하지 않은 데이터로는 음량 조절 값 같은 옵션 설정에 사용되는 데이터들을 예로 들 수 있다. 유니티는 데이터를 저장하기 위한 ScriptableObject, PlayerPrefs, Js.. 2020. 11. 29.
728x90