gpt4 book ai didi

java - 形状中的 Box2D 顶点

转载 作者:行者123 更新时间:2023-12-01 14:29:53 28 4
gpt4 key购买 nike

我在 Box2D 中有一个多边形形状。形状是一个三角形,我希望有 3 个顶点。事实上,我创建的所有形状都会输出 8 个顶点。为什么是这样?如果我输出顶点数,那总是正确的数量。我不想渲染不必要的线条,但我想从形状中获取顶点数据。

@Override
public void setShape(Vec2[] vector) {
// TODO Auto-generated method stub
super.setShape(vector);

//A NEW SHAPE
shape = new PolygonShape();

//THE TRIANGLES VECTORS
Vec2[] vec = new Vec2[3];
vec[0] = new Vec2(10, 0);
vec[1] = new Vec2(0, 10);
vec[2] = new Vec2(0, 0);

//SET THE VERTICES
shape.set(vec, vec.length);

}

@Override
public void render() {
// TODO Auto-generated method stub
super.render();

//GET THE VERTICES
Vec2[] vector = shape.m_vertices;

System.out.print("\n" + "Vertices: " + vector.length);

}

总是输出8。为什么?

最佳答案

多边形在原始 C++ 代码中用固定数量的 8 个顶点表示,可能是出于性能原因。您正在看到这样做的后果。

跟踪实际的顶点数,因此只需使用它进行渲染即可。

关于java - 形状中的 Box2D 顶点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16935051/

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