Bullet Physics IndexedMesh Тип обмотки

Я использую Bullet Physics, или, более конкретно, порт Java, JBullet, чтобы моделировать взаимодействие между простыми объектами, включая домино и мост. Поскольку я не ожидаю, что мост переместится, и я хочу довольно точную физическую симуляцию, я хочу создать экземпляр BvhTriangleMeshShape.

Однако для его инициализации мне нужно использовать TriangleIndexVertexArray. Проблема в том, что я не могу найти какую-либо документацию или информацию относительно структуры данных. Я видел примеры того, как создать его экземпляр, например, https://www.programcreek.com/java-api-examples/index.php?api=com.bulletphysics.collision.shapes.BvhTriangleMeshShape в TestRoom.java. учебный класс:

TriangleIndexVertexArray vertArray = new TriangleIndexVertexArray();

for (Mesh mesh : this.getMeshes()) {
    // Construct collision shape based on the mesh vertices in the Mesh.
    float[] positions = mesh.getPositions();
    int[] indices = mesh.getIndices();

    IndexedMesh indexedMesh = new IndexedMesh();
    indexedMesh.numTriangles = indices.length / 3;
    indexedMesh.triangleIndexBase = ByteBuffer.allocateDirect(indices.length*4).order(ByteOrder.nativeOrder());
    indexedMesh.triangleIndexBase.asIntBuffer().put(indices);
    indexedMesh.triangleIndexStride = 3 * 4;
    indexedMesh.numVertices = positions.length / 3;
    indexedMesh.vertexBase = ByteBuffer.allocateDirect(positions.length*4).order(ByteOrder.nativeOrder());
    indexedMesh.vertexBase.asFloatBuffer().put(positions);
    indexedMesh.vertexStride = 3 * 4;


    vertArray.addIndexedMesh(indexedMesh);
}

Какие позиции и индексы используются здесь? Насколько я понимаю, каждые три позиции являются координатами для точек в пространстве, а индексы указывают на наматывание треугольной сетки, где индекс X будет указывать точку {позиции [3*X], позиции [3*X+1], позиции [ 3 * Х +2]}. Если предположить, что я здесь, то какой тип обмотки использует Bullet Physics? Исходя из опыта работы с OpenGL, мне интересно, нужно ли ему несколько отдельных треугольников с перечисленными вершинами против часовой стрелки или мы рассматриваем тип обмотки треугольной полосы?

Любые разъяснения будут великолепны!

0 ответов

Другие вопросы по тегам