/* virtual */ void FsLazyWindowApplication::Initialize(int argc,char *argv[]) { FsChangeToProgramDir(); colorAsAttrib.CompileFile( "color_as_attribute_vertex_shader.glsl", "color_as_attribute_fragment_shader.glsl"); uniformColor.CompileFile( "uniform_color_vertex_shader.glsl", "uniform_color_fragment_shader.glsl"); }
int main(void) { int key; struct YsGLSLBitmapRenderer *bitmapRenderer; YsBitmap bmp; FsChangeToProgramDir(); bmp.LoadPng("flash01.png"); printf("Bitmap dimension %dx%d\n",bmp.GetWidth(),bmp.GetHeight()); FsOpenWindow(32,32,640,480,1); bitmapRenderer=YsGLSLCreateBitmapRenderer(); key=FSKEY_NULL; while(FSKEY_ESC!=key) { FsPollDevice(); key=FsInkey(); int mx,my,lb,mb,rb; FsGetMouseState(lb,mb,rb,mx,my); int wid,hei; FsGetWindowSize(wid,hei); glViewport(0,0,wid,hei); glClearColor(0.0,0.0,0.0,0.0); glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT); glColor3ub(255,255,255); glBegin(GL_LINES); glVertex2i(270,240); glVertex2i(370,240); glVertex2i(320,190); glVertex2i(320,290); glEnd(); YsGLSLUseBitmapRenderer(bitmapRenderer); YsGLSLRenderRGBABitmap2D(bitmapRenderer,320,240,YSGLSL_HALIGN_RIGHT,YSGLSL_VALIGN_BOTTOM,bmp.GetWidth(),bmp.GetHeight(),bmp.GetRGBABitmapPointer()); YsGLSLEndUseBitmapRenderer(bitmapRenderer); FsSwapBuffers(); FsSleep(10); } YsGLSLDeleteBitmapRenderer(bitmapRenderer); return 0; }
/* virtual */ void FsLazyWindowApplication::Initialize(int argc,char *argv[]) { FsChangeToProgramDir(); colorAsAttrib.CompileFile( "color_as_attribute_vertex_shader.glsl", "color_as_attribute_fragment_shader.glsl"); uniformColor.CompileFile( "uniform_color_vertex_shader.glsl", "uniform_color_fragment_shader.glsl"); sampler2d.CompileFile( "sampler2d_vertex_shader.glsl", "sampler2d_fragment_shader.glsl"); glGenTextures(1,&texIdent); glActiveTexture(GL_TEXTURE0); glBindTexture(GL_TEXTURE_2D,texIdent); glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_WRAP_S,GL_CLAMP); glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_WRAP_T,GL_CLAMP); glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_NEAREST); glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_NEAREST); glTexImage2D(GL_TEXTURE_2D,0,GL_RGBA,checker_pattern_wid,checker_pattern_hei,0,GL_RGBA,GL_UNSIGNED_BYTE,checker_pattern); }