유니티 2018.1 버전에서 공개된 잡 시스템 (Job System)에 대해서 공부도 할 겸 테스트 진행해 보았습니다. 간단하게 말하면 멀티 스레드를 쉽게 이용할 수 있게 만들어 놓은 시스템 정도로 생각하면 될 것 같습니다. 스레드를 사용하려고 하면 Race Condition이나 Context Switching 등등 신경 써야 될 것들이 많은데 그런 것 신경 안 쓰고 멀티 스레드 기능을 활용할 수 있으면 훨씬 편하고 좋을 것 같긴 하네요. 일단 아래 사이트를 참조해서 테스트했습니다. (샘플용 메시도 제공해 주고 설명도 아주 잘 되어 있습니다) https://www.raywenderlich.com/7880445-unity-job-system-and-burst-compiler-getting-started U..
말 그대로 카메라를 쌓아서 오버레이 하는 방법 입니다. https://docs.unity3d.com/Packages/com.unity.render-pipelines.universal@7.2/manual/camera-stacking.html Camera Stacking | Universal RP | 7.2.1 Camera Stacking In the Universal Render Pipeline (URP), you use Camera Stacking to layer the output of multiple Cameras and create a single combined output. Camera Stacking allows you to create effects such as a 3D model in a..
Unity URP 프로젝트에서 기본으로 설정되어 있는 스카이 박스를 교체하는 방법 입니다. 유니티 2021.2.5f1 버전 기준 입니다. 프로젝트를 생성하면 아래와 같이 기본적으로 스카이 박스가 설정되어 있습니다. Window -> Rendering -> Lighting 클릭해서 라이팅 팝업을 열어 줍니다. 라이팅 팝업을 열고 Environment 탭을 선택합니다 교체하려고 하는 스카이박스 매터리얼을 아래 화살표 영역에 넣어서 교체해 줍니다. 스카이박스 교체완료.
Unity 자체에서 제공해주는 광고 기능인 Unity Ads 를 연동시키는 방법입니다. 유니티에서 제공해 줘서 그런지 엄청 쉽습니다. 먼저 Window -> Services 를 눌러서 Services 탭을 실행시켜 줍니다. 그다음 아래 화살표 부분에 있는 Off 버튼을 On 으로 변경시켜 줍니다. 일단 이렇게 해주는 것만 해도 반은 완료 입니다. 그다음 Ads 를 한번 더 누르고 아래 빨간색 부분에 있는 스위치를 켜줍니다. 그리고 나면 아래처럼 물어보는데 13세 이하 어린이가 사용할 수 있는 어플인지 아닌지를 체크해 주면 됩니다. 여기까지 해주면 기본적인 설정이 완료 됩니다. [ 1 ] 어떤 플랫폼에 적용할 건지 [ 2 ] 테스트 모드로 사용할 건지 [ 3 ] 각 플랫폼별 GameID 그다음 아래 주소로..
Unity 4.6 부터 새로운UI 시스템을 제공해 주고있는데요..(UGUI 라고 하겠습니다.) UGUI 에는 NGUI 나기타 리소스 제작 할때사용하는 것 처럼 이미지를 아틀라스로묶어주는 기능이 있습니다. 이 기능을 사용하면유니티에서의 Draw Call 을줄일 수 있습니다. 일단은 아래처럼간단하게 이미지 몇개를띄워 놓았습니다. 실행을 해보면Batches부분이 4 인걸볼 수 있습니다. 이제 아틀라스로묶어 보겠습니다. 아틀라스로 묶을 이미지들을선택하고 옆에Inspector 로갑니다. 그다음Packing Tag부분에 아틀라스로 묶을ID (Tag) 를 입력해 주고Apply 를눌러 줍니다. * 아틀라스의 사이즈가2048x2048 을넘거나 Tag 에따라서 아틀라스의개수가 늘어나는 것같습니다. 그렇기 때문에Tag 설정..
게임을 만들다 보면 케릭터 레벨 별 경험치 라던지 레벨 별 몬스터 데지미 라던지 등등의 수치를 서버에서 받아와야 하는 경우가 있습니다. 물론 서버가 연동이 된다면 서버에 등록해서 받아오면 되지만.. 서버를 연동하기 힘든 조건 에서는 하기 힘들죠.. 이런 문제를 해결하기 위해 좀 알아본 결과 구글의 스프레드 시트를 유니티로 연동할 수 있는 플러그인이 있었네요. 물론 블로그로 들어가면 설명이 나와있긴 하지만.. 자세히 나와 있질 않아서 포스팅 합니다. 이름은 Unity-QuickSheet 입니다. 먼저 아래의 주소로 들어갑니다. http://kimsama.github.io/googlehowto/ 들어가면 아래같은 화면이 나옵니다. 빨간색 박스 부분을 눌러서 링크로 갑니다. 들어가면 아래같은 화면이 나옵니다...
전에 iOS9 의 ATS 에 대응해서 서버와 통신하는방법을 포스팅 했었습니다. [ 참조 ]http://lhh3520.tistory.com/318 이제는 HTTPS 서버와통신하는건 문제가 없는데 또다른 문제는 서버에 있는파일이나 이미지들을다운받아야 하는 경우 입니다. 파일을 다운 받는 방법은전에 포스팅 한 글을 이해하고있다면 금방 적용할 수 있습니다. SSL 인증서를 세팅한 다음에아래처럼 구현해서 파일을다운받을 수 있습니다. // 요청 보내기 HttpWebRequest req = (HttpWebRequest) WebRequest.Create ( "다운할 파일의 URL" ); req.ClientCertificates.Add ( 인증서 파일 등록 ); // 통신 방식 req.Method = "GET"; // ..
기존에 앱스토어에 올라가 있는 앱들은 상관 없을지 모르지만 iOS9 가 나오고난 후 부터는 앱스토어에 새로 올리는 앱에 대해서는 무조건 HTTPS 를 사용하도록 변경 되었습니다. [ 참조 ] https://developer.apple.com/library/prerelease/ios/releasenotes/General/WhatsNewIniOS/Articles/iOS9.html 그런데 유니티에서 자주 사용하던 WWW 에는 이런 SSL(TLS) 기능에 대한 대응이 아직 없는 것 같습니다. ( 물론 시간 지나면 해주겠지요. ) 기본적으로 HTTPS 로 통신하려면 서버에서 주는 인증서를 세팅하는 부분이 있어야 하는데... WWW 에는 아직 없네요.. 흑.. 그래서 방법을 찾아보던 중에 C# 에서 제공해 주는 H..
유니티 4 까지만 해도 유니티에서 제공하는 Analytics 가 베타버전 이었는데. 유니티 5 대로 넘어오면서 정식적으로 지원을 해주는 것 같습니다. 지금까지 구글에서 제공해주는 Google Analytics 를 사용하고 있었는데.. 최근 구글 애널리틱스가 구글 플레이 서비스로 통합 되면서 자꾸 라이브러리 충돌이 나서 일단 임시방편으로 사용해 볼 계획이었습니다. 먼저 유니티 통계 페이지로가서 로그인을 합니다. analytics.cloud.unity3d.com 그다음 Add Project 를 통해서 프로젝트를 만들어야 합니다. 버튼을 누르면 아래같은 화면이 나옵니다. [ 1 ] 프로젝트의 이름 [ 2 ] 구글에서 인앱결제를 체크하기 위한 API 키 [ 3 ] 회사나 단체 이름 [ 4 ] 사용하고 있는 유니..
[Unity3D] Mac 에서 유니티 코드를 모노(Mono) 대신 VSC(Visual Studio Code) 를 사용하는 방법
2015. 10. 22.
유니티로 개발을 하면 보통 모노 라는 프로그램을 사용 하는데요. 이게 요즘 많이 좋아졌다 하더라도 많이 무거워서 사용하기에 약간 불편하죠.. 그래서 얼마전에 알게 된 프로그램이 있었는데. 바로 VSC 입니다. MS 에서 만들었습니다. 사용해보니 모노 보다 훨씬 가볍고 괜찮은거 같네요. ㅎㅎ 그래서 이번 포스팅은 Mac 에서 유니티와 VSC 를 서로 연동하는 방법에 대해서 포스팅 하도록 하겠습니다. 먼저 VSC 홈페이지로 가서 zip 파일을 다운 받습니다. https://code.visualstudio.com/ 다운받아서 압축을 풀면 아래처럼 덩그러니 파일 1개만 있습니다. 이 파일을 응용프로그램 폴더에 넣어 줍니다. 그다음 유니티 프로젝트를 만듭니다. ( 이미 있으면 불러와도 되겠네요 ) 프로젝트가 만들..
Unity 버전 5 가 나온지도 꾀 지났습니다. Unity 5 가 나오기 전에 프로젝트를 진행했는데.. 최대한 버전 4 대로 버티려고 했지만.. 아무래도 장기적으로 봤을때는 어차피 업그레이드를 해야 하고 또 결정적으로 버전 4 대는 2016년 1월 정도 까지만 지원을 한다는 메일을 받고 업그레이드를 하기로 결심 했습니다. 이번 포스팅에는 Unity 4 프로젝트를Unity 5 로 마이그레이션 하는과정만 적어 놓도록 하겠습니다. 기타 마이그레이션 후 생기는에러나 기타 상황들은 제외 하였습니다. 먼저 유니티 5를 다운 받습니다. https://unity3d.com/kr/get-unity/download?ref=personal 그다음 설치를 완료하고 유니티를 실행하면 아래같은 화면이 나옵니다. 여기서 유니티 계..
유니티로 어플 개발을 하다가 통 이미지를 로딩해야 할일이 생겼습니다. 보통 이런 이미지나 기타 파일들은유니티 내부에 있는 클래스인 WWW 에 "file://" 을 붙여서 로딩 하는데.. 이렇게 통 이미지를 로딩 했더니로딩시간이 너무 오래 걸립니다. 그래서 로딩시간을 좀 줄이고 싶어서 찾아보던 중에 WWW 를 사용하지 않고그냥 이미지 자체를 Byte Array 로 읽어오는 방법이 더 빠르다는걸 알게 되었죠. 간단히 테스트를 통해서 각각의 로딩시간을 측정해보면.. 우선 WWW 를 사용한이미지 로딩 입니다.IEnumerator loadImgFromWWW() { WWW fileRequest = new WWW ( "file://" + 이미지 경로 ); yield return fileRequest; while ( ..