일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- 오브젝트 깜빡임
- M590
- 유니티 브랜치 merge
- 유니티 합치기
- 유니티 해상도
- nav오브젝트사이거리
- unity git
- 깃허브 데스크탑 합치기
- nav거리
- stateauthority
- githubdesktopmerge
- m585 수리
- m585
- networkobject
- unity merge
- 유니티 머지
- networkobject.networkid
- Unity
- unity 병합
- 유니티 해상도 변경
- networkbehaviourid
- Github DeskTop Merge
- 유니티 해상도 설정
- navigation
- 유니티
- 깃허브 데스크탑 병합
- m590 수리
- 몬스터
- NavMesh
- Today
- Total
목록유니티 (26)
집게사장의 꿈
https://doc.photonengine.com/ko-kr/fusion/current/tutorials/shared-mode-basics/1-getting-started Fusion 2 1 - Getting Started | Photon EngineFusion Shared Mode Basics explains the initial steps required to start a Fusion project. A general understanding of Unity and C# is expected.doc.photonengine.com 1. SDK 다운로드 및 기본 설정 Edit > Project Settings > Editor > Asset Serialization > Mode. => ForceMod..
https://doc.photonengine.com/ko-kr/fusion/current/fusion-intro Fusion 2 소개 | Photon EngineFusion은 유니티를 위한 새로운 고성능 상태 동기화 네트워킹 라이브러리입니다. Fusion은 기본적으로 데이터 압축, 클라이언트 측 예측 및 지연 보상과 같은 고급 기능을 제공하는 동시에 일반적doc.photonengine.com Server서버가 모든 오브젝트에 대한 권한을 가진다.클라는 서버에 입력을 요청하거나 RPC를 통한 네트워크 객체만 변경이 가능하다.클라이언트 측 예측클라이언트 측 요청을 서버로부터 받기 전 클라이언트 측 오브젝트의 움직임을 예측하여 처리지연이 있더라도 다음 동작을 예측하기에 지연이 없는 것처럼 느낌.단 요청받은..
*테스트 기기 Galaxy S8 텍스쳐 대역폭을 줄이기 위한 크기 변경 GPU가 메모리에 저장되어 있는 텍스쳐를 읽어오는데, 모바일에서는 메모리의 대역폭이 문제가 될 수 있기 때문에 사이즈를 줄이고, 압축포맷을 변경하여 전체적인 크기를 줄인다. -별로 효과가 없었다. 버텍스 수 줄이기 버텍스 수가 2M 정도 되는데 이것 때문에 GPU 병목이 발생한다는 것으로 어느정도 결론이 났음. * 아래 버텍스 Simpifier API를 활용해 병합된 메시들을 Vertex를 줄여서 생성할 것임 https://thegamedev.guru/unity-gpu-performance/unity-mesh-simplifier/ Simplify Your Life With Unity Mesh Simplifier Lose those e..
//해당하는 테이블의 언어를 얻어옵니다. public string GetLocalText(string table, string key) { string txt = ""; //모바일일 경우 해당 모바일 키가 존재하는지 판단합니다. if (!GameConfig.IsPc()) { string tmp_key = key + "_Mobile"; var collection = LocalizationSettings.StringDatabase.GetTableEntry(table,key); string entry = collection.Entry.Key; if (entry.Equals(tmp_key)) { txt = LocalizationSettings.StringDatabase.GetLocalizedString(tabl..
[혼자만의 뇌피셜일 가능성이 높습니다]구글 플레이 플러그인을 통한 빌드에는 성공했지만,구글 애드즈를 추가하고 빌드를 하니 "We recommend using a newer Android Gradle plugin to use compileSdk = 34" 빌드 중에 이러한 경고문이 뜨면서 빌드가 되지 않았다. [유니티 버전Gradle 버전Android Gradle 플러그인 버전 정보]2022.37.27.1.22021.32020.3 2020.3.15f1부터 시작6.1.14.0.12020.3부터 2020.3.14f1까지5.6.44.0.1 위 버전을 보면 최대 지원되는 AGP가 7.1.2여서 생기는 문제 같은데, 이를 해결해 보려고 많은 시도를 했다. [현재 사용 버전]Editor 22.3.3f1Googl..
해결 1 현재 레이아웃을 직접 지정 C:\Users\[사용자이름]\AppData\Roaming\Unity\Editor-5.x\Preferences\Layouts\default 위 경로에서 레이아웃 하나를 임의로 복사 D:\[유니티 프로젝트 이름]\Library 아래에 복사 이름 변경 [4 Splits] => [CurrentLayout_default] 다시 프로젝트 실행 해결 2 Artifacts 파일 삭제 [내가 썼던 방법] D:\[유니티 프로젝트 이름]\Library 해당 유니티 프로젝트 파일 내 Artifacts 삭제 후 실행 ! 데이터 로드로 인해 시간이 소요 됨.
[출처] https://youtu.be/BeEjoTa9sSo?si=jght3spH8ryvUxUr https://youtu.be/3_pASBWPovc?si=guyVjtFXfqmijkK3 PVRTC[POWERVR TEXTURE COMPRESSED][IOS] 4X4 블럭기반 DXT에 더해 이미지를 블러링하여 블럭 경계를 페더링처리한다. 원래의 이미지의 대표 색상을 분리하고 하드웨어에서 결합하는 과정을 거침 블러링 현상이 발생함., 픽셀이 중요한 그래픽에 적합하지 않음. 키 컬러를 최대 4개까지 추출이 가능하며, 복잡한 색에 대해서 그라데이션 값을 지정 여러 패턴을 가지고 압축에 사용하기 때문에 생각하는 것보다 용량이 크기 않다. ETC[ELECSON] 블럭기반 색상과 밝기로 분류하여 마지막에 합성함 블러킹현상..
최적화에 대한 노력 1. 메모리 프로파일링 모바일 전환을 위한 게임 내 메모리 사용량을 판단하기 위해 프로파일링을 했다. *9GB 라는 아주 큰 사이즈에 정말 많이 놀랐지만, Managed에서 대부분 소비하는 것으로 보아 이것은 유니티가 C++ 에서 사용하는 부분이기에 빌드를 해보기로 했다. *정말 큰 문제는 메모리 텍스쳐 메모리 사용이었는데, 이를 줄이기 위해서는 아주 간단했다. 우선 기본적으로 내 게임의 특성이 있는데 1. 공포게임 2. 화질이 좋지 않은 것이 오히려 효과적임 3. UI 요소가 많지 않음 그렇기에, 위의 내용을 토대로 MipMap을 해제하고, UI의 크기를 반 사이즈 줄이고, PC 압축 포맷을 ETC5 Compressed로 변경해서 메모리 사용량을 줄였다. 2. 프로파일링 * 여기서 ..
증상 : 아래 동영상과 같이 오브젝트들이 깜빡거리는 현상이 발생함 해결 : 렌더링 시 최대 연산 가능한 라이트 수를 제한을 해서 그렇다 메쉬들을 병합하였기 때문에 실제로 메쉬 하나에 그려지는 라이트의 개수가 제한된 범위를 뛰어넘었다. URP 세팅에서 최대 추가 라이트 수를 변경해 주었다.
문제점Batches 가 약 2만개CPU가 60ms 나오던 상황 최적화 이전 최적화 후 최적화 한 방법머티리얼의 렌더링 방식을 통일화하여 같은 머티리얼 키워드를 가진 오브젝트를 묶는다. 머티리얼의 Surface Type을 통일하거나, Specular Highlight를 끄는 식으로 머티리얼 호출 회수를[SetPassCall] 줄였다. 1의 과정으로 통일된 머티리얼을 코드 상으로 메쉬들을 통합시켜 하나의 Batches로 처리하게 한다.어두운 배경을 사용하기 때문에 사용하지 않는 그림자를 꺼서 그림자 그리는 비용을 아낀다.URP 옵션에서 끌 수 있다.오브젝트를 사용하지 않는 것은 제거한다. 위와 관련된 정보https://github.com/ImKrap/MeshCombineder