2017-03-27 1 views
0

정적 Texture2D 애셋을 라이브러리에 전달하려하지만 RGB24, RGB32 또는 RGB32A 만 필요합니다. 그것들은 압축되어 있지 않으므로 그 형식으로 텍스처를 저장하는 것은 실제로 옵션이 아닙니다. 엄청난 것입니다.Unity에서 어떻게 압축 된 텍스처 자산을 메모리 내 RGB24로 변환합니까?

내 Texture2D를 압축 된 형식으로 저장 한 경우 어떻게 메모리의 RGB24 (또는 RGB32)로 변환 할 수 있습니까?

올바른 형식과 크기로 새 텍스처를 만드는 방법을 알고 있습니다. 셰이더와 렌더링 타겟없이 이미지 데이터를 이동하는 방법을 모르지만 더 빠르고 쉬운 방법이 있다고 가정합니다.

그래서 C#에서 압축 된 텍스처 애셋을 메모리 내장 RGB24로 변환하는 방법은 무엇입니까?

답변

0

먼저 가져 오기 설정에서 텍스처를 읽기/쓰기로 표시하십시오. 그런 다음 Texture2D.GetPixels32를 사용하여 픽셀 데이터를 검색 할 수 있습니다. 라이브러리가 Color32 (기본 형식은 ARGB 또는 RGBA 중 하나이며 기억할 수 없음)를 지원하지 않는 기본 형식을 지원하지 않으면 수동으로 변환해야합니다.