Помогите не могу решить ошибку C++ OPENGL
#include
#include
#include
int N=30,M=20;
int Scale=25;
int w = Scale*N;
int h = Scale*M;
int dir,num=4;
struct
{ int x;
int y;} s[100];
class Fructs
{
public:
int x,y;
void New()
{ x=rand() % N;
y=rand() % M; }
void DrawApple()
{ glColor3f(0.0,1.0,0.0);
glRectf(x*Scale,y*Scale,(x+1)*Scale,(y+1)*Scale); }
} m[10];
void DrawSnake()
{
glColor3f(0.0,0.0,1.0);
for (int i=0;i
}
void Tick()
{
for (int i=num;i>0;--i)
{s.x=s[i-1].x;
s.y=s[i-1].y;}
if (dir==0) s[0].y+=1;
if (dir==1) s[0].x-=1;
if (dir==2) s[0].x+=1;
if (dir==3) s[0].y-=1;
for (int i=0;i<10;i++)
if ((s[0].x==m.x) && (s[0].y==m.y))
{num++; m.New();}
if (s[0].x>N) dir=1; if (s[0].x<0) dir=2;
if (s[0].y>M) dir=3; if (s[0].y<0) dir=0;
for (int i=1;i
}
void DrawField()
{
glColor3f(0.0,0.7,0.0);
glBegin(GL_LINES);
for (int i=0; i
glFlush();
glutSwapBuffers();
}
void KeyboardEvent(int key, int a, int b)
{
switch(key)
{
case 101 : dir=0; break;
case 102: dir=2; break;
case 100 : dir=1; break;
case 103 : dir=3; break;
}
}
void timer(int = 0)
{
display();
Tick();
glutTimerFunc(50,timer,0);
}
int main(int argc, char **argv) {
srand(time(0));
for (int i=0;i<10;i++)
m.New();
s.x=10;
s.y=10;
glutInit(&argc, argv);
glutInitDisplayMode (GLUT_SINGLE | GLUT_RGB );
glutInitWindowSize (w, h);
glutCreateWindow ("Test");
glClearColor(1.0,1.0,0.6,1.0); //цвет фона
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluOrtho2D(0,w,0,h);
glutDisplayFunc (display);
glutSpecialFunc(KeyboardEvent);
glutTimerFunc(50,timer,0);
glutMainLoop();
}
ОШИБКА: **************************************************error: name lookup of 'i' changed for ISO 'for' scoping
int main(int argc, char **argv) {
srand(time(0));
for (int i=0;i<10;i++)
m.New();
s.x=10;
s.y=10;
glutInit(&argc, argv);
glutInitDisplayMode (GLUT_SINGLE | GLUT_RGB );
glutInitWindowSize (w, h);
glutCreateWindow ("Test");
glClearColor(1.0,1.0,0.6,1.0); //цвет фона
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluOrtho2D(0,w,0,h);
glutDisplayFunc (display);
glutSpecialFunc(KeyboardEvent);
glutTimerFunc(50,timer,0);
glutMainLoop();
}