报错:NullReferenceException: Object reference not set to an instance of an object

解决方法:来自 阶梯之上 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/u011185231/article/details/49523293

报错:NullReferenceException: Object reference not set to an instance of an object
ObjectPooler.GetPooledObject (System.String tag) (at Assets/ObjectPooler.cs:55)
NoteSpawner.Start () (at Assets/NoteSpawner.cs:15)


我的情况:2个类的变量都在start()方法中实例化,其中一个类去调用另一个类。
问题所在:在A类调用B类时,B类的变量可能还没有实例化。
解决方法:把B类(最先实例化)的变量放在Awake()方法实例化。

Unity脚本的生命周期

Awake():此函数始终在任何Start函数之前调用,也在预制件之后调用中的实例化。(如果GameObject在启动期间处于非活动状态,则在激活之前不会调用Awake,一直会到gameobject处于active状态的时候会被调用)
Start():仅在启用脚本实例时,才会在第一帧更新之前调用Start。
在这里插入图片描述

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值