Unity3D 关于刚体(RigitBody)与碰撞体(Collider)的探索

原创 2015年11月20日 21:32:04

刚体的研究

为了研究刚体与碰撞体这两个组件对游戏对象的影响,我进行了下面的实验:

,使用球体施加力的作用碰撞立方体。

方案一:

A:刚体 + 碰撞体

B:刚体 + 碰撞体

实验过程:给A一个普通力(或直接设置position属性或直接使用Translate位移),使A撞击B

实验结果:A与B均能收到碰撞事件,物理效果良好。


方案二:

A:刚体 + 碰撞体

B:碰撞体

实验过程:给A一个普通力(或直接设置position属性或直接使用Translate位移),使A撞击B

实验结果:A与B均能收到碰撞事件,A物理效果良好,但B就像个死东西一样,一动不动


方案三:

A:碰撞体

B:刚体 + 碰撞体

实验过程:给A直接设置position属性或直接使用Translate位移(当然,这里没法用力了,因为A连刚体都不是),是A撞击B

实验结果:A无事件收到,B只收到了Stay事件一次,A、B无物理效果,A直接穿越过去了。


方案四:

A:碰撞体

B:碰撞体

实验过程:给A直接设置position属性或直接使用Translate位移,使A撞击B

实验结果:A、B均无事件收到,A、B无物理效果,A直接穿越过去了。


小结:1.如果想让碰撞事件均收到且有物理效果,至少其中运动的一方有一个为刚体+碰撞体。

     2.在游戏中,如果游戏对象(主对象、场景对象)都是刚体,这样其实是对物理引擎效果的大消耗,所以可以只让游戏运动主对象是刚体,而像墙壁、树木这种场景对象只是碰撞体就够了。

版权声明:本文为博主原创文章,未经博主允许不得转载。

unity3d 理解刚体(Rigidbody)和碰撞体(Collider)以及触发器(Is Trigger),边学边更新

刚体(Rigidbody)的官方(摘自Unity3d的官方指导书《Unity4.x从入门到精通》)解释如下: Rigidbody(刚体)组件可使游戏对象在物理系统的控制下来运动,刚体可接受外力与扭矩...

unity3d刚体和碰撞检测学习一:新建一个plane和一个sphere,却碰撞检测失败的问题

郁闷,今天被这个问题搞了一个下午,弄到现在,记录一下: 本来想说今天学习一下unity3d中的物理的,学到刚体和碰撞这一章,就想说先在场景里面摆一个平面(plane)和一个球体(sphere),然后让...

U3D里实现角色之间在行走过程中防止重叠

一开始以为要自己手动写代码在寻径时绕开障碍y

Unity3D入门(二):碰撞检测

碰撞器由来 1.系统默认会给每个对象(GameObject)添加一个碰撞组件(ColliderComponent),一些背景对象则可以取消资格组件。 2.在unity3d中,能检测碰撞发生的方式有两种...

Unity手游开发--NGUI实现冷却技能(CD)功能

在游戏中一般都会用到冷却技能(CD)实现的方式一般都是遮罩,你可以自己写遮放的方法,或者用shader实现。使用NGUI会比较方便的实现遮罩类似这样 主要用到了ngui的UISprite脚本...

unity3d实现动态显示伤害值

今天介绍unity3d使用OnGUI()的方法来实现伤害数值的显示,在战斗系统中我们常用于敌人和我方的伤害显示,在后面做敌人AI的时候会用到。下面我们看脚本!        首先我们创建一个Dam...

unity3d 理解刚体(Rigidbody)和碰撞体(Collider)以及触发器(Is Trigger),边学边更新

unity3d 理解刚体(Rigidbody)和碰撞体(Collider)以及触发器(Is Trigger),边学边更新 分类: Unity3D2014-04-01 16:50 2776...

unity3d 理解刚体(Rigidbody)和碰撞体(Collider)以及触发器(Is Trigger),边学边更新

做实验的时候发现了一个很诡异的事情,就是发生碰撞的主体一定是要带刚体的,即只有带刚体的碰撞体去撞其他碰撞体时,双方才会收到碰撞事件,以下是我做的实验: 一、控制A(刚体加碰撞体)撞击 静止的B(碰撞...
  • ybhjx
  • ybhjx
  • 2015年12月23日 20:12
  • 810

unity3D学习之物体添加刚体及碰撞。

在界面中的层次栏中单击Create按钮选择(plan)地板.场景中会出现一块地板。然后再单击cube(立方体),然后点击cube对象属性栏中会出现cube的属性,单击最下面的Add  Componen...
  • driaven
  • driaven
  • 2014年11月18日 13:35
  • 2718

【Unity3d学习笔记】刚体碰撞和关节

3.20 Rigidbody Constant Force using UnityEngine; using System.Collections; public class AddForce : M...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Unity3D 关于刚体(RigitBody)与碰撞体(Collider)的探索
举报原因:
原因补充:

(最多只允许输入30个字)