a generator.cpp, который записывает координаты на плоскости файла.3d, плоскости с размером и подразделениями, которые я хочу нарисовать, и у меня есть двигатель. CCW Way. Я уже пробовал все другие комбинации вершин, но ни одна из них не рисует. Если я не включаю опцию gl_cull_face. Показана плоскость.
Код: Выделить всё
glEnable(GL_DEPTH_TEST);
glEnable(GL_CULL_FACE);
glCullFace(GL_BACK);
glFrontFace(GL_CCW);
< /code>
generator.cpp:
void generatePlane(float length, int subdivisions, const string& filename) {
vector vertices;
float step = length / subdivisions; // Tamanho de cada subdivisão
float half = length / 2; // Para centralizar no (0,0)
for (int i = 0; i < subdivisions; i++) {
for (int j = 0; j < subdivisions; j++) {
// Coordenadas dos 4 pontos da célula atual
float x1 = -half + j * step;
float z1 = -half + i * step;
float x2 = x1 + step;
float z2 = z1;
float x3 = x1;
float z3 = z1 + step;
float x4 = x2;
float z4 = z3;
vertices.push_back(x3); vertices.push_back(0); vertices.push_back(z3);
vertices.push_back(x1); vertices.push_back(0); vertices.push_back(z1);
vertices.push_back(x2); vertices.push_back(0); vertices.push_back(z2);
vertices.push_back(x4); vertices.push_back(0); vertices.push_back(z4);
vertices.push_back(x3); vertices.push_back(0); vertices.push_back(z3);
vertices.push_back(x2); vertices.push_back(0); vertices.push_back(z2);
}
}
writeVerticesToFile(filename, vertices);
}
Подробнее здесь: https://stackoverflow.com/questions/794 ... is-enabled