首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >b2DebugDraw和b2ContactListener在liquidfun.js中被取代了吗?

b2DebugDraw和b2ContactListener在liquidfun.js中被取代了吗?
EN

Stack Overflow用户
提问于 2014-09-17 20:02:09
回答 1查看 402关注 0票数 3

我正在尝试将我当前的Box2D库(box2dweb.js)替换为Google的LiquidFun库。

主要的区别似乎是,它们将所有b2#ClassName#类都放在全局范围内,而不是保持模块化(与box2dweb一样,在Box2D.*名称空间中)。

但是,它们似乎也遗漏了一些b2#ClassName#,,其中两个是我从Box2dWeb.js版本中使用的:

  • b2DebugDraw
  • b2ContactListener

这些被废弃的人/没有得到充分执行/被遗忘吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-02-27 09:42:30

只需将侦听器定义为函数的对象,如下所示:

代码语言:javascript
复制
var listener =  {
    BeginContactBody: function(contact) {
      console.log(contact.GetFixtureA());
    },
    EndContactBody: function(contact) {
        console.log(contact.GetFixtureA());
    },
    PostSolve: function(contact, impulse) {

    },
    PreSolve: function(contact, oldManifold) {

    }
}
world.SetContactListener(listener);

查看https://github.com/google/liquidfun/blob/master/liquidfun/Box2D/lfjs/jsBindings/Dynamics/b2World.js帮助我解决了这个问题,所以如果遇到其他c++ -> javascript翻译问题,这是一个很好的起点。

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

https://stackoverflow.com/questions/25899357

复制
相关文章

相似问题

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