툴/유니티 74

셰이더 코드 작성시 편집기

윈도우에서 셰이더 코드를 작성할때 Intellisense가 잘 작동되지 않거나 대소문자 자동변환이 안되는 등 Visual Studio를 쓰면서 불편한점이 있다 -Visual Studio에 쉐이더 관련 플러그인을 설치 https://marketplace.visualstudio.com/ Visual Studio Marketplace Extensions for Visual Studio family of products on Visual Studio Marketplace marketplace.visualstudio.com 비주얼 스튜디오 마켓 플레이스에서 ShaderLab이나 HLSL툴 같은 플러그인 설치 또는 비주얼 스튜디오 '확장 관리' 옵션에서 플러그인 검색해서 설치 -VScode를 사용하고 별도 플로그인..

툴/유니티 2023.02.11

HDRP 레이트레이싱 / NVIDIA X UNITY 웨비나

https://www.youtube.com/watch?v=sdXJx_xFUq4&list=PLZRkhdCgooCZzZfPfZobbt6SDqYB9XGMq&index=4 기존에 보편적인 라이팅 렌더 방식인 래스터화는 카메라 프레임안에 들어온 메쉬,뎁스,쉐이더 등의 정보를 기반으로 반사광, 빛의 폐색 등을 표현했는데 정교하지 않을뿐더러 카메라 프레임 경계 밖 혹은 다른 오브젝트에 가려진 부분의 빛의 반사까지 담지 못해서 앵글에 따라 갑자기 나타나보이거나 튀는 라이팅이 있거나 정교한 빛 계산이 되지 않았다. 레이트레이싱을 사용하면 래스터화의 단점들을 보완하고 더 사실적인 빛의 연산이 가능해진다. Project Settings - Quality에 High,Medium,Low가 있지만 3개 다 레이트레이싱 설정은 안..

툴/유니티 2023.01.28

HDRP Procedural Sky

HDRP Volume - Visual Environment - Sky Type에 하늘 표현 타입중 하나 따로 패키지 매니저 HDRP에서 샘플로 Procedural Sky를 설치해주어야 사용가능 https://docs.unity3d.com/Packages/com.unity.render-pipelines.high-definition@12.1/manual/Override-Procedural-Sky.html Procedural Sky | High Definition RP | 12.1.9 Procedural Sky The Procedural Sky Volume component override lets you specify the type of sky that the High Definition Render Pi..

툴/유니티 2023.01.28

HDRP 조명 집중 탐구 가이드 e-book / 내용 정리

https://unitysquare.co.kr/growwith/resource/form?id=213 Unity Square 고해상도 렌더 파이프라인(HDRP) - 2021 LTS 에디션 unitysquare.co.kr 유니티 스퀘어에서 HDRP 셋팅에 대한 내용을 e-book PDF 자료로 배포함. 유니티 2021LTS / HDPR 12.x 기존 빌트인에 비해서 포스트프로세싱이나 그래픽 셋팅이 많이 세분화 되어있고 복잡해졌다 기본 HDRP 글로벌 셋팅값 에셋이 있고, 그래픽 퀄리티별로(high,medium,low) 에셋이 나눠지고, 각각 프로필 셋팅이 나눠진다. 하나의 기능을 끄거나 쓰려고 해도 관여하는 셋팅 에셋들이 많아서 복잡한 느낌이라서 그래픽 용어, 설정 방법에 대해 잘 익혀야 다룰수 있을거 같다..

툴/유니티 2023.01.25

텍스쳐 압축/최적화

https://youtu.be/BeEjoTa9sSo 텍스쳐압축 DXT,ETC,PVRTC,ASTC True Color = 일반적인 이미지 컬러 = 32bpp RGBA 각각 8비트씩 합쳐서 32비트 bpp(bit per pixel) PNG 비손실 압축 JPG 손실 압축 그렇다할지라도 단순한 형태, 비슷한 컬러가 많을 경우 PNG가 더 고퀄리티로 저용량일 수도 있음 이미지 포맷은 용량을 줄이기위한 포맷이지 GPU에서 메모리를 줄이기 위한 포맷은 아님 그래서 유니티에서 GPU전용 포맷으로 변환을 함 텍스쳐 압축 특징 -빠른 디코딩(압축된 GPU상에 올라가있는 거기 때문에 디코딩이 빨라야함) -랜덤 액세스(압축된 상태에서 순차적으로 접근하는게 아닌, 원하는 좌표의 컬러값에 바로 액세스 할수 있어야함) 가변 비율 ..

툴/유니티 2023.01.24

병목(Bottleneck) 간단 정리

https://youtu.be/o3o7fVCV4OA 최적화를 하기 위해서 프로파일링을 하고 병목을 찾아야함 병목(Bottleneck) - 말 그대로 병의 목처럼 물을 따라도 좁으면 따르게 따를수 없는것 처럼 빨리 처리할수 없는 현상 병목을 찾을때는 먼저 CPU Bound인지 GPU Bound 인지를 찾음 드로우콜(Draw Call) - CPU가 그래픽라이브러리를 통해 GPU에게 해야할 일을 명령하는것 CPU와 GPU는 병렬로 일을 처리함 CPU가 GPU에게 일을 시키고 GPU가 해당 명령을 다 수행한 뒤에 CPU가 다음 일을 하는것이 아님! CPU가 GPU에게 시킬 일이 있으면 명령을 던져 놓고 CPU는 다음 할일을 함 이때 CPU가 GPU에게 시킬 명령은 Command Buffer를 통해 전달함 GPU..

툴/유니티 2023.01.24

IL2CPP,Mono,Burst

https://youtu.be/-9X965jXrn8 https://youtu.be/ZuzBOXUuEeM 빌드 셋팅하다보면 IL2CPP나 Mono, Burst 등 생소한 용어들이 있어서 유니티 코리아에서 찾아봄 유니티 엔진 자체는 C++ 유저 스크립팅만 C#으로 작성 C++은 메모리 관리를 직접하기 때문에 성능이 좋음, 대신 생산성이 떨어짐 C#은 MS닷넷 프레임 워크를 사용하고 메모리 관리를 직접 안함, 대신 생산성이 좋음 C#은 닷넷 프레임워크에서 돌아가는데 MS제품이 아닌데에서는 돌아가지 않음(안드로이드,IOS 이식 불가) 그래서 다른 플랫폼에 가능한건 Mono프레임워크를 사용하기때문 Mono프레임워크는 다른 플랫폼에서도 돌아감(리눅스 기반) IL(intermediate language) = 중간언어..

툴/유니티 2023.01.24

빌드 없이 모바일 테스트 [유니티 리모트 / Unity Remote]

모바일로 개발을 하며 테스트 할때마다 빌드하고 모바일로 전송&설치 하려면 매우 번거롭다 그래서 모바일 디바이스를 컴퓨터에 연결하고 유니티 에디터에서 플레이를 누르면 바로 모바일에서 테스트할수 있는 기능이 있다. 유니티 리모트 방법(안드로이드 기준) 일단 스토어에 들어가서 Unity remote검색 Unity Remote5 설치 모바일 기기를 컴퓨터에 연결한다 USB 사용 용도는 테더링으로 클릭 그리고 모바일 기기의 개발자모드를 켜주어야 한다 설정 - 휴대전화 정보 - 소프트웨어 정보 그리고 빌드번호를 연타해서 터치하면 개발자 모드가 켜짐 개발자 모드가 켜지면 설정에서 개발자 옵션이 나옴 개발자 옵션 들어가서 USB 디버깅 사용으로 체크 그리고 유니티 에디터에서 Edit - Project Setting -..

툴/유니티 2022.12.22

OSC 한글 문자열(string) 전송, 텍스트 인코딩(Unicode,Base64)

모바일(Android) 태블릿에서 플레이어가 입력한 이름을 PC로 전송해야하는 로직 개발이 필요했다 그래서 유니티로 입력한 문자열(string) 데이터를 OSC로 전송하고자 함 https://github.com/keijiro/OscJack GitHub - keijiro/OscJack: Lightweight C# implementation of OSC server/client Lightweight C# implementation of OSC server/client - GitHub - keijiro/OscJack: Lightweight C# implementation of OSC server/client github.com 케이지로의 OSCJack을 사용 OSC로 전송할수 있는 타입은 int, float,..

툴/유니티 2022.12.03

유니티 + 립모션 (Unity + LeapMotion) 연결 및 위치값 받기

윈도우 립모션 SDK https://developer.leapmotion.com/tracking-software-download Download Ultraleap's Hand Tracking Software — Ultraleap for Developers Download Ultraleap's Hand Tracking Software. It has everything you need to run your camera module and get tracked hands working for you. developer.leapmotion.com 윈도우 SDK설치해서 실행후 하단표시줄에 아이콘 뜨고 Tracking상태여야 함. 유니티 립모션 SDK https://developer.leapmotion.com/un..

툴/유니티 2022.09.23