javascript - 不影响 Box2d Javascript 的碰撞检测

标签 javascript box2d collision

我正在创建一个赛车游戏,我需要通过 Box2d Javascript 在一些粗糙的表面区域获得帮助。

  1. 我通过以下链接创建了汽车游戏 http://www.codekites.com/make-racing-car-box2d-javascript/
  2. 也制造了障碍。

问题:

  1. 现在我想要这样的障碍物,它不应该与汽车相撞。但是当 Car 越过那个形状时,Car 就会变慢。

所以请帮助我,如何处理它。我找到了 IsSensor,但它不起作用。所以请让我知道如何处理。

最佳答案

Aahhhh... 终于从 stackoverflow 本身得到了解决方案。 在这里。

How to detect collision but do not collide in box2d?

我使用了错误的关键字。它是

fixturedef.isSensor = true; 

就是这样 ;) 为了检测碰撞,我们必须像这样编写监听器

 world.SetContactListener(listener);
 var listener = new Box2D.Dynamics.b2ContactListener;
 listener.BeginContact = function(contact) {
    // console.log(contact.GetFixtureA().GetBody().GetUserData());
    div = document.getElementById("textUI");
    div.innerHTML = "Come "+contact.GetFixtureA().GetBody();
    defaultCarSpeed = defaultCarSpeed/2;
}

listener.EndContact = function(contact) {
    // console.log(contact.GetFixtureA().GetBody().GetUserData());
    div = document.getElementById("textUI");
    div.innerHTML = "Go "+contact.GetFixtureA().GetBody();
    defaultCarSpeed = defaultCarSpeed*2;
}

关于javascript - 不影响 Box2d Javascript 的碰撞检测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15615700/

相关文章:

javascript - Cookie 无法被脚本读取

algorithm - 检测矩形(按钮)是否在 x 或 y 轴上重叠

java - 扫描二维 boolean 数组以找到最接近的真实坐标

java - 尽管单击了矩形,但我的屏幕不会重新绘制

javascript - 打开/关闭模态窗口会触发窗口调整大小

javascript - 在 Node.js/Express 中,我如何 "download"一个页面并获取它的 HTML?

javascript - 如何将 JSON 对象转换为 JavaScript 数组?

javascript - 将 Box2d 与 EaselJS 形状一起使用?

java - 如何将对象从节点移动到节点? Libgdx Box2d A*寻路

java - 如何将 Sprite 添加到 Box2d Body?