[Unity] 텍스쳐 이름을 입력하면 Memory Profile에 이미지를 표시할 수 있습니다.

4313 단어 Unity

AB화되지 않은 이미지를 읽어도 Memory Profile에 표시하기


AsseetBule화된 텍스쳐, Resource.Load에서 읽은 텍스쳐는 Memory Profile에서 어떤 텍스쳐인지 확인할 수 있습니다.

그러나 이미지도 그대로 처리할 수 있기 때문에 자산 묶음 처리를 하지 않아도 된다.
// png画像を読み込んでTexture2Dにする
var texture = LoadTexture(filePath);
image.sprite = Sprite.Create(texture, new Rect(0,0, texture.width, texture.height), Vector2.zero);
그때 읽은 이미지가 메모리프로필에서 아래처럼 변해서 어떤 이미지인지 알 수 없어 불편했어요.

이것은 무늬를 만들 때 이름을 붙이면 해결된다.
// png画像を読み込んでTexture2Dにする
var texture = LoadTexture(filePath);
texture.name = filePath;
image.sprite = Sprite.Create(texture, new Rect(0,0, texture.width, texture.height), Vector2.zero);

Memory Profier 측면의 설치를 시도해 보십시오.


Inspector.다음 작업은 cs의 GetTexture(Native Unity Engine Object native Object)에서 수행됩니다.
if(loadedTextures[i].name == nativeObject.name)
{
    return loadedTextures[i];
}
텍스쳐 이름의 느낌을 비교합니다.
예전 Memory Profiiler였다면 이름을 안 써도 해볼 수 있었을 거라 생각하고 확인을 해봤어요.
EditorUtility.InstanceIDToObject(nativeObject.instanceID) as Texture2D;
라는 문양을 담았다.최신이랑 설치 달라졌어요?

총결산


Unity에서 원래의 이미지 파일을 사용하는 경우 Texture2D가 생성될 때name을 업데이트하면 Memory Profile이 표시되므로 쉽게 확인할 수 있습니다.

좋은 웹페이지 즐겨찾기