[유니티] Unity - AAR로 안드로이드 Toast와 알림메시지 (notification)구현해보기.
·
프로그래밍/Unity
개요유니티 강의를 준비하다보니 겪어왔던 모든 유니티 지식들을 쥐어짜는 중인데,어쩌면 깊으면서도 현시대에 유니티개발자라면 필수적으로 알아야할 안드로이드 AAR에 대해서 알아보고자 한다.C++이나 C#등 dll 파일을 만드는 것과 비슷한데, 안드로이드스튜디오에서 만드는 패키지라고 할 수 있고 그 목적성은 유니티가 안드로이드 네이티브 기능을 호출하는 것에 있다고 할 수 있다... 물론 유니티에서 기본적으로 지원해주는 것들도 있다.유니티에서는 AndroidJava 객체를 가지고 있으므로 간단한 토스트 메시지나 더 간단한 진동알림 같은 것은굳이 AAR이 필요가 없다...지만 권한을 얻어야 하는 것들은 필요하다고 말할 수 있겠다. 일단 구현전에 Toast 메시지의 경우 AAR이 아니더라도 구현할 수 있다.기본 코드..
[유니티] Unity - DI (Dependency Injection) VContainer 간단사용법
·
프로그래밍/Unity
유니티에서 큰 프로젝트를 하다가 보면싱글톤패턴이 많아지게 되고 '어쩌다 개발하다보니' 싱글톤들끼리 이리저리 엮이고그로인하여 분명 특정 기능만 하는 모듈로 만든 싱글톤인데 수정도 어렵고 여기저기엮여있어서 코드가 뒤죽박죽이 되는 상황을 마주하게 된다.또한 싱글톤이다보니 딱히 해당 기능을 사용하지도 않는 곳에서도 들고 있어서 마주하는 문제들도 분명 존재했다. 이러한 부분을 최소화하고 코드관리겸 씬에 필요한 기능들을 정리하는데 있어Dependncy Injection이라고 불리우는 의존성 주입 이라는 툴 중에 가볍다는 VContainer의 가벼운 사용방법을 알아보자.(한글로 된 사용법이 거의 없어서 ㅜㅜ) 참고로 나는 Zenject도 사용을 해보았고 사용성에 있어서는 둘이 비슷한거 같기도 하고, 뭐가 더 편하다고..
[유니티] Unity - ScriptableObject 잘 사용하기 (feat: json Editor)
·
프로그래밍/Unity
오늘은 유니티의 ScriptableObject (스크립터블오브젝트 이하 SO) 에 대해서 알아보자ScriptableObject는 이제 나오게 된지 꽤 몇년이 흘렀는데,로컬환경 구축에 이만한 것이 있을까 싶을정도로가장 편리하며, 유니티 개발자들에겐 필수적인 요소가 아닐까 싶다. 그 중에서도 오늘은하나의 데이터 클래스를 SO로 묶고.json 파일의 export와 import는 하는 editor스크립트도 짜볼까 한다.실제로 백엔드 통신을 할 적에는 가장 유용했던 부분이다.게다가 meta파일이 변경되어서 힘들게 쓴 SO가 싹 날라가버리는 불상사도 막을 수 있는 좋은 백업방법이다. using UnityEngine;[CreateAssetMenu(fileName = "DataAsset", menuName = "SOS..
[유니티] Unity - Parallel 병렬처리로 반복작업 속도 향상시키기
·
프로그래밍/Unity
오늘은 무얼 소개해볼까 하다가..회사에서 획기적으로 성능향상을 경험한 Parallel (병렬처리) 메서드 사용법에 대해 이야기해보고자 한다.사건의 발단은 이렇다.유니티 내에서 에셋번들을 다운로드 받아서 정해진 위치에 생성시키는 컨텐츠가 있다.이 에셋번들이 30개를 넘어가자 하나의 쓰레드에서는 (코루틴도 아니었었다 처음엔)15초가 넘게 걸리는 불상사가 걸리고 만것이다. 에셋생성 -> 에셋위치시키기 > (반복) 병렬처리는 많은 반복작업에 있어서 효율적이게 처리할 수 있다는 특징이 있다.유니티에서는 Job시스템이나.. 매우 다수의 오브젝트를 처리하는 뭐 였는지는 기억 갑자기 안나는데 다른 시스템이별개로 존재하지만간단한 부분에서 사용하기에는 Parallel 메서드도 충분히 경쟁력있다.일단 따로 공부를 안해도된다..
[유니티] Unity - 코루틴 리턴값 받기와 Action에 대하여.
·
프로그래밍/Unity
오늘은 조금 화가 난 상태로 적는 부분인데..회사에서 다른 회사들의 프로젝트들을 받아서적용시키는 업무를 하고 있다. 정말 막장인 경우가 많은데,아마 많은 초보 유니티 개발자들이 검색을 안해보고모르는 그러한 부분일 수도 있어서 공유해보고자 한다.바로 코루틴의 리턴값 받기다.. Unity6에 와서는 Awaitable이 신규로 생성되어서 좀 더 쉬워졌지만아무래도 유니티의 아이덴티티는 코루틴이니까... 일례로 이런 코드를 받았다. public bool CheckLocation() { StartCoroutine(Location()); while (CheckGPS) { } ...하략... } ..
[유니티] Unity WebGL - React.js와 쌍방향 통신하기
·
프로그래밍/Unity
유니티6가 나오면서큰 변화 중에 하나라고 한다면 본격적으로WebGL 을 모바일웹도 지원해 준다는 것이다.게다가 미지원 되었던 쉐이더들도 등등 WebGL에 어느정도 진심이 되어버린 유니티. 웹페이지나 앱에서도 유니티 3D를 포함하는 웹, 앱들이많아지고 있는데일단 오늘은 유니티 WebGL을 단독 웹이 아닌React.js에서 넣어서 사용해보자. 나는 React.js가 편해서 리액트를 사용했지만사실 바닐라로도 되고, Vue.js에서도 방식은 똑같다. 일단 유니티를 작성하기 전 리액트 프로젝트를 만들어보자.https://www.npmjs.com/package/react-unity-webgl react-unity-webglReact Unity WebGL provides a modern solution for emb..