游戏蛮牛学习群(纯技术交流,不闲聊):159852603
游戏蛮牛 手机端
开启辅助访问
 找回密码
 注册帐号

扫一扫,访问微社区

问答求助

关注:555

当前位置:游戏蛮牛 技术专区 问答求助

_____________________________________________________________________________________________________________
问答求助版块规则:

  1、问题尽量描述清楚
      2、代码要放在代码块里
      3、附件最好放到云盘,然后把链接放到TXT文档里,上传TXT文档。【最好没有附件,你懂得】
      4、本版块回复不得无意义,如:顶、呵呵、不错......以及擦边!【真的会扣分的哦】严重者,封IP!
      5、问题得到解决,请选择最佳答案。
      6、若问题是你自己解决了,可以联系管理员,返还蛮牛币,写下你的答案,另有蛮牛币奖赏。
_____________________________________________________________________________________________________________
查看: 576|回复: 6

[脚本] 判断物体之间没有接触

[复制链接]  [移动端链接]
7日久生情
1946/5000
排名
1642
昨日变化
1

36

主题

643

帖子

1946

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
174225
好友
1
蛮牛币
12
威望
0
注册时间
2016-10-9
在线时间
529 小时
最后登录
2018-9-19
QQ
发表于 2018-4-16 10:02:12 | 显示全部楼层 |阅读模式
15蛮牛币
我有2个物体A和B。我现在想实时判断A接触B没,我知道OnTriggerEnter和OnCollionEnter是如果接触了会触发,但是如果2个物体没有接触我怎么判断他们之间没有接触?
如果用射线来判断,但是我有不止2个物体还不停的在运动我用射线明显也不行。有没有其他的方法来判断?

回复

使用道具 举报

7日久生情
1965/5000
排名
917
昨日变化

19

主题

289

帖子

1965

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
8852
好友
2
蛮牛币
2999
威望
0
注册时间
2013-11-25
在线时间
581 小时
最后登录
2018-8-23
发表于 2018-4-16 10:02:13 | 显示全部楼层
bool  bAColWithB = false;//默认没触发
private void OnTriggerEnter(Collider other)
    {
        bAColWithB  = true;//二者产生碰撞
    }
    private void OnTriggerExit(Collider other)
    {
         bAColWithB  = true;//二者产碰撞解除
    }
[发帖际遇]: 乐依忆 发帖时在路边捡到 2 蛮牛币,偷偷放进了口袋. 幸运榜 / 衰神榜

回复

使用道具 举报

7日久生情
1946/5000
排名
1642
昨日变化
1

36

主题

643

帖子

1946

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
174225
好友
1
蛮牛币
12
威望
0
注册时间
2016-10-9
在线时间
529 小时
最后登录
2018-9-19
QQ
 楼主| 发表于 2018-4-16 10:13:08 | 显示全部楼层
乐依忆 发表于 2018-4-16 10:10
bool  bAColWithB = false;//默认没触发
private void OnTriggerEnter(Collider other)
    {

不行。OnTriggerExit是离开时触发,如果我都不接触不会触发OnTriggerExit

回复

使用道具 举报

7日久生情
1946/5000
排名
1642
昨日变化
1

36

主题

643

帖子

1946

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
174225
好友
1
蛮牛币
12
威望
0
注册时间
2016-10-9
在线时间
529 小时
最后登录
2018-9-19
QQ
 楼主| 发表于 2018-4-16 10:14:20 | 显示全部楼层
乐依忆 发表于 2018-4-16 10:10
bool  bAColWithB = false;//默认没触发
private void OnTriggerEnter(Collider other)
    {

我大概懂你的意思了,是我理解错了

回复

使用道具 举报

4四处流浪
473/500
排名
5663
昨日变化

4

主题

49

帖子

473

积分

Rank: 4

UID
263289
好友
0
蛮牛币
645
威望
0
注册时间
2018-1-8
在线时间
190 小时
最后登录
2018-9-25
发表于 2018-4-16 14:23:44 | 显示全部楼层
最简单的,你碰到它时,让它播放个音效,离开就隐藏音效。

回复

使用道具 举报

3偶尔光临
263/300
排名
12235
昨日变化

3

主题

97

帖子

263

积分

Rank: 3Rank: 3Rank: 3

UID
68206
好友
0
蛮牛币
114
威望
0
注册时间
2015-1-13
在线时间
95 小时
最后登录
2018-9-21
QQ
发表于 2018-4-16 16:25:55 | 显示全部楼层
难道不是OnTriggerEnter没有进就是没有触发嘛?另外OnTriggerStay就是两个物体有接触,只要又接触就会一直触发的
[发帖际遇]: cy891203 发帖时在路边捡到 2 蛮牛币,偷偷放进了口袋. 幸运榜 / 衰神榜

回复

使用道具 举报

2初来乍到
128/150
排名
11232
昨日变化
1

2

主题

11

帖子

128

积分

Rank: 2Rank: 2

UID
273295
好友
0
蛮牛币
724
威望
0
注册时间
2018-3-20
在线时间
35 小时
最后登录
2018-9-11
发表于 2018-4-17 09:29:19 | 显示全部楼层
能用OnTriggerEnter和OnTriggerExit的尽量少用OnTriggerStay,2楼的方法就挺好,用一个Bool值记录,OnTriggerEnter时修改Bool值,然后通过Bool值就能知道两者接没接触!

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则

快速回复 返回顶部 返回列表