文章标题

来源:互联网 发布:java做游戏 编辑:程序博客网 时间:2024/06/10 08:49

Unity 坐标

1、local 物体自身的坐标系
这里写图片描述
2、global 世界坐标系
这里写图片描述
transform.position 得出的是Global坐标下物体的位置
vector3.forward和transform.forward的区别在于前者是世界坐标系的z轴正方向,后者是局部坐标系的z轴正方向。

Unity Rigidbody

官方解释:Control of an object’s position through physics simulation.(英语还在学习ing)
就是模拟现实中的物理效果来实现控制位置属性。

考虑现实情况,物体有速度快慢,我们给他一个力,力有大小,让它朝某个方向移动,速度有大小。
forcemode枚举成员(这之间的微妙差别大概就在实战中自己总结)

force 持续的力
acceleration 持续的力
impluse 忽略质量,瞬间的力
velocityChange, 瞬间的力

常用的如:

rigidbody.addforce();
可以根据实际情况来判断是加持续的力或者是瞬间的力,力的大小可以在方向向量后乘以一个常数。

rigidbody.velocity;
改变速度方向是暂时的,同样可以设置速度大小。

Transform.LookAt

LookAt字面意思就是朝某个方向看去。
首先我们还是先看官方解释:
Rotates the transform so the forward vector points at /target/’s current position.
里面可以得出是物体z轴正方向朝向。

Line Renderer

学习新东西,首先看下官方说明
The Line Renderer component takes an array of two or more points in 3D space, and draws a straight line between each one.
这意思就是说在空间中的每个点之间画一条直线。
那么他可以拿来干什么?看脑洞得多大了。
下面写下常用的:
1、我们可以通过materials来改变他的材质。
2、Positions就是空间中的位置。
3、useworldspace(这个是个bool,是否使用世界坐标)。
4、width ,它的宽度。

Ray

意如其名就是射线
他有两个重要的成员:
1、origin 发射源
2、direction 朝哪个方向发射

与Ray相关的常用的
1、 raycastHit。
首先还是先看官方解释
Structure used to get information back from a raycast.
根据意思知道他是一个结构体。

2、physcis.raycast
还是先看官方解释
Casts a ray, from point origin, in direction direction, of length maxDistance, against all colliders in the scene.
从解释中可以看出出,他检测是需要collider的。
同时看他的重载方法里,有个 raycasthit hitInfo 参数是来存放结果的。
同时要注意它也返回了一个bool值。
我们可以用debug.drawline() 在scene视图里把线画出来 。

原创粉丝点击