Object reference not set to an instance of an Object Почему unity выводит эту ошибку?

public void Awake()
{
sv = JsonUtility.FromJson<Save>(PlayerPrefs.GetString("SV"));
Debug.Log(sv.achieveStatus.Length);
}
public void OnApplicationQuit()
{
sv.achieveStatus = new byte[11, 3];
PlayerPrefs.SetString("SV", JsonUtility.ToJson(sv));
PlayerPrefs.Save();
}


Во втором случае, в функции OnApplicationQuit, в консоль выводится 33. В первом, в функции Awake, выдает ошибку Object reference not set to an instance of an Object. Sv - класс в переменные которого записываются значения, которые надо сохранить. Все то же самое с одномерным массивом работает нормально. В чем может быть причина?
  • Вопрос задан
  • 111 просмотров
Решения вопроса 1
MrMureno
@MrMureno Куратор тега Unity
VR for all
а вы не забыли случаем где нибудь инициализировать массив??
если уж другие переменные и поля из sv доступны..

sv.achieveStatus = new int[,]
или не int. но суть уловили.

а то так и получите NUllRef))нельзя брать длину у НИЧЕГО))
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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