25989人加入学习
(149人评价)
Unity2D 初级案例 - 坦克大战(Unity2017.1)

制作于2017年12月23日

价格 免费

fixedUpdate 能解决一些刚体运动碰撞的 

[展开全文]

碰撞检测

1 添加碰撞器,运动的一方最好有刚体(必须有一方有)   经常性不运动时刚体会休眠

2. 2D与3D 碰撞器不一样 

3。最好直接在预制体上操作

4 添加刚体 2D给玩家,记得把重力调为0

把所有map预制体都加上碰撞器(草不用)  小技巧 全选后一起加

穿模问题 碰到map时方向乱套(受到旋转力)  将player刚体中的constraints  勾选Z轴

沿墙走时抖动(帧时间不同问题)  在玩家代码中 添加FixedUpdate(固定物理帧) 把所有有关移动的方法移到里面

并将Tima.deltaTime 改为Tima.fixedDeltaTime注意D大写

[展开全文]

1.发生碰撞  双方必须都要有碰撞器  至少一方拥有刚体 最好是运动的一方

[展开全文]

都要有碰撞器,一方要有刚体,最好是运动的

[展开全文]

发生碰撞的条件:

两个发生碰撞的物体都有碰撞器;

其中一方有刚体组件,并且最好是运动的

 

一旦一个刚体以低于某一最小线性或旋转速度运动,物理引擎就会假定它已经停止。当这种情况发生时,对象将不会再次移动,直到它收到碰撞或力,所以它将被设置为睡眠模式。


Update受当前渲染的物体影响,帧与帧的时间间隔不固定

FixedUpdate帧与帧的时间间隔固定,因此些物理属性的更新操作应该放在FxiedUpdate中操作,比如Force,Collider,Rigidbody等。外设的操作也是,比如说键盘或者鼠标的输入输出Input,因为这样GameObject的物理表现的更平滑,更接近现实。

[展开全文]

碰撞条件 :两个发生碰撞的物体身上都要有碰撞器,其中一方身上要有刚体(这一方最好是运动的一方 因为物体长时间不运动 刚体组件会产生休眠 休眠之后就不会发生碰撞)

 

[展开全文]

碰撞

box  

刚体

ridibody

对于刚体碰撞抖动的问题,因为Time.deltaTime 所应用的每一帧的运行和电脑性能有关,导致时间不同所受的力也不同 要用FixedUpdate固定 物理帧的更新函数解决问题。和Time.fixedTime

 

[展开全文]
  • 刚体最好挂在移动的物体上
  • 长时间不运动,刚体会休眠
  • 关闭刚体得重力(不需要下落)
  • 锁死刚体得Z轴旋转(不需要他旋转)
  • 将移动操作移动到FixedUpdate可以修复抖动情况
  • 刚体,力的交互最好都放在物理帧里面
  • time改为fixeddeltatime 物理帧
[展开全文]

碰撞器的条件:要有刚体,一方是运动的(有时会休眠)

抖要放入fixupdat里

[展开全文]

有关刚体的代码尽量都放到FixedUpdate()中,可以解决大部分问题

[展开全文]

碰撞检测:双方都有碰撞器(box collider 2D)

运动的一方设为刚体(rigidbody 2D)

[展开全文]

两个发生碰撞的物体一定都要有碰撞器其中一个要有刚体

[展开全文]

碰撞检测。

2d 3d碰撞体,区分开。

防止一个运动体旋转, 刚体的constrations z轴给它锁上。

抖动。

fixedUpdate 固定物理帧,匀称。会有物理上受力的影响。就不会抖动了。刚体放到这里来。。

Rigibody2d  fixed

[展开全文]

碰撞 

两个物体身上有碰撞器

其中一方是刚体 一般在运动的一方上

因为刚体会休眠 就不会发生碰撞jian'c

[展开全文]

FixedUpdate():固定物理帧;每帧都是执行固定的;

[展开全文]

固定物理帧

private void FixedUpdate(){添加刚体物体的所有指令}

[展开全文]

发生碰撞的两方要有碰撞器,其中任意的一方要有刚体,而这 有刚体的一方最好是运动的一方。

[展开全文]

授课教师

SiKi学院老师

课程特色

图文(1)
视频(32)
下载资料(1)