首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用WeldJointDef的两个实体

使用WeldJointDef的两个实体
EN

Stack Overflow用户
提问于 2014-04-18 10:20:50
回答 1查看 257关注 0票数 0

我正在做一个俄罗斯方块,当我试图用焊接接头粘合两个物体时,连接线不是刚性的,物体有时会反弹,对我来说神秘的是如何使用这个代码:

代码语言:javascript
运行
复制
//create distance joint between b and c
var joint_def = new b2WeldJointDef();
joint_def.bodyA = b;
joint_def.bodyB = c;

//connect the centers - center in local coordinate - relative to body is 0,0
joint_def.localAnchorA = new b2Vec2(-0.5, -0.5);
joint_def.localAnchorB = new b2Vec2(0.5, 0.5);

//difference in angle of each body
joint_def.referenceAngle = 0 * Math.PI / 3;

//add the joint to the world
world.CreateJoint(joint_def);

处理此页面:http://www.binarytides.com/weld-joint-box2d-javascript/

这家伙设法实现了我想要的,(我想要用焊接接头连接的那两个盒子).Of课程我使用了等效的代码,焊接接头并不像页面上的那样严格。我正在使用libgdx和box2d (可能是版本或端口问题?)。我正在尝试焊接接头,因为我想稍后一个接一个地销毁这些盒子。我的演员被“映射”到每个身体上。这将允许我摧毁演员,让那些在最上面的自然倒下。感谢您的帮助:)

EN

回答 1

Stack Overflow用户

发布于 2014-04-18 20:16:20

焊接接头不是“实心”的。从Box2D手册中:

使用焊接接头来定义易碎结构是很有诱惑力的。但是,Box2D解算器是迭代的,因此关节有点软。因此,通过焊接接头连接的实体链将发生弯曲。

相反,最好从具有多个夹具的单个主体开始创建易断的主体。当实体断开时,可以销毁一个灯具,然后在新实体上重新创建它。请参阅测试床中的易碎示例。

虽然你的结构不是易碎的,但你正试图将它们结合在一起,使它们表现得像一个完整的整体。在您的例子中,我将为您想要“粘合”在一起的部件动态创建fixture。

这回答了你的问题吗?

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

https://stackoverflow.com/questions/23146431

复制
相关文章

相似问题

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