Unity学习笔记:课程学习中一些问题整理(父子物体坐标设置、刚体约束、Input.GetAxis、Rigidbody2D和Collider、Trigger)

Unity学习笔记:学习中一些问题整理(父子物体坐标设置、刚体约束、Input.GetAxis、Rigidbody2D和Collider、Trigger)

1.父子物体坐标设置:

当一个物体被设置为另一个物体的子物体时,他的坐标就会相应变成相对于父物体的坐标。
(听老师提了一句什么,一般来说,貌似是在杠加入场景还在微调,比如说旋转移动子物体让他跟父物体的形状更契合之类的的时候,把相对父物体的坐标调成(0,0,0),我有点不记得这是什么情况下了,如果有知道的朋友还请不吝赐教~)
看见一位网友的提问和讲解都挺有意思,放上来:
https://bbs.csdn.net/topics/391492205
Unity学习笔记:课程学习中一些问题整理(父子物体坐标设置、刚体约束、Input.GetAxis、Rigidbody2D和Collider、Trigger)_第1张图片

2.刚体约束

关于刚体的小简介:
http://c.biancheng.net/view/2749.html
Unity学习笔记:课程学习中一些问题整理(父子物体坐标设置、刚体约束、Input.GetAxis、Rigidbody2D和Collider、Trigger)_第2张图片
在这里插入图片描述
简单地来说,就是被勾选的那个轴就动不了了,被“冰冻“了。
Unity学习笔记:课程学习中一些问题整理(父子物体坐标设置、刚体约束、Input.GetAxis、Rigidbody2D和Collider、Trigger)_第3张图片

这有位博主分享了自己踩的雷和用代码控制刚体约束的方法:
https://blog.csdn.net/qq_15267341/article/details/80776808
Unity学习笔记:课程学习中一些问题整理(父子物体坐标设置、刚体约束、Input.GetAxis、Rigidbody2D和Collider、Trigger)_第4张图片
补充:
一个不像是刚体约束但也是约束的奇奇怪怪的东西,看起来很有用而且还不难的样子,顺便记一记吧:
https://www.pianshen.com/article/9293733071/

https://blog.csdn.net/nanggong/article/details/81058150

多用于物体之间有跟随运动(我动你也动)的情况
Unity学习笔记:课程学习中一些问题整理(父子物体坐标设置、刚体约束、Input.GetAxis、Rigidbody2D和Collider、Trigger)_第5张图片
在这里插入图片描述
Unity学习笔记:课程学习中一些问题整理(父子物体坐标设置、刚体约束、Input.GetAxis、Rigidbody2D和Collider、Trigger)_第6张图片
说实话,小白的我没太看懂这个”不是Transform的父物体“是什么意思,如果有哪位大神知道能麻烦评论区赐教么,先谢过了
Unity学习笔记:课程学习中一些问题整理(父子物体坐标设置、刚体约束、Input.GetAxis、Rigidbody2D和Collider、Trigger)_第7张图片

3.Input.GetAxis用来控制物体的移动

原理和代码都不难。 fInput = Input.GetAxis(“Horizontal”);获取水平方向移动距离,但是,我看老师操作的行云流水,我的就纹丝不动,后来发现我不该鼠标拖动,我应该按AWSD或者上下左右方向键········
这个函数针对不同的机型使用方法是稍有区别的:
【Unity 3D input.GetAxis用法_htpaoge_新浪博客】http://blog.sina.cn/dpool/blog/s/blog_bfa00a970102viu2.html
Unity学习笔记:课程学习中一些问题整理(父子物体坐标设置、刚体约束、Input.GetAxis、Rigidbody2D和Collider、Trigger)_第8张图片
附上一位码友关于这个函数的理解:
https://blog.csdn.net/weixin_44869410/article/details/103210842
在这里插入图片描述

4.Rigidbody2D和Collider

Rigidbody:Unity刚体,分3D和2D,加了之后就有物理性质,比如重力,就会自然往下落。
Collider:碰撞器,遇到另一个有碰撞器的东西的话就会停下来

比如要实现苹果落地,就得苹果加刚体组件(受重力会下落)和碰撞组件(砸地上会停下来),地面也要设置碰撞组件(能碰苹果)

同一个物体,Collider可以加一个,也可以加多个拼起来用,怎么舒服怎么来。
摘自”Unity2017从入门到精通“:

Unity学习笔记:课程学习中一些问题整理(父子物体坐标设置、刚体约束、Input.GetAxis、Rigidbody2D和Collider、Trigger)_第9张图片
Unity学习笔记:课程学习中一些问题整理(父子物体坐标设置、刚体约束、Input.GetAxis、Rigidbody2D和Collider、Trigger)_第10张图片
如果单纯想要完成碰撞检测的话,可以不用必须添加刚体组件:
比如:
https://www.sohu.com/a/115707001_466876
Unity学习笔记:课程学习中一些问题整理(父子物体坐标设置、刚体约束、Input.GetAxis、Rigidbody2D和Collider、Trigger)_第11张图片
Unity学习笔记:课程学习中一些问题整理(父子物体坐标设置、刚体约束、Input.GetAxis、Rigidbody2D和Collider、Trigger)_第12张图片
但如果是运动的物体要碰撞的话,则必须要加刚体
https://blog.csdn.net/u014196765/article/details/92643810
Unity学习笔记:课程学习中一些问题整理(父子物体坐标设置、刚体约束、Input.GetAxis、Rigidbody2D和Collider、Trigger)_第13张图片
Unity学习笔记:课程学习中一些问题整理(父子物体坐标设置、刚体约束、Input.GetAxis、Rigidbody2D和Collider、Trigger)_第14张图片
这里面提到了另一个东西,Trigger触发器
https://www.jianshu.com/p/f99463f0578d
**

这篇文章超赞!完美解答了我的问题,必须收藏!!!!

**
Unity学习笔记:课程学习中一些问题整理(父子物体坐标设置、刚体约束、Input.GetAxis、Rigidbody2D和Collider、Trigger)_第15张图片发现一个新知识点:车轮触发器专用于车辆

最终结论:
**1、只要有刚体有碰撞器,并且与其他碰撞器碰撞就会进入自身的碰撞器方法
2、没有刚体,有碰撞器的物体被一个拥有刚体的碰撞器碰撞,都会调用自身的碰撞器方法。
3、没有刚体的两个碰撞器相撞不会调用任何碰撞器方法

碰撞器(Collider)不需要刚体(Rigidbody)
刚体(Rigidbody)要发生碰撞,一定需要碰撞器(Collider)
碰撞器决定了碰撞发生时的边界条件 刚体决定了碰撞发生后的物体的运动效果 没有碰撞器的刚体,会在物理模拟中相互穿透。**

作者:大锤丶
链接:https://www.jianshu.com/p/f99463f0578d
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

你可能感兴趣的:(Unity学习笔记)