Решил вместо медленного LoadImage использовать LoadRawTextureData, но не могу понять как его использовать. Побайтово получаю изображение JPG, создаю текстуру и пытаюсь записать в Texture2D, в результате просто шумы в изображении. Что то делаю не так, подскажите пожалуйста, лучше с исправленным примером.
Игрался с форматами ( TextureFormat.ARGB32) не выходит, лишь меняются шумы.
Таким образом нужно читать изображения JEPG, PNG и JPG.
Большое спасибо!
private async Task<Sprite> TestWorkAsync(string value)
{
byte[] result = File.ReadAllBytes(value);
Texture2D resultPhoto = new Texture2D(1024, 768, TextureFormat.ARGB32, false);
resultPhoto.LoadRawTextureData(result);
resultPhoto.Apply();
//resultPhoto.LoadImage(result);
//Texture2D resultTexture = this.ScaleTexture(resultPhoto, resultPhoto.width / 2, resultPhoto.height / 2); // Уменьшаем текстуру
//Destroy(resultPhoto); // Уничтожаем данные
result = new byte[0];
Sprite preview = Sprite.Create(resultPhoto, new Rect(0.0f, 0.0f, resultPhoto.width, resultPhoto.height), new Vector2(1.0f, 1.0f), 100.0f);
return preview;
}