Unity 57

리소스 관리 - Addressable (5) - Label 및 다중로딩

이전 페이지 : https://dean83.tistory.com/207 리소스 관리 - Addressable (4) - Scene 이전 페이지 : https://dean83.tistory.com/206 리소스 관리 - Addressable (3) - Sprite 이전 페이지 : https://dean83.tistory.com/205 리소스 관리 - Addressable (2) 이전 페이지 : https://dean83.tistory.com/204 이번에는 inspector 에 dean83.tistory.com Addressable 리소스 들은 Unity 상단메뉴 -> Window -> Asset Management -> Addressables -> Group 을 선택하면, 리스트업 되어 있다. 해당 리소..

Unity 2024.02.02

리소스 관리 - Addressable (4) - Scene

이전 페이지 : https://dean83.tistory.com/206 리소스 관리 - Addressable (3) - Sprite 이전 페이지 : https://dean83.tistory.com/205 리소스 관리 - Addressable (2) 이전 페이지 : https://dean83.tistory.com/204 이번에는 inspector 에서 직접연결을 통해 addressable 리소스를 이용하는 법을 정리한다. 방식은 dean83.tistory.com Scene 또한 Addressable로 관리가 가능하다. 주의점 ! : Scene 을 Addressable 로 묶었을 경우, 빌드세팅 → Scenes in Build 에 체크가 해제 되어 있을텐데, 이를 체크하면 Addressable 이 풀려 버려..

Unity 2024.02.02

리소스 관리 - Addressable (3) - Sprite

이전 페이지 : https://dean83.tistory.com/205 리소스 관리 - Addressable (2) 이전 페이지 : https://dean83.tistory.com/204 이번에는 inspector 에서 직접연결을 통해 addressable 리소스를 이용하는 법을 정리한다. 방식은 기존에 inspector 에서 변수에 직접 드래그 하는것과 동일하나, 내 dean83.tistory.com sprite를 로딩해 오는 방법을 정리한다. 총 3가지로 내용 정리 한다. 1편에서 다루었던 Addressables 를 이용하여 코드베이스로 로드하는 방법 2편에서 다루었던 AssetReference 를 이용하여 Inspector 에서 연결하는 방법 형이 맞지 않으면 오류 발생하나, 다양한 형식의 리소스를..

Unity 2024.02.02

리소스 관리 - Addressable (2) - Inspector 이용

이전 페이지 : https://dean83.tistory.com/204 이번에는 inspector 에서 직접연결을 통해 addressable 리소스를 이용하는 법을 정리한다. 방식은 기존에 inspector 에서 변수에 직접 드래그 하는것과 동일하나, 내부적으로는 GUID를 통해 관리한다. AssetReference 형식의 변수를 선언하며, addressable 리소스만 연결이 가능하기 때문에 직접 이름을 넣는 방식의 휴먼에러를 막을 수 있다. 1. 스크립트에 AssetReference 변수 추가 - public 혹은 SerializeField 속성의 private 변수 생성 - AssetReference 변수의 경우, 모든 Addressable 리소스를 할당 받을 수 있다. 따라서 특정 형의 리소스를 ..

Unity 2024.02.02

리소스 관리 - Addressable (1) - 초기세팅 및 코드베이스

이전에는 유니티에서 텍스쳐 등 각종 리소스를 사용하기 위해 Resources 폴더를 만들고, 리소스들을 몰아 넣었다. 이후, 인스펙터나 씬에 해당 리소스들을 직접 연결함으로서 사용하였는데, 이럴경우 문제가 있다. 사용하지 않는 리소스 이라도 메모리에 올린다. 빌드 결과 파일 용량이 커지고, 메모리 및 로딩속도가 오래 걸린다. 미사용 리소스 정리가 어렵다 해서, AssetBundle 이라는 것이 생겼으나, 사용의 불편함 (예 : 모델링 파일 사용시 메쉬 등 도 일일히 미리 로딩 해야함) 이 있어 나온것이 Addressable 이다. * 주의 : Addressable 로 리소스 등록시, Stack 을 따른다. 즉 Last in First Out이 되므로, 리소스의 순서가 중요하다면 이점을 유의하여 등록하자 ..

Unity 2024.02.01

빌드 용량 줄이기 - 2 외부 툴 이용

https://github.com/CrazyGamesCom/unity-optimizations-package GitHub - CrazyGamesCom/unity-optimizations-package Contribute to CrazyGamesCom/unity-optimizations-package development by creating an account on GitHub. github.com 1. 해당 git에서 zip 파일 다운로드 -> Asset -> CrazyOptimizer 폴더 복사 -> 유니티 프로젝트의 Asset 안에 붙여넣기 2. 유니티 상단 메뉴 -> Tools -> WebGL Optimizer 클릭 3. 빌드로그 분석 탭에서 용량 큰 항목 선택 -> 해당 항목 위주로 작업하면 편함.

Unity 2024.01.31

빌드 용량 줄이기 - 1 (ft.빌드 리포트 확인)

1. 유니티 Console 에서 우측 상단 ... 클릭 2. Open Editor Log 선택 3. 검색에서, Build Report 를 검색 4. Texture, Mesh 등 각 항목별 사용 용량이 출력됨. - 특히, 세부 항목별로도 출력이 됨. 5. Texture의 경우 사이즈, 퀄리티 조절을 통해 용량을 줄일 수 있음. Resources 폴더 대신, StreamingAssets 폴더 사용 Resources 폴더는 실행시 모두 메모리에 올리기에, 무겁고 로딩속도가 느림 StreamingAssets 에 배정 후 코드에서 HTTPRequest 를 통하여 텍스쳐, 영상, 소리파일 등을 로딩할 수 있음. 만일 Inspector 에 리소스를 직접 참조하는 경우라면, 해당 리소스는 Resources 폴더 말고 ..

Unity 2024.01.30

WebGL 에서 VR 개발

유니티에서는 기본적으로 VR 을 개발할 수 있도록 SDK도 제공해 주고 있고, 제조사 별 Unity 패키지도 존재한다. 하지만 이러한 것들은 단독 프로그램으로서 동작하고, 각각의 장치별로 개별 SDK 설정과 개발을 해야하는 문제점이 있다. WebGL을 이용할 경우, 브라우저를 통한 접근을 하므로 제약사항이 없다. 다만, 퀄리티는 챙길 수 없다. WebGL 에서 VR을 이용할 수 있도록 하는 패키지는 unity-webxr-export 이다. https://github.com/De-Panther/unity-webxr-export GitHub - De-Panther/unity-webxr-export: Develop and export WebXR experiences using Unity WebGL Develo..

Unity 2023.12.14

Mesh 를 통해 면적, 부피 계산하는 법

Mesh를 통해 다양한 모양의 면적, 부피를 계산하는 법. 1. 설명 - Mesh는 vertices의 점과, 해당 점을 이은 triangles 를 통해 폴리곤을 만들고, 이를 화면에 표현하여 3D로 보여준다. - 즉, 3각형의 면적들을 모두 더한다면, 전체 면적을 알 수 있고, 부피의 경우 높이값이 별도로 필요하다. - 단, 경우에 따라 triangles 에 있으나 삼각형이 아닌 값들, 중복된 값들, 대각선의 삼각형 등은 제외해야 한다. - 유니티에서는 이를 손쉽게 구할 수 있도록 함수화가 잘 되어 있다. 2. 면적 및 부피 구하는 방법 - 아래에서 명시한 면적 및 부피 구하는 법은 인터넷에서 찾은 계산법이다. var triangles = 메쉬변수명.triangles; var vertices = 메쉬면수..

Unity 2023.12.12

폴리곤을 점으로 표현하기

메쉬는 점으로 이루어져 있고, 이 점들을 선, 그리고 삼각형인 폴리곤을 만들어 3D 형태로 렌더링 한다. 그냥 점 형태로 보여주고 싶을 경우 토폴로지 옵션을 변경하면 된다. 그 전에 메쉬를 구성하는 구성요소에 대해 알아보자. 1. vertices - 메쉬를 구성하는 각 점들의 Vector3 좌표들의 모음 2. triangles - vertices 를 이용하여 구성한 폴리곤 - vertices 의 인덱스 값을 가지고 있으며, 3개의 점이 하나의 삼각형을 이룬다. 즉, triangles[0], [1], [2] 가 1개의 삼각형이다. - 삼각형을 이루는 점의 좌표를 알고 싶다면, 연속된 3개의 triangles 의 값을 vertices[] 의 인덱스로 활용하면 된다. 예 ) triangles[0], [1], ..

Unity 2023.12.06