循环以将顶点保存在openGL中

Loop to save vertices in openGL

本文关键字:存在 openGL 保存 顶点 循环      更新时间:2023-10-16

我有一个带有四边形的网格,我想将所有顶点保存在一个数组中。我写了这个代码:

int counter=0;
int i = 0;
for(i=0; i<=600; i+=40){
    verticePosition[counter] = i;
    verticePosition[counter+1] = i;
    verticePosition[counter+2] = i+40;
    verticePosition[counter+3] = i;
    verticePosition[counter+4] = i;
    verticePosition[counter+5] = i+40;
    verticePosition[counter+6] = i+40;
    verticePosition[counter+7] = i+40;
    counter += 8;
}

我想在表中保存四个四个顶点,然后我调用一个函数用不同的颜色填充每个四边形,但我在循环中遇到了一个错误:

prog.c:13:1: error: expected identifier or ‘(’ before ‘for’
 for(xpos=0; xpox<=600; xpos+=40){
 ^

还有另一个错误:

prog.c:13:17: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘<=’ token
 for(xpos=0; xpox<=600; xpos+=40){
             ^

我找不出我的循环有什么问题。

变量xpos已使用但未声明,您必须声明并初始化它:

for (int xpos = 0; xpos <= 600;  xpos += 40) {

或者在循环之前声明:

int xpos;
for (xpos = 0; xpos <= 600;  xpos += 40) {