首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何获得两个碰撞2d之间的接触点?

如何获得两个碰撞2d之间的接触点?
EN

Stack Overflow用户
提问于 2018-08-14 08:54:33
回答 1查看 0关注 0票数 0

我正在使用Unity,我有一个填充了瓷砖的Tilemap。在给定的时间点,我在场景中创建具有指定宽度和高度的Collider2D。我需要做的是获取Tilemap中与我刚刚创建的Collider2D对象重叠的切片列表。

代码语言:javascript
复制
Collider2D[] results = new Collider2D[16];
int count = rb2d.OverlapCollider(contactFilter, results);
for (int i = 0; i < count; i++)
{
    Collider2D result = results[i];
    Tilemap breakableMap = result.gameObject.GetComponent<Tilemap>();
    breakableMap.SetTile(breakableMap.WorldToCell(..........), null);
}

使用上面的代码,我可以确定我重叠的Collider2D对象。但是,为了从Tilemap中移除一个图块,我需要一个实际的Vector3坐标,它指示两个碰撞器之间重叠区域之间的某个接触点。

我的问题是,关于这个问题,目前的方法是理想的方法吗?如果是这样,可以做些什么来轻松检索重叠图块的坐标,以便可以将其删除?

EN

回答 1

Stack Overflow用户

发布于 2018-08-14 18:18:59

你有一个碰撞者列表。要获得坐标,需要一个已发生碰撞的列表。这是使用OnTriggerEnter(...)和OnCollisionEnter(...)之间的区别

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100002160

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档