@NeoLight3

Object Reference not set to an instance of an object. Что делать?

Есть функция:
public static void CreatePNG(CommandArgs args)
        {
            try
            {
                GameObject _cam = new GameObject();
                var cam = UnityEngine.Object.Instantiate(_cam, new Vector3(args.sender.position.x + 10f, args.sender.position.y, args.sender.position.z), args.sender.rotation);
                ((GameObject)cam).camera.aspect = 1.0f;
                RenderTexture tempRT = new RenderTexture(512, 512, 24);
                ((GameObject)cam).camera.targetTexture = tempRT;
                ((GameObject)cam).camera.Render();
                RenderTexture.active = tempRT;
                Texture2D virtualPhoto = new Texture2D(512, 512, TextureFormat.RGB24, false);
                virtualPhoto.ReadPixels(new Rect(0, 0, 512, 512), 0, 0);
                RenderTexture.active = null;
                ((GameObject)cam).camera.targetTexture = null;
                byte[] bytes = virtualPhoto.EncodeToPNG();
                StreamWriter streamWriter = new StreamWriter("Unturned_Data/Managed/picture.png", true);
                streamWriter.Write(bytes);
                streamWriter.Close();
                Reference.Tell(args.sender.networkPlayer, "Successfully created Picture!");
                UnityEngine.Object.DestroyObject(cam);
            }
            catch (Exception err)
            {
                Reference.Tell(args.sender.networkPlayer, $"Err: {err.Message}");
            }
        }


При её выполнении возникает ошибка Object Reference not set to an instance of an object, в интернете искал решения - не нашел.
Где я допустил ошибку?
Что я делаю:
Я хочу в моей функции создать новый игровой объект в сцене Unity,
Который потом инстанциирую, а за тем пытаюсь зарендерить фото из камеры этого объекта.
Что я делаю не так ?
  • Вопрос задан
  • 93 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы