unity3d中,能检测碰撞发生的方式有两种,

  • 碰撞器
  • 触发器
概念:
    (一)碰撞器是一群组件,它包含了很多种类,比如:Box Collider,Capsule Collider等,这些碰撞器应用的场合不同,但都必须加到GameObjecet身上。
    (二)所谓触发器,只需要在检视面板中的碰撞器组件中勾选IsTrigger属性选择框。
    (三)在Unity3d中,主要有以下接口函数来处理这两种碰撞检测:


触发信息检测:
1.MonoBehaviour.OnTriggerEnter( Collider other )当进入触发器
2.MonoBehaviour.OnTriggerExit( Collider other )当退出触发器
3.MonoBehaviour.OnTriggerStay( Collider other )当逗留触发器

碰撞信息检测:
1.MonoBehaviour.OnCollisionEnter( Collision collisionInfo ) 当进入碰撞器
2.MonoBehaviour.OnCollisionExit( Collision collisionInfo ) 当退出碰撞器
3.MonoBehaviour.OnCollisionStay( Collision collisionInfo )  当逗留碰撞器

(来自网络)
-------------分割线-------------

我们来做一个东西,试一下

在场景中添加2个物体,都设置刚体,取消重力,并且锁定xyz


给其中一个绑定脚本,重写OnCollisionEnter()
	void OnTriggerEnter(Collider collider)
{
Debug.Log("OnTriggerEnter = " + collider.gameObject.name);
}

运行场景,然后直接在场景窗口中拖动 物体,碰撞另一个,在控制台就会看到输出了。











最新文章

  1. iOS中常用的宏定义
  2. DOM之parentNode与offsetParent
  3. EF-CodeFirst 继承关系TPH、TPT、TPC
  4. python import其他文件夹下的模块
  5. mac svn
  6. POJ 2253 Frogger
  7. phpinfo中查不到memcache信息问题
  8. Sencha Touch xtype对应的class
  9. 新iPhone开售现场:土豪金火了
  10. QTcpSocket通信编程时阻塞与非阻塞的问题
  11. git clone 出现 RPC failed 错误的解决方案
  12. Spring Boot入门教程1、使用Spring Boot构建第一个Web应用程序
  13. 网络推广 免费推广产品网站 B2B网站如何推广
  14. [Swift]LeetCode73. 矩阵置零 | Set Matrix Zeroes
  15. Git使用和Vue项目
  16. 2017-10-6模拟赛T3 丝(filament)
  17. Mysql将查询结果合并为一列
  18. 20165337岳源 第四次实验 Android开发
  19. 众里寻他千百度?No!这项技术只需走两步就能“看穿”你!
  20. pat 1051Pop Sequence

热门文章

  1. fuzz for test of the Net::HTTP::GET
  2. 清理电脑文件夹中的Thumbs.db文件
  3. React-Native 之 TabBarIOS
  4. Vue中发送ajax请求——axios使用详解
  5. LINUX下IDEA等工具调试项目时提示:Unable to open debugger port
  6. (转)js函数前加分号和感叹号是什么意思?有什么用?
  7. nginx开启gzip压缩前端css,js
  8. Mockito 简明教程
  9. 004 作业二(单击弹跳li节点的每个文本节点的值;点击每个 li 节点, 若 li 节点的文本值没有 ^^ 开头, 加上,有,则去除)
  10. jstat命令总结