Я пытаюсь создать круг, используя массивы вершин, я заполняю массив в цикле for точками, но ничего не отображается, вместо этого, если я помещаю значения вручную в массив, все работает нормально, яне знаю, что должно быть не так.
#include <cstdlib>
#include <cmath>
#include <iostream>
#include <GL/glew.h>
#include <GL/freeglut.h>
#define PI 3.14159265358979324
static float R = 40.0; // Radius of circle.
static float X = 50.0; // X-coordinate of center of circle.
static float Y = 50.0; // Y-coordinate of center of circle.
static int numVertices = 5; // Number of vertices on circle.
static float vertices[15] =
{
};
static unsigned int stripIndices[] = { 0, 1, 2, 3, 4};
// Drawing routine.
void drawScene(void)
{
float t = 0; // Angle parameter.
int i;
int k = 1;
for (i = 0; i < numVertices; i++)
{
vertices[k] = X + R * cos(t);
k++;
vertices[k] = Y + R * sin(t);
k++;
vertices[k] = 0.0;
k++;
t += 2 * PI / numVertices;
}
glClear(GL_COLOR_BUFFER_BIT);
glPolygonMode(GL_FRONT_AND_BACK, GL_LINE);
glColor3f(1.0, 0.0, 0.0);
glDrawElements(GL_LINE_LOOP, 5, GL_UNSIGNED_INT, stripIndices);
glFlush();
}