본문 바로가기

Unity29

[Unity] 드로우 콜과 배칭 (그래픽스 최적화 스타트업) 작성자의 이해가 잘못 됐을 수 있습니다. 참고용으로 읽어주시기 바랍니다. 지적은 항상 감사합니다. 드로우 콜? 드로우 콜은 (1) 오브젝트를 렌더링하는 데에 필요한 데이터(메시, 텍스처, 쉐이더 등)를 CPU 메모리에서 GPU 메모리로 복사하는 과정 (2) DP Call (Draw Primitive Call) - GPU의 Render State 테이블을 기반으로 렌더링하라는 명령 두 과정으로 나뉘어집니다. (1) 데이터는 디스크 > CPU 메모리 > CPU > GPU 순서로 이동하며, 이를 로딩 시점에 CPU 메모리에 미리 적재해두었다가, 드로우 콜 시점에 GPU의 각 슬롯에 복사해넣고, GPU에 데이터를 기반으로 슬롯 당 Render State 테이블을 만듭니다. 이 이후에 DP Call을 수행하는 것.. 2022. 7. 25.
[유니티] sRGB, Linear, Gamma https://rito15.github.io/posts/unity-srgb-linear-gamma-color-space/ 유니티 - sRGB, Linear, Gamma 컬러 스페이스 모니터의 색상 변환 모니터는 디스크에 저장된 이미지를 화면에 출력할 때 Pow(color, 2.2) 연산을 적용해서 더 어둡게 출력한다. rito15.github.io https://everyday-devup.tistory.com/60 [Unity] Gamma ( 감마 보정, 감마 색 공간 ) vs Linear ( 선형 색 공간 ) ● Gamma ( 감마 보정, 감마 색 공간 ) : 선형적인 이미지의 색을 사람의 눈에 자연스럽게 모니터에 보일 수 있도록 이미지를 특정하게 수정하는 방법 ※ 베버의 법칙 : 인간의 시각은 밝기에.. 2022. 7. 20.
[Unity] 병목 프로파일링 (그래픽스 최적화 스타트업) 최적화를 하기 위해선 다양한 방법이 있겠지만, 가장 기본이 되는 것은 병목을 탐지하는 것입니다. 이를 '프로파일링'이라고 합니다. 최적화 방향을 설정할 때 가장 먼저 해야할 것은 타겟 기기를 설정하는 것입니다. 사양이 좋은 하드웨어인지, 아닌지, pc인지 모바일인지 등을 말합니다. 원하는 것이 캐주얼 모바일 게임이라면, 정말 저렴한 기기에서도 돌아갈 수 있도록 하여야 할 것입니다. 83p 상단에 나와있는 예시는 정말 재밌게 읽었습니다. 디바이스가 발전되어도 게임이 더 높은 성능으로 돌아간다는 법은 없습니다. CPU가 발전되어도 해상도가 같이 올라가거나 하면 픽셀 처리로 인해 GPU 병목이 생길 수 있기 때문입니다. 추가로 모바일 기기라면 쓰로틀링으로 인해 성능 저하가 발생할 수 있기 때문에, 작업 시 더.. 2022. 7. 17.
[Unity] 간단한 에셋 번들 리소스 빌드, 패치하는 법 using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEditor; #if UNITY_EDITOR public class AssetBundleBuilder { [MenuItem("Tools/Build AssetBundle")] public static void Build() { string outputPath = "Assets/Bundles"; BuildPipeline.BuildAssetBundles(outputPath, BuildAssetBundleOptions.None, BuildTarget.StandaloneWindows); } } #endif 1. 빌드용 코드 작성 public class A.. 2022. 7. 16.