我将 Box2DWeb 与 javascript 和 WebGL 一起使用。
在 Box2D 中,我的身体尺寸约为 1.0,地面约为 5.0。我只是使用 WebGL 使用translate和rotate绘制它们(使用从GetPosition()和GetAngle( )函数获得的值)。我使用从这些函数中获得的相同值。即,我使用大约 1.0 的值来绘制对象,使用大约 5.0 的值绘制地面。
问题是当发生旋转时(比如两个物体碰撞时),物体旋转并平移直到平衡,最终绘制的位置不清楚。即使物体只是躺在地上,线条也不是直的。没有旋转,身体看起来就好了。
这是一张图片:
正如你所看到的,一些边线和底线不是直的。它们看起来是扭曲的。为什么会发生这种情况?
总而言之,我踏遍世界,在某处存储更改的位置和角度,并使用WebGL转换到点并使用 WebGL 调用旋转并在屏幕上绘制身体。
[编辑]
较大物体最终静止时的角度为:-3.1379659302514917!它没有下降到一个完整的-PI
. 也许这就是为什么它被这样看待。有什么办法可以解决吗?