"justify"> Бьерн Страуструп. Мова програмування С + +. [Текст] Спеціальне видання - «Біном», ISBN 5-7989-0226-2, 5-7940-0064-3, 0-201-70073-5; 2010 г - 1054 с.
Уроки по opengl від NeHe. [Електронний ресурс]. Режим доступу: <# «justify"> Додаток А
Зміст файлу classes.h:
# include // Основна бібліотека opengl
# include
# pragma comment (lib, «glaux.lib») / / бібліотека необхідна для отрисовки бітмапами
# include
# include
# include namespace std;
float pi=3.141592653589793238; bs=2;// BLOCKSIZEfloat wheight=500, wwidth=500;// WINDOW SIZEfloat ortho=50;// Розмір окнаint roadwidth=30, exrand=roadwidth-bs ??* 6;// Ліва і права стенкіint wallwidth=10;// Ширина стінки 5 блоків 5 * 2=10int playercolor=8;// Колір машинки ігрокаcrashblink=false, goblink=true;
float foncolor [3]={0.5, 0.5, 1};// Колір фонаcar_i=0, go_i=0;// Перменная необхідні для моргання при аварії
/ / ---------------- CLASSES ------------------------------ Tshape
{: x, y; color; switch_color (int scolor) / / метод зміни кольору
{(scolor)
{- 2: glColor3f (0.19215686, 0.60784314, 0.8705882); break;// Фон меню блакитний - 1: glColor3f (0.5, 0.5, 1); break;// Ліловий ФОН0: glColor3f (0,0,0); break;// Чорний1: glColor3f (1,0,0); break;// Красний2: glColor3f (0,1,0); break;// Зелений3: glColor3f (0,0,1); break;// Сіній7: glColor3f (1,1,0); break;// Желтий8: glColor3f (1,0.5,0); break;// Оранжевий9: glColor3f (0.5,0.25,0); break;// Корічневий21: glColor3f (0,0.2,0); break;// Темно-зелений
}
}
};
Tblock: virtual public Tshape / / квадратик
{: block ();// Малюємо квадратик
};
car: public Tblock / / машинка
{: cx, cy, ccolor; crash, godmode; (float, float, int, bool, bool);// Отрісовует машинку
~ car (void);// Зафарбовує машинку
/ / void car ();
};
grass: public Tblock
{: gwidth, gm; (float, float);
~ grass (void);
};
wall: public Tblock
{: wy; wx; wpos; wcolor; (float, int, int);
~ wall (void);
};
game_over: public Tblock
{: gox, goy; ocolor; _over (float, float, int);
~ game_over (void) {};
}; text: virtual public Tshape
{: char * itext; drawtext (const char *, int, float, float); hidetext ();
};
Tmenu: public Tblock, public text
{: selection; show (); draw_select (bool);
};
/ / ------------------ FUNCTIONS ---------------------Tblock :: block ()
{_color (color); (GL_QUADS); f (x-bs / 2, y + bs / 2);
...