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, мне интересно, нужно ли ему несколько отдельных треугольников с перечисленными вершинами против часовой стрелки или мы рассматриваем тип обмотки треугольной полосы?
Любые разъяснения будут великолепны!