@KseroXe

Почему возникает ошибка NullReferenceException при попытке изменить компонент Text?

Пытаюсь сделать появление текста при каком либо событии.

Вот код:
//Floating text managment
    public GameObject textPrefab;
    public GameObject textContainer; 
    public Text txt;
    private float duration = 2f;

    public void ShowText(string msg, int fontSize, Color color, Vector3 position, Vector3 motion)
    {
        GameObject text = Instantiate(textPrefab, position, transform.rotation);
        text.transform.SetParent(textContainer.transform);

        txt = text.GetComponent<Text>();
        txt.text = msg;
        
        
    }


Я назначил в textPrefab рандомный TextMeshPro, в textContainer канвасы.
Опытным путем выяснил, что ошибка NullReferenceException возникает при попытке изменить содержание компонента Text (на строчке txt.text = msg).
Ощущение что это какая то глупейшая ошибка, но я не могу найти решение.
  • Вопрос задан
  • 37 просмотров
Пригласить эксперта
Ответы на вопрос 1
vkvk
@vkvk
Если я правильно понял, то ты создаешь объект с компонентом TextMeshPro, а с помощью GetComponent берешь компонент Text, которого нет на этом объекте скорее всего. Попробуй брать именно компонент TextMeshPro.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы