gpt4 book ai didi

android - Box2d body 旋转不起作用

转载 作者:行者123 更新时间:2023-11-30 04:19:22 24 4
gpt4 key购买 nike

我有一个简单的 Box2d 主体,它具有三角形多边形形状,我正在尝试旋转主体。下面的代码似乎有效;我检查了之前和之后的 body 角度,它已经按照我的预期发生了变化。

body.setTransform(body.getPosition(), body.getAngle()+TURN_ANGLE);

问题是当我绘制多边形时,顶点保持不变。这是应该的吗?我确实想知道我是否需要对顶点应用变换,但找不到实现它的方法。

如有任何指点,我们将不胜感激。

最佳答案

最初我的绘图方法是这样的:

    PolygonShape src = (PolygonShape) f.getShape();

for (int i = 0; i < src.getVertexCount(); ++i)
{
Vec2 srcPt = src.getVertex(i);

// build polygon up of these points and draw ...

我已经设法通过将上面的代码更改为以下代码使其正常工作:

    PolygonShape src = (PolygonShape) f.getShape();

Transform t = new Transform();
t.set(new Vec2(0,0), body.getAngle());

for (int i = 0; i < src.getVertexCount(); ++i)
{
Vec2 srcPt = Transform.mul(t, src.getVertex(i));

// build polygon up of these points and draw ...

似乎按预期工作。

关于android - Box2d body 旋转不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9505783/

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