본문 바로가기

unity

[NATIVE, ANDROID] Local Notification(로컬 알림) 유니티 플러그인 개요유니티에서 네이티브 알림 기능을 iOS 만 제공하고 있습니다.안드로이드에서 로컬 알림을 이용하려면 플러그인을 직접 제작하거나 다른 사람이 만들어 둔 플러그인을 사용해야 합니다.이번에 다소니닷넷에서도 로컬 알림을 사용하게 되어 직접 제작을 하였습니다. 유니티 플러그인 사용방법1. 알림 아이콘 적용안드로이드의 최신 버전에서는 작은 크기의 알림 아이콘과 큰 크기의 알림 아이콘 이렇게 두가지를 사용하고 있는데요.그 중 작은 크기의 알림 아이콘은 필수 아이콘으로 꼭 적용해야합니다. 아이콘 적용 방법은 간단합니다.Project Folder/Assets/Plugins/Android/DasonyNotification/res/drawable/ 위 경로에 아이콘 이미지를 추가하신 후 메소드 호출 시 아이콘 이름만 입력.. 더보기
[C#,UI] 마우스 or 터치 입력 포지션이 UI 위에 있는지 체크하기 개요스마트폰 모바일 게임 개발할 때 조작 방법으로 마우스 혹은 터치 입력이 주로 사용됩니다. 단말기에서 사용할 수 있는 조작 방법으로 터치가 유일하기 때문입니다. 터치 입력을 이용하여 기능을 제작할 때 UI와 터치가 겹치는 상황이 빈번히 발생하는데요. 터치 입력 포지션이 UI 위에 있는지 체크하여, 위에 있을 때는 기능을 하지 않도록 막으면 해결할 수 있어요. 사용방법터치 입력 포지션이 UI 위에 있는지 체크하기 위해서 EventSystems 라이브러리를 참조해야합니다. using UnityEngine.EventSystems; 예제) 마우스 입력 시public class InputTest : MonoBehaviour { void Update () { // 입력 포지션이 UI 오브젝트 위에 있는지 체크 i.. 더보기
[C#, INSPECTOR] 유니티 인스펙터를 빠르고 간단하게 커스텀하기 유니티 에셋이나 누군가의 배포를 통해 다운받은 플러그인을 사용하다 보면, 인스펙터에 제목 라벨, 슬라이더 등의 UI로 이루어진 것을 보신적이 있으시죠?이런 플러그인은 대부분 스크립트 별로 커스텀 에디터 스크립트를 작성하여 인스펙터를 꾸민거예요.커스텀 에디터 스크립트를 작성하는건 생각보다 시간 투자도 많이 필요하고 번거롭고, 귀찮기까지 하죠. 이럴때 유니티에서 제공하는 몇가지 에디터 속성을 사용하면 인스펙터를 보다 쉽고 빠르게 커스텀할 수 있어요.물론 커스텀 에디터 스크립트를 작성하는 것보다 디테일하거나 멋지게 커스텀 할 수는 없지만, 간단한 스크립트를 커스텀 할 땐 유용해요. 1. Header인스펙터에 굵은(BOLD) 타입으로 라벨을 출력합니다. 변수들을 특정 목적에 따라 구분할 때 유용하게 사용할 수 .. 더보기
[NATIVE, ANDROID] Android 6.0 (마쉬멜로우) 이상에서 Permission (시스템 권한) 체크 및 유니티 플러그인 개요Android 6.0 (마쉬멜로우) 버전 이상의 디바이스에서는 앱에서 요구하는 시스템 권한을 사용자가 언제든 끄고 켤 수 있도록 변경되었어요.이 기능은 개인정보 유출이 민감한 사항이기 때문에 추가된 기능인것 같습니다. 이 기능이 추가됨으로써 앱 구동에 필요한 필수 시스템 권한까지 끌 수 있게 되어, 앱 구동 중 시스템 권한을 획득하지 못하여 에러가 나는 경우가 발생할 수 있어요.이러한 문제들을 해결하기 위해 구글 쪽에서도 인 게임에서 요구되는 시스템 권한을 체크하길 권고하고 있습니다. 어떤 권한들을 체크해야 할까?안드로이드에서 앱을 사용하는데 필요한 시스템 권한을 AndroidManifest.xml 파일에 아래와 같은 방법으로 선언합니다. AndroidMenifest.xml에 선언한 모든 시스템 권한.. 더보기
[C#] 유니티 이벤트 함수 실행 순서 유니티를 사용하여 게임을 개발할 때 이벤트 함수의 실행 순서는 굉장히 중요해요.기본적으로 코딩는 위에서 아래로 순차적으로 실행되는 것처럼, 유니티 내부에서 이벤트 함수를 순차적으로 자동 실행되는데요.이 순서를 알고 있어야 개발할 때 동작 순서가 꼬이는 것을 방지할 수 있어요. 게임 오브젝트에 스크립트를 적용하면, 스크립트에 작성한 이벤트를 유니티 내부에서 시간 혹은 프레임에 따라 모든 이벤트를 호출하게 되요.그럼 유니티 이벤트 함수 중 중요한 함수 몇가지와 순서를 설명드릴게요. 1. AwakeAwake는 스크립트를 깨우는(?) 함수로 게임 실행 시 최초 1회만 호출되는 함수입니다.이 함수는 게임 오브젝트가 활성화인 상태에서는 무조건 실행됩니다.Start 함수와는 다르게 스크립트를 비활성화 상태 (enab.. 더보기