#include #include "UI.h" #include "Lines.h" #include "Errors.h" using namespace std; #include "vgl.h" #include "LoadShaders.h" // globals Lines starburst_G; GLuint program_G; void init(void); void display(void); void CheckForErrors(void); int main(int argc, char * argv[]){ glutInit(&argc, argv); glutInitDisplayMode(GLUT_RGBA); glutInitWindowSize(512, 512); glutInitContextVersion(3,0); glutInitContextProfile(GLUT_CORE_PROFILE | GLUT_DEBUG); //glutInitContextProfile(GLUT_FORWARD_COMPATIBLE | GLUT_DEBUG); glutCreateWindow(argv[0]); if (glewInit()) { cerr<< "Unable to initialize GLEW " << endl; return -1; } init(); glutDisplayFunc(display); glutKeyboardFunc(Keypress); glutSpecialFunc(SpecialKeypress); glutKeyboardUpFunc(KeyUp); glutSpecialUpFunc(SpecialUp); KeyHelp(); glutMainLoop(); return 0; } void init(void) { InitErrors(); glClearColor(1,1,1,1); ShaderInfo shaders [] = { { GL_VERTEX_SHADER, "vertex.glsl"}, { GL_FRAGMENT_SHADER, "fragment.glsl"}, { GL_NONE, NULL} }; program_G = LoadShaders(shaders); glUseProgram(program_G); starburst_G.BindLines(program_G, 100); return; } void display(void){ glClear(GL_COLOR_BUFFER_BIT); starburst_G.Display(); glFlush(); return; }