// CODESTYLE: v2.0 // main.cpp // Project: Free-GLUT Demo #1 (GLUTDemo1) // Author: Richard Marks #include #include #include namespace GLUTDemo1 { class Demo { public: bool Initialize(int argc, char* argv[]); void Execute(); static void RenderScene(); private: }; bool Demo::Initialize(int argc, char* argv[]) { glutInit(&argc, argv); glutInitDisplayMode(GLUT_SINGLE | GLUT_RGBA); glutInitWindowSize(640, 480); glutInitWindowPosition(64, 64); glutCreateWindow("Free-GLUT Demo #1"); glutDisplayFunc(Demo::RenderScene); } void Demo::Execute() { glutMainLoop(); } void Demo::RenderScene() { glClear(GL_COLOR_BUFFER_BIT); glBegin(GL_TRIANGLES); glVertex3f(-0.5f, -0.5f, 0.0f); glVertex3f(0.5f, 0.0f, 0.0f); glVertex3f(0.0f, 0.5f, 0.0f); glEnd(); glFlush(); } } // end namespace int main(int argc, char* argv[]) { GLUTDemo1::Demo demo; if (demo.Initialize(argc, argv)) { demo.Execute(); } return 0; }