Unity学习笔记:NullReferenceException、最大速度和速度、FixedUpdate、moveforce大小设置、Vector2.right到Vector2的使用

Unity学习笔记:NullReferenceException、最大速度和速度、FixedUpdate、moveforce大小设置、Vector2.right到Vector2的使用

1、NullReferenceException(未将对象引用到实例)

我是在用Transform,Find的时候遇到的这个问题,后来发现是要找的这个物体没设为挂脚本物体的子节点(这种情况只能用GameObject.find)。
二者的区别:
https://blog.csdn.net/yy763496668/article/details/77851582
在这里插入图片描述

以及,“在不确定游戏场景中是否有相同名字的游戏对象的时候,建议慎用GameObject.Find(string name);此方法。”

更多情况?
简单粗暴,直接上大神链接:
https://segmentfault.com/a/1190000012609600
在这里插入图片描述

2.最大速度和速度

在老师的课堂示范里,需要给移动的人物设置一个最大速度,一旦达到这个最大速度就不能继续加速。
在这里插入图片描述

在此提醒,最大速度是标量,速度是矢量,好像就是因为这个(课堂笔记有点没头没脑,不敢百分之八确定,谨慎起见这么写)要取速度的绝对值来判断,使用函数Mathf.Abs。
在这里插入图片描述
https://vimsky.com/examples/usage/mathf-abs-method-in-c-sharp-with-examples.html
这个网站给我第一印象很好,因为他的示例把在哪用了这个函数都高亮了,快乐。
在这里插入图片描述
查资料的过程中还发现了一个关于三目运算符和这个函数的乌龙吐槽:
https://www.jb51.net/article/159702.htm
在这里插入图片描述
对此,我只想说:
在这里插入图片描述

3、FixedUpdate

之前自学和项目里一直用的Update,今天老师讲了个新的,FixedUpdate。
大佬的科普贴:https://www.cnblogs.com/dlyedu/p/7648463.html
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
以下这张图片和老师的讲解略有出入:

我们老师讲解的是,因为FixedUpdate是固定时间频率调用,而对鼠标和键盘的响应最好是每一帧响应,不然如果正好在Update的响应间隙中,则可能出现游戏没有反应的情况。以及,变量一开始就在开头初始化,不要每帧调用一次就初始化一次,更不要写错函数名称。
在这里插入图片描述

经评论区证实,老师是正确的。应该用Update接受鼠标和键盘。
在这里插入图片描述
果然,绝知此事要躬行啊,姜还是老的辣。

除此之外,还发现一个LateUpdate
示例应用:物体(一个或多个Update)+跟随物体的摄像机(LateUpdate直接显示物体的所有Update一顿操作猛如虎之后的结果)
在这里插入图片描述
在这里插入图片描述
以及,不要把GameObject定义(也可能是Find,有点记不得了)的代码写在Update里面,这样会浪费很多空间。

4.moveforce大小设置

老师的课堂项目里面有移动人物的需求,所以需要定义一个变量moveforce。
在这里插入图片描述
moveforce的使用如下图,主要是为了让物体加速。
Vector.right是(1,0)向量,决定方向,fInput是通过fInput = Input.GetAxis(“Horizontal”);获取的水平偏移量。
在这里插入图片描述
老师讲了同学们反映的问题主要是**moveforce设置得太小,导致人物移动不明显,误以为没有移动,**浪费了很多时间找不存在的错误。

5.Vector2.right到Vector2的使用

本场客串嘉宾。只因为老师上课提了一句vector2.right表示(1,0)。于是我就想搜齐整上下左右四个方向。这家伙的定义也很简单,连API的出场都是寥寥无几······
在这里插入图片描述
在这里插入图片描述

然后,原本的客串变成了王炸:极其推荐的良心帖子
https://blog.csdn.net/qq826364410/article/details/86523346
在这里插入图片描述
其中有几个稍微陌生一点的,我就这API一起查了:
在这里插入图片描述
在这里插入图片描述
其他的我感觉我一时半会也用不上,需要的时候再快速搜索自学吧~~

存个API文档链接;
https://docs.unity3d.com/cn/2019.3/ScriptReference/Vector2.html

放上自己的课堂笔记水一波,老师边讲边做的,速度有亿点点快,边疯狂打字边模仿操作的·我自己也看不明白的·零零碎碎的笔记:
在这里插入图片描述
感谢你能看到这里,一起努力成为更好的自己呀~~~

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值