gpt4 book ai didi

javascript - box2D(javascript)

转载 作者:行者123 更新时间:2023-11-30 18:38:04 26 4
gpt4 key购买 nike

我刚刚开始使用 box2d。我能够创建一些对象并创建一个使用这些对象的世界。例如,要创建一个盒子(取自:http://box2d-js.sourceforge.net/index2.html),我可以这样做:

    elements = getElementsByClass("box2d");
for ( var i = 0; i < elements.length; i ++ ) {
properties[i] = getElementProperties( elements[i] );
bodyDef.type = b2Body.b2_dynamicBody;
var data = { element: elements[i]};
bodyDef.userData = data;
fixDef.shape = new b2PolygonShape;
fixDef.shape.SetAsBox(2 //half width , 2);
bodyDef.position.x = Math.random() * 10;
bodyDef.position.y = Math.random() * 10;
world.CreateBody(bodyDef).CreateFixture(fixDef);
}

我想做的是将带有文本的 div 转换为形状,然后在 box2D 中使用它们。我真的不知道从哪里开始。我现在正在使用 userData 属性,认为这至少是一个开始。

我在这里找到了一个很好的例子:http://mrdoob.com/projects/chromeexperiments/google_gravity/

getElementProperties 和 getElementsByClass 已定义。我正在考虑使用 getElementProperties 来设置形状尺寸。

最佳答案

我正在做一些与 iOS 类似的事情,但实现它的一个好方法是根据 div 中保存的信息制作图像。然后你可以用那个图像制作一个 Sprite 并将它添加为你的 box2d body 的用户数据。当你更新时(打勾:iOS 中的方法,我不确定 javascript)然后你遍历所有的 body 并调整 Sprite 位置。 box2d 世界应该为您做所有其他事情。

关于javascript - box2D(javascript),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7669757/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com