unity3d collider isunity triggerr为trigger,射线能检测到吗

转Unity3d中的碰撞检测_博客园
当前位置: >
>转Unity3d中的碰撞检测
转Unity3d中的碰撞检测
& 作者:☆A希亿 & 来源: 博客园-wonderKK &
很多时候,当我们的主角与其他GameObject发生碰撞时, 我们需要做一些特殊的事情,比如:子弹击中敌人,敌人就得执行一系列的动作。这时,我们就需要检测到碰撞现象,即碰撞检测。这一篇,我来具体谈谈自己所了解的碰撞检测,希望高手不佞赐教。& & 首先,我们得明确一点:即产生碰撞信息所需要的条件。事实上,在中,能检测碰撞发生的方式有两种,一种是利用碰撞器,另一种则是利用触发器。这两种方式的应用非常广泛。为了完整的了解这两种方式,我们必须理解以下概念:& & (一)碰撞器是一群组件,它包含了很多种类,比如:Box Collider,Caule 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 )&&当逗留碰撞器以上这六个接口都是MonoBehaviour的函数,由于我们新建的脚本都继承这个MonoBehaviour这个类。所以我们的脚本里面可以覆写这六个函数。下面让我举一个例子来详细讲解这几个函数的作用:& && &&&首先,为了使讲解更特别一些,我们就以官方的一个例子为平台,深刻讲解碰撞检测这个知识点,此例子的下载链接如下:/support/resources/example-projects/shadowdemo我们下载完此Demo之后,解压它,并用Unity打开它。我们在Project面板中找到Apartment Scene场景,打开它眼前的画面非常精美:还有更牛的,单击“运行按钮”此文来自: 马开东博客
转载请注明出处 网址:
相关阅读:
来源:(微信/QQ:,微信公众号:makaidong-com) &&&&&& 欢迎分享本文,转载请保留出处!
&&&&&& 【原文阅读】:
上一篇:没有了
【相关文章】
每日最新文章
每日最热文章
本周最热文章
本月最热文章
本年最热文章
Powered by
Copyright &
, All Rights Reserved两个meshcollider勾选IsTrigger,然后用OnTriggerEnter不触发效果,其中一个换成boxcollider就能出发效果这个是怎么回事呢?-NGUI-论坛-U3D在线
Unity3D在线
当前位置: ->
-> 两个meshcollider勾选IsTrigger,然后用OnTriggerEnter不触发效果,其中一个换成boxcollider就能出发效果这个是怎么回事呢?
NGUI 论坛 > 两个meshcollider勾选IsTrigger,然后用OnTriggerEnter不触发效果,其中一个换成boxcollider就能出发效果这个是怎么回事呢?围观:650 | 回复:1
郑翠易积分:284帖子:27
两个meshcollider勾选IsTrigger,然后用OnTriggerEnter不触发效果,其中一个换成boxcollider就能出发效果这个是怎么回事呢?
辛一潇积分:81帖子:5
免责声明:本站所有内容来源于互联网,如果本站部分内容侵犯您的权益,请您告知,站长会立即处理
Copyright Unity3D在线 All Rights Reserved.Theme by U3dOL 备案:京ICP备号-4 |SiteMap |网站地图 |百度统计| 联系我们你的浏览器禁用了JavaScript, 请开启后刷新浏览器获得更好的体验!
武器的BoxCollider以及刚体的设置
武器的BoxCollider
人物的BoxCollider
OnCollisionEnter 用的这个吗?
OnCollisionEnter 用的这个吗?是的,就是要用的这个函数
使用raycasting进行判断。
使用raycasting进行判断。怎么用raycasting进行碰撞检测啊?
怎么用raycasting进行碰撞检测啊?
这里有详细说明。不知youtube你是否看得到,我稍后会下载视频上传到网站上来。
这里有详细说明 ...再问下,为什么要用raycasting而不用自带的OnCollisionEnter()呢,感觉好奇怪啊
这里有详细说明 ...YouTube我确实上不了
这里有详细说明 ...我FQ去看了一下,它的做法是针对2D游戏的,我做的是3D游戏,不知道能不能用
我FQ去看了一下,它的做法是针对2D游戏的,我做的是3D游戏,不知道能不能用 ...对不起,理解错了。这是针对2d的,我也不是很清楚是否合适3d游戏。
使用raycasting进行判断。防止速度过快还是? {:94:}
raycasting实际上是一条看不见的直线,可以用它来判定敌人的距离已经武器的攻击范围等等。有一个youtube的教程介绍这个,需要我发上来吗?
你的敌人角色
有网格碰撞器么?
或者说你的敌人也有rigidbody
而且也勾上了Kinematic??
你的敌人角色
有网格碰撞器么?当然有了,下面两张图一张是敌人的,一张是角色的
或者说你的敌人也有rigidbody
而且也勾上了Kinematic??我是把武器的刚体勾上了Kinematic,如果不够的话,武器碰到人物自身的BoxCollider后就会被弹飞
或者说你的敌人也有rigidbody
而且也勾上了Kinematic??我给武器加上了刚体,人物都没有的
我是把武器的刚体勾上了Kinematic,如果不够的话,武器碰到人物自身的BoxCollider后就会被弹飞 ...武器的话
一般勾Trigger。。。。。
你改成这样
武器不要勾动力学
你改成这样
武器不要勾动力学
勾trigger按照这样做了,但是一开始,武器就会掉下去然后一直下落,这样做还是不行啊
是动力学和重力都不要用
有个rigidbody挂在那里就可以了
对了 限制移动和旋转你要勾选合适的才好
不然一碰就弹飞了也是可能的
对了 限制移动和旋转你要勾选合适的才好
不然一碰就弹飞了也是可能的现在是重力和动力学都没勾,勾了BoxCollider的Is Trigger,但是角色的武器一碰到敌人后就会往前错位,但不会飞出去。而且这样做了后,OnCollisionEnter()函数断点还是断不进去。
错位什么情况??
你的武器只有一个Collider啊。。。。点了trigger应该碰到什么都会穿过去啊。。。。
至于函数。。。。点了trigger就是OnTriggerEnter()了
OnTriggerEnter的参数是 Collider
不管角色还是敌人
都必须要有一个碰撞器
也可以有rigidbody
但是推荐角色控制器
碰撞的双方必须有一个有rigidbody
不能双方都勾选方向动力学
你保持这几条没问题
应该是不会出什么乱子的
看看,学习学习{:94:}看看,学习学习{:94:}
不管角色还是敌人
都必须要有一个碰撞器
也可以有rigidbody
但是推荐角色控制器
碰撞的双方必须 ...按照你说的这样做了,碰撞检测基本没问题了。你知道怎么用C#来判断Mecanim当前正在播放哪个动画吗?
判断当前动画状态,有这个方法,封装好的!你看脚本手册吧!我手机上不方便!
判断当前动画状态,有这个方法,封装好的!你看脚本手册吧!我手机上不方便! ...我勾选了Is Trigger后用OnTriggerEnter()函数还是存在问题,这个函数是攻击的动作已经完成后(即攻击的动画播放完了)才判断到碰撞的,请问下这个是该怎么解决?
这个可能跟你的代码有关了,需要看你代码
这个可能跟你的代码有关了,需要看你代码我把OnTriggerEnter()换成了OnTriggerExit()就正常了,好奇怪
检测不到,就说明你没有打到嘛,
果然是奇怪。。。。
用Physics.Linecast进行碰撞检测
动画时,碰撞体是没有效果的
被攻击对象也需要加一个Collider
因为你勾选了isKinematic选项,勾选过后该刚体是不会受到物理影响的
用OnCollisionEnter吧,没有回调的原因是你勾选了isKinematic选项,勾选过后,物体就不会受到物理效果的作用,从而不会有相应的物理事件触发
用这个你可以知道碰撞点在哪里,播放相应的特效之类的,用Trigger的话只能知道被攻击了{:106:}
用OnCollisionEnter吧,没有回调的原因是你勾选了isKinematic选项,勾选过后,物体就不会受到物理效果的作用,从而不会有相应的物理事件触发
用这个你可以知道碰撞点在哪里,播放相应的特效之类的,用Trigger的话只能知道被攻击了
要回复问题请先或
浏览: 1871
关注: 0 人 上传我的文档
 下载
 收藏
该文档贡献者很忙,什么也没留下。
 下载此文档
unity3d技术之通过ray射线实现检测碰撞
下载积分:1000
内容提示:unity3d技术之通过ray射线实现检测碰撞
文档格式:DOC|
浏览次数:1009|
上传日期: 16:48:20|
文档星级:
全文阅读已结束,如果下载本文需要使用
 1000 积分
下载此文档
该用户还上传了这些文档
unity3d技术之通过ray射线实现检测碰撞
官方公共微信

我要回帖

更多关于 collider trigger 的文章

 

随机推荐