因为rigidbody未定义为Rigidbody类型,所以rigidbody无法访问velocity。Unity5里所有组件语法都规范话了,和其他组件一样,Rigidbody都要定义一个变量然后让该变量指向Rigidbody组件才能访问,如下所示:
Rigidbody rigidbody;
rigidbody = this.GetComponent<Rigidbody>();
而Unity4有默认变量直接指向Rigidbody组件,不需要定义就可以直接使用,这方便倒是方便了,但确实不够规范,把C#语法复杂化了。所以,从unity5开始,很多默认变量都取消了,都要先定义,然后指定组件(赋值),才能使用。
转载自:http://zhidao.baidu.com/link?url=RFItZ33w-FW5gQwzXD-3Iib-V96n0wByejRM9Pl0Sa-zzO2nF9hhdDG1OPchfk_Mea4aDbQeLTnJetSK12ezW6DM2n6_rqrpsxDl9wSno83