JBox2d三角形没有弹跳

时间:2017-06-29 21:34:38

标签: polygon physics jbox2d

我是JBox2D的新手,我仍在努力弄清楚如何使用它。我只是通过制作各种形状和所有这些来利用图书馆。 我发现当我制作这个应该是三角形的物体时,它大部分都会正确反弹,直到它落在其中一个顶点上,并完全停止。每次都是相同的顶点,我不知道为什么。

//right triangle constructor
public PhysObject(World wld, float posx, float posy, Color c, BodyType bdtp, float size) {
    color = c;

    x = posx;
    y = posy;
    s = size/2;

    bd = new BodyDef();
    bd.position.set(new Vec2(x, y));
    bd.bullet = true;
    bd.type = bdtp;


    body = wld.createBody(bd);



    ps = new PolygonShape();


    ps.m_vertexCount = 3;
    ps.m_vertices[0].set(-s, -s);
    ps.m_vertices[1].set(s, -s);
    ps.m_vertices[2].set(s, s);




    fd = new FixtureDef();
    fd.shape = ps;
    fd.friction = 0.3f;
    fd.restitution = 0.8f;
    fd.density = 1;

    body.createFixture(fd);

}

这里也是我绘制它的代码

private void drawTriangle() { 
    glBegin(GL_TRIANGLES); 

        for(int i = 0; i < ps.m_vertexCount; i++) {
            glVertex2f(ps.m_vertices[i].x*30, ps.m_vertices[i].y*30);
        }

glEnd(); 
}

0 个答案:

没有答案