Конвертировать Texture2D в EXR (HDRI)

Я ищу способ конвертировать Texture2D непосредственно в формат EXR в байтовом массиве. Я провел небольшое исследование, и это кажется сложнее, чем я думал.

На самом деле не ищу код, так как у меня его нет. Просто предложение о том, как это сделать.

1 ответ

Решение

Unity 5.6 только что была выпущена и, что удивительно, имеет API для выполнения преобразования Texture2D в EXR.

Чтобы преобразовать Texture2D в EXR (HDR)

byte []exrBytes  = texture.EncodeToEXR();

Чтобы преобразовать Texture2D в EXR (HDR) сжатый

byte[] exrBytes = texture.EncodeToEXR(Texture2D.EXRFlags.CompressZIP);  

Больше флагов кодирования EXR можно найти здесь.

Другие вопросы по тегам