unity, OnTriggerEnter2D不触发

我两个物体A,B都添加了Circle Collider 2D,并且都勾选了is Trigger,我在A的脚本里用void OnTriggerEnter2D(Collider2D coll)检测碰撞,但是这个函数根本不会触发是咋回事儿?

解法是至少有一个要添加rigidbody。在我的使用场景中,还需要将rigidbody勾选isKinematic来避免受作用力的影响。

时间: 2024-10-06 01:53:37

unity, OnTriggerEnter2D不触发的相关文章

Unity碰撞器触发关系测试

本文刚体有关的内容不再赘述,主要测试碰撞器和触发器的消息关系. 刚体在这篇有测试:U3D刚体测试1-刚体非刚体物体非Kinematic等之间的碰撞关系 碰撞器测试结果: 1.A对象为Collider,B对象为Trigger.A对象绑定接收脚本.只触发Trigger相关消息. 2.A对象为Collider,B对象也为Collider.A对象绑定接收脚本.只触发Collider相关消息. 3.A对象为Collider,B对象同时有Collider和Trigger.A对象绑定接收脚本.Trigger消

[Unity Physics]Physics - Rigidbody、Collider

什么是Collider 碰撞器组件在Unity引擎中触发物理碰撞的最基本的条件. 可以这样说,假如一个游戏中没有物理碰撞系统是不可能的. 什么是Rigidbody 通过物理模拟的控制对象的位置. Rigidbody组件添加到一个对象将其运动的控制下统一的物理引擎.即使没有添加任何代码,Rigidbody对象将由重力向下拉,将反应与传入的对象如果正确的对撞机碰撞组件也存在. Rigidbody也有脚本API,允许您力量应用于对象和物理现实的方式控制它.例如,一辆汽车的行为可以指定在力量方面应用的轮

CandyCrush 糖果传奇小游戏总结

1.unity自带触发事件 unity的每一个Collider对象都有类似OnMouseDown.OnMouseOver等事件.此事件是存在于MonoBehaviour脚本里的,而MonoBehaviour是每个脚本的基类,根据手册可知有这些事件(鼠标在GUIElement(GUI元素)或Collider(碰撞体)上点击时调用OnMouseDown),是触发器也行! 2.销毁对象 为了不占用系统资源或者为了避免造成内存泄漏,所以当我们销毁一个对象的时候,我们要对此对象引用的东西进行处理! 对此对

【Unity入门】碰撞检测与触发检测

版权声明:本文为博主原创文章,转载请注明出处. 在Unity里面,游戏物体的碰撞我们可以通过刚体组件(Rigidbody)和碰撞器组件(Collider)来进行检测.首先在场景里面添加一个Plane面板作为地面,然后在Plane面板的上方一定高度处放一个Cube立方体. 然后给Cube立方体添加一个刚体组件(Rigidbody).运行游戏,这时候我们可以看到立方体掉在了面板上面. 立方体和面板产生了碰撞,并且禁止在面板上,这时候我们可以可以通过脚本来进行检测,比如立方体掉在面板上的时候我们可以将

【UNITY3D 游戏开发之八】Unity编译到iPhone运行 Collider 无法正常触发事件解决方案

本站文章均为李华明Himi原创,转载务必在明显处注明:(作者新浪微博:@李华明Himi) 转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/unity3d-game/1618.html 点击订阅 本博客最新动态!及时将最新博文通知您! 最近几周基本两天通一宵,整个团队都在努力赶出一版技术删档测试包,也没时间来写点东西.正好今天有点时间来整理下. 这篇主要说下 Uniyt项目Build到iPhone运行后无法正常触发 Collider 这个问题. 一般我

Unity碰撞消息(OnCollisionXXXX)和触发消息(OnTriggerXXXX)的调用情境

MonoBehaviour中的消息非常多,一共有62个! 除了必须关注的脚本生命周期的一系列函数外,还有其他两组比较常混淆的消息:碰撞和触发. 按3D和2D物体区分,又分为碰撞:Collision.Collision2D.触发:Trigger.Trigger2D. 以3D物体为例做了如下实验,分别测试下OnColiisionXXXX碰撞消息和OnTriggerXXXX触发消息的调用情景. 实验模拟: 1.分别创建物体A 和 物体B,使物体A处于物体B上方 2.在物体A有刚体组件的情况下,对物体A

Unity学习笔记 之 触发Unity UI 的 Button 事件 的代码记录

首先奉献上 Button 所触发的事件 的脚本代码. 文件名为testButtonEvent using UnityEngine; using System.Collections; //1.引入 UI . using UnityEngine.UI; public class testButtonEvent : MonoBehaviour { //2.定义一个目标对象. public Text targetTextObject; // Use this for initialization vo

Unity UI的功能解锁,红点Tips,特效触发的做法思考

首先解锁比较特殊,有明确的行为,80%都是判断角色等级,然后进行按钮灰显或者隐藏的操作. 而特效和Tips没有明确的行为. 主要需要取舍的2点是主动调用还是回调被动调用,被动调用意味着代码会很乱.没有一个统一的入口,但是主动调用需要传Object参数,也很麻烦. 首先我否决了在层级面板绑定的做法,还是传入路径,但是会初始化一下: public abstract class CBWidget : MonoBehaviour { public abstract void Init(object ho

【蓝鸥Unity开发基础三】课时16 碰撞和触发事件

推荐视频讲师博客:http://11165165.blog.51cto.com/ 一.碰撞和触发事件 之前我们已将学习了刚体和碰撞器,今天要学习的是碰撞和触发事件. 碰撞事件 发生碰撞的两个物体必须都带有Collider 发生碰撞的两个物体至少有一个带有刚体 发生碰撞的两个物体必须有相对运动 1.首先先创建一个Plane,重置一下Transfrm,然后把Scale的 x z改成10 2.创建一个Cube1,把Transform重置一下,然后把Position y改成0.5,让Cube1而处于地面