繁体   English   中英

AndEngine Box2D扩展-缩放

[英]AndEngine Box2D Extension - Scaling

我是AndEngine和Box2D的新手。 所以请和我一起。

我创建了一个新项目,安装了480x800摄像头,添加了32x32条纹,在地球引力下创建了一个物理世界,并删除了该条纹。 瞧,它DID掉落了。 但这对我来说似乎不是“自然的”。 太慢了。

然后我意识到重力以米(m / s2)为单位,而环境以像素为单位。 米和像素之间的转换在哪里? 幕后某个地方应该有一个假设。 我对此有任何控制权吗?

Box2D如何知道是从高出地面100米的地方掉下条纹(并从一个看起来很慢的距离观察距离)还是从高出地面1米的地方(从近距离看它会很快看到条纹)?

为了测试转换是否是真正的问题,我将重力乘以10并改善了“自然度”。 但是我认为应该有一种更复杂的方法将像素转换为米。

提前致谢。 非常感谢您的评论。

就像@ iforce2d所说的那样。 在AndEngine中,默认值为32,因此32像素被视为一米。 将像素转换为米时,将像素除以该值。 从米转换为像素时,请乘以该值。 您可以在org.andengine.extension.physics.box2d.util.constants.PhysicsConstants类中找到此值。

如果未指定自己的比例,则在PhysicsFactory.create...方法中使用该比例。 这些方法可以为您创建物理体,以像素为单位来测量精灵大小,然后将仪表传递给Box2D。 它还在PhysicsConnector类构造函数中使用。 如果32不适合您,请使用您自己的值,但是您必须保持一致并每次使用它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM