Unity3D学习笔记之碰撞器和触发器

碰撞器种类:

  1. Box Collider(盒碰撞器)——立方体
  2. Sphere Collider(球碰撞器)——球体
  3. Capsule Collider(胶囊碰撞器)——胶囊体
  4. Mesh Collider(网格碰撞器)——从物体的网格创建一个碰撞器,不能与其他网格碰撞器相碰撞
  5. Wheel Collider(轮碰撞器)——特殊的碰撞器,用于创建车或其他的交通工具的车轮

碰撞器属性:

  1. Material:材质
  2. Is Trigger:开启触发器
  3. Radius:半径
  4. Center:中心
  5. Size:碰撞器的大小
  6. Convex(网格碰撞器特有):如激活,该网格碰撞器将会和其他网格碰撞器碰撞,突起的网格碰撞器限制在255个三角形面内。

碰撞器类型:

  1. Static Collider(静态碰撞器):只有碰撞器,没有刚体。基本保持静止或者轻微的移动,一般应用于环境模型,和刚体碰撞时不会移动
  2. Rigidbody Collider(刚体碰撞器):同时附加了刚体和碰撞器。移动完全受脚本和物理引擎的影响。
  3. Kinematic Rigidbody Collider(运动学刚体碰撞器):同时附加刚体和碰撞器,并且激活刚体组件的IsKinematic。移动必须通过修改其Transform组件,不受力的影响。能影响其他的刚体,和其他碰撞器碰撞时不会受影响,但是会触发碰撞函数。
  4. Character Controllers(角色控制器):允许高速运动时立刻转身,可以执行碰撞检测保证角色可以沿墙滑动或者上下台阶。受重力影响,不受碰撞产生的力影响,可以由代码施加的力推动。不具有物理特性。如果想让角色控制器推开其他刚体或者对象,可以在对象附加的脚本中添加OnControllerColliderHit()函数,使得碰撞生效。

触发器:

在碰撞器的属性面版上勾选上IsTrigger便成为了触发器

两者区别:碰撞器根据物理引擎引发碰撞,产生碰撞的效果;触发器被物理引擎所忽略,没有碰撞效果

碰撞信息检测函数:

  1. OnCollisionEnter(Collision collision)当开始产生碰撞时调用此函数
  2. OnCollisionExit(Collision collision)当结束碰撞时调用此函数
  3. OnCollisionStay(Collision collision)当持续接触时调用此函数

触发信息检测函数:

基本和碰撞信息检测函数类似

  1. OnTriggerEnter(Collision collision)
  2. OnTriggerExit(Collision collision)
  3. OnTriggerStay(Collision collision)

碰撞信息和触发信息:

​ 碰撞后有碰撞检测并有碰撞信息发出

Static Collider 静态碰撞器 Rigidbody Collider 刚体碰撞器 Kinematic Rigidbody Collider 运动学刚体碰撞器 Static Trigger Collider 静态触发碰撞器 Rigidbody Trigger Collider 刚体触发碰撞器 Kinematic Rigidbody Trigger Collider 运动学刚体触发碰撞器
Static Collider 静态碰撞器 Y
Rigidbody Collider 刚体碰撞器 Y Y Y
Kinematic Rigidbody Collider 运动学刚体碰撞器 Y
Static Trigger Collider 静态触发碰撞器
Rigidbody Trigger Collider 刚体触发碰撞器
Kinematic Rigidbody Trigger Collider 运动学刚体触发碰撞器

​ 碰撞后有触发信息

Static Collider 静态碰撞器 Rigidbody Collider 刚体碰撞器 Kinematic Rigidbody Collider 运动学刚体碰撞器 Static Trigger Collider 静态触发碰撞器 Rigidbody Trigger Collider 刚体触发碰撞器 Kinematic Rigidbody Trigger Collider 运动学刚体触发碰撞器
Static Collider 静态碰撞器 Y Y
Rigidbody Collider 刚体碰撞器 Y Y Y
Kinematic Rigidbody Collider 运动学刚体碰撞器 Y Y Y
Static Trigger Collider 静态触发碰撞器 Y Y Y Y
Rigidbody Trigger Collider 刚体触发碰撞器 Y Y Y Y Y Y
Kinematic Rigidbody Trigger Collider 运动学刚体触发碰撞器 Y Y Y Y Y Y

Copyright © 2018 - 2019 Jaxes的博客 All Rights Reserved.

访客数 : | 访问量 :