У меня есть ошибка в моей программе, из-за которой происходит сбой Unity после попытки запустить эту функцию.Функция заключается в том, чтобы преобразовать Texture2D в изображение
void SetTextureDefault()
{
try
{
Texture2D currentTexture = new Texture2D(CameraTexture.width, CameraTexture.height);
currentTexture.SetPixels(CameraTexture.GetPixels());
currentTexture.Apply();
// Asuming leftBackground and rightBackground of Image<Bgra, byte> exist
if (leftBackground == null || rightBackground == null)
{
using (var ms = new MemoryStream(currentTexture.EncodeToPNG()))
{
leftBackground = new Image<Bgra, byte>(new Bitmap(ms));
}
}
else
{
rightBackground.Bytes = leftBackground.Bytes = currentTexture.EncodeToPNG();
}
}
catch (Exception err)
{
Debug.Log(err.StackTrace);
}
}
Unity (как редактор, так и отдельное приложение) просто потерпел крах и не отображал никаких ошибок.Только показывая это окно .
Я могу думать только о нарушении доступа к памяти (но приложение не показывает никаких исключений)
Если я удалю функцию, программа запуститсяобычно
Я использую Unity Personal с EmguCV (настольная версия).