我正在将预制件作为对象,然后尝试使用具有这些预制件的这些对象来做某事。但是,在检查器中,它要求附加实际上已经通过代码附加的对象。
代码
public float hitspeed=2f;
public GameObject target, mytarget;
public GameObject arrow,myarrow;
//Use this for initialization
void Start (){
myarrow = Instantiate(arrow, new Vector3(0.02f, -3.98f, 0), transform.rotation);
mytarget = Instantiate(target, new Vector3(-0.06435323f, 2.325303f, 0f), transform.rotation);
}
检查器
错误
[06:34:34] UnassignedReferenceException:刀的可变箭头尚未分配。您可能需要在检查器中分配刀脚本的arrow变量。
[06:34:39] UnassignedReferenceException:尚未分配刀的变量myarrow。您可能需要在检查器中分配刀脚本的myarrow变量。
答案 0 :(得分:0)
选中对象,以便您可以看到图像中显示的检查器
转到“项目”窗口,找到您的预制件。
将其拖动到检查器,显示“无”。
您还可以点击“无”旁边的小目标/圆圈,然后从列表中进行选择。
答案 1 :(得分:0)
确实,您似乎已经分配了myarrow
和mytarget
,但是,您已经使用target
和arrow
实例化了它们。您已使用gui设置了target
,但没有设置arrow
。您还必须设置arrow
。
通常,引用another answer:
[{
arrow
和target
必须]是您已经在编辑器中创建的预制件, 拖放到该对象的“检查器”窗口中。向您保证:
创建了一个预制件
在编辑器中选择了此对象,因此检查器出现
将预制件拖放到检查器中的“箭头” /“目标”字段