我有一个包含0和1的数组,并根据我想要绘制正方形的数组的值并用颜色填充它。我有下面的代码,但它只在屏幕中间有1个方格。我觉得我需要对glVertex2f()
做些什么,但我有点难过。
最终结果是这样的
但我的代码只有一个方块。
for (int i = 0; i < Width; i++) {
for (int j = 0; j < Height; i++) {
if (myArray[i][j] == 0) {
glColor(1.1, 1.1, 1.1);
} else {
glColor(2.2, 2.2, 2.2);
}
glBegin(GL_QUADS);
glVertex2f(-0.2, 0.2);
glVertex2f(0.2, 0.2);
glVertex2f(0.2, 0.2);
glVertex2f(-0.2, 0.2);
glEnd;
}
}
答案 0 :(得分:0)
您正在同一个地方绘制所有正方形 - 您需要将它们分开。
答案 1 :(得分:0)
尝试在每次抽奖前添加翻译。类似的东西:
glPushMatrix();
glTranslatef(2. * i, 2. * j, 0.0) ;
glBegin(GL_QUADS) ;
...
glPopMatrix() ;