게임에서 사용하는 이미지 가소 세로 가이즈는 무조건 2의 제곱으로 되어야 한다.
이미지를 2의 제곱방식으로 바꿔서 항상 활용하라
var sortedAll = FindObjectsOfTypeIncludingAssets(typeof(Texture2D)).OrderBy(go=>
Profiler.GetRuntimeMemorySize(go)).ToList();
이 명령으로 현재 모든 텍스처2D 오브젝트를 구할 수 있다. 또 메모리 크기 순서대로 정렬한 상태로 리스트가 나오게 된다. 그렇다면 모든 텍스처2D 리스트를 출력해보자
var sortedAll = FindObjectsOfTypeIncludingAssets(type).OrderBy(go=>
Profiler.GetRuntimeMemorySize(go)).ToList();
StringBuilder sb = new StringBuilder(“”);
int memTexture = 0;
for(int i = sortedAll.Count-1;i>=0;i–){
if(!sortedAll[i].name.StartsWith(“d_”)){
memTexture += Profiler.GetRuntimeMemorySize(sortedAll[i]);
sb.Append(type.ToString());
sb.Append(” Size#”);
sb.Append(sortedAll.Count – i);
sb.Append(” : “);
sb.Append(sortedAll[i].name);
sb.Append(” / Instance ID : “);
sb.Append(sortedAll[i].GetInstanceID());
sb.Append(” / Mem : “);
sb.Append(Profiler.GetRuntimeMemorySize(sortedAll[i]).ToString());
sb.Append(“B / Total : “);
sb.Append(memTexture/1024);
sb.Append(“KB “);
sb.Append(“\n”);
}
}
Debug.Log(“Texture2D Inspect: “+sb.ToString());
[Unity] 속도 최적화 기법 (0) | 2023.07.19 |
---|---|
[Unity] 메모리 관리 (0) | 2023.07.19 |
[Unity] 시간경과의 따른 로직 처리 (0) | 2023.07.19 |
[Unity]renderer.material 과 renderer.sharedMaterial의 차이점 (0) | 2023.07.19 |
[Unity] Rigidbody의 Interpolate 옵션 (0) | 2023.07.19 |