int main(int argc, char *argv[]) { //SDL_Surface *screen; SDL_Window *window; SDL_GLContext context; assert(SDL_Init(SDL_INIT_VIDEO) == 0); SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 1); //screen = SDL_SetVideoMode( 640, 480, 16, SDL_OPENGL ); //assert(screen); window = SDL_CreateWindow("sdlglshader", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, 640, 480, SDL_WINDOW_OPENGL); assert(window); context = SDL_GL_CreateContext(window); glClearColor(0, 0, 0, 0); glViewport(0, 0, 640, 480); glMatrixMode(GL_PROJECTION); glLoadIdentity(); glOrtho(0, 640, 480, 0, -1, 1); glMatrixMode(GL_MODELVIEW); glLoadIdentity(); glClear(GL_COLOR_BUFFER_BIT); initARB(); setShaders(); glColor3f(0, 1, 1); // is overridden by the shader, useful for debugging native builds glBegin( GL_TRIANGLES ); glTexCoord2i(0, 0); glVertex3f( 10, 10, 0); glTexCoord2i(1, 0); glVertex3f( 300, 10, 0); glTexCoord2i(1, 1); glVertex3f( 300, 328, 0); glEnd(); glColor3f(1, 1, 0); // is overridden by the shader, useful for debugging native builds glBegin( GL_TRIANGLES ); glTexCoord2f(0, 0.5); glVertex3f(410, 10, 0); glTexCoord2f(1, 0.5); glVertex3f(600, 10, 0); glTexCoord2f(1, 1 ); glVertex3f(630, 400, 0); glEnd(); SDL_GL_SwapWindow(window); #ifndef __EMSCRIPTEN__ SDL_Delay(3000); #endif SDL_Quit(); return 0; }
int main(int argc, char *argv[]) { SDL_Surface *screen; assert(SDL_Init(SDL_INIT_VIDEO) == 0); SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 1); screen = SDL_SetVideoMode( 640, 480, 16, SDL_OPENGL ); assert(screen); glClearColor(0, 0, 0, 0); glViewport(0, 0, 640, 480); glMatrixMode(GL_PROJECTION); glLoadIdentity(); glOrtho(0, 640, 480, 0, -1, 1); glMatrixMode(GL_MODELVIEW); glLoadIdentity(); glClear(GL_COLOR_BUFFER_BIT); initARB(); setShaders(); glColor3f(0, 1, 1); // is overridden by the shader, useful for debugging native builds glBegin( GL_TRIANGLES ); glTexCoord2i(0, 0); glVertex3f( 10, 10, 0); glTexCoord2i(1, 0); glVertex3f( 300, 10, 0); glTexCoord2i(1, 1); glVertex3f( 300, 328, 0); glEnd(); glColor3f(1, 1, 0); // is overridden by the shader, useful for debugging native builds glBegin( GL_TRIANGLES ); glTexCoord2f(0, 0.5); glVertex3f(410, 10, 0); glTexCoord2f(1, 0.5); glVertex3f(600, 10, 0); glTexCoord2f(1, 1 ); glVertex3f(630, 400, 0); glEnd(); // Test https://github.com/kripken/emscripten/issues/3693 glBegin( GL_TRIANGLES ); glEnd(); SDL_GL_SwapBuffers(); #ifndef __EMSCRIPTEN__ SDL_Delay(3000); #endif SDL_Quit(); return 0; }