签到领奖

[成都大红花] Unity3D游戏开发“判断两个物体是否穿插(相交)”

[复制链接]
查看: 2517|回复: 7
排名
2091
昨日变化
15
发表于 2017-1-10 17:01:30 | 显示全部楼层 |阅读模式
本帖最后由 里斯 于 2017-1-11 10:01 编辑

在unity游戏开发中可能会碰到这样的需求,就是必须知道两个物体是否有穿插现象。
在unity中怎么来判断这两个物体是否有穿插呢?可能我们第一个想法就是判断一个物体TriggerStay在另个物体中,但是这样判定只能针对于有刚体并且运动的物体,那么没有刚体或者不运动的两个物体之间怎么样判断是否有穿插现象呢?

在Unity中给开发者提供了这样的方法Physic.OverlapSphere 相交球  
static function OverlapSphere (position :Vector, radius : float, layerMask : int = kAllLayers) : [url=]Collider[/url][]
position 参数:代表了这个相交球的位置
radius 参数:代表了这个相交球的半径大小
layerMask 参数:代表了你要检测的层
这个方法返回的是一个Collider数组,返回的是这个相交球中的所有碰撞体。

例子:
[AppleScript] 纯文本查看 复制代码
bool isStayPlank = false;
Collider[]  collidedObj = Physics.OverlapSphere(hit.transform.position, 20);  
foreach(Collider obj in collidedObj)
{
    if(obj.tag == "ball")
    {
        isStayPlank = true;
        break;
    }
}


如果有什么直接在楼下回复,谢谢大家支持。


免费评分

参与人数 1泰斗币 +50 收起 理由
里斯 + 50 赞一个!

查看全部评分

+1
849°C
7
  • 里斯
  • nham123
  • 马三小伙儿
  • 铁蛋儿
  • budicreed
过: 他们
最近访问 头像模式 列表模式
5武林高手
1392/2000
排名
131
昨日变化
2
发表于 2017-1-11 15:22:47 | 显示全部楼层
泰斗帖子强,满满正能量。
发表于 2017-1-11 17:31:44 | 显示全部楼层
c bergt rgf dfg fdgfs gf gfsg
2武林新丁
156/200
排名
247
昨日变化
3
发表于 2017-1-13 10:35:51 | 显示全部楼层
看了LZ的帖子,我只想说一句很好很强大!
排名
798
昨日变化
5
发表于 2017-1-17 11:47:09 | 显示全部楼层
资源甚好,发帖艰辛,且阅且珍惜。
[发帖际遇]: 铁蛋儿 你天天对暗恋妹纸三笑留情,这是 8 泰斗币以表彰你的吊丝精神. 幸运榜 / 衰神榜
发表于 2017-1-24 17:12:58 | 显示全部楼层
看了LZ的帖子,我只想说一句很好很强大!
3江湖小虾
339/500
排名
50
昨日变化
1
发表于 2017-2-18 10:51:41 | 显示全部楼层
你们大神真会玩。
3江湖小虾
229/500
排名
56
昨日变化
发表于 昨天 09:23 | 显示全部楼层
开眼界了。谢谢分享
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /4 下一条

在线客服(工作时间:9:00-22:00)
010-82609395
泰斗社区公众号

Copyright   ©2015-2016  【泰斗社区】-专注互联网游戏和应用的开发者平台  Powered by©Discuz!  技术支持:迪恩网络     ( 沪ICP备14023207号-9 )