if(bAdvancedBlend) bUseMultiPass=TRUE; // -> pseudo-advanced with 2 passes\r
else bUseMultiPass=FALSE; // -> or simple 'bright color' mode\r
// bGLBlend=FALSE; // -> no ext blending!\r
-\r
- glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE); \r
+ glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE); glError();\r
}\r
\r
if(bOpaquePass) // opaque mode?\r
}\r
\r
TCF[1]=XP8RGBA_1;\r
- glAlphaFuncx(GL_GREATER,0.49f);\r
+ glAlphaFuncx(GL_GREATER,0.49f); glError();\r
+\r
}\r
else // no opaque mode?\r
{\r
TCF[0]=TCF[1]=P8RGBA;\r
PalTexturedColourFn=P8RGBA; // -> init col func\r
- glAlphaFuncx(GL_NOTEQUAL,0); // --> set alpha func\r
+ glAlphaFuncx(GL_NOTEQUAL,0); glError(); // --> set alpha func\r
+\r
}\r
\r
//----------------------------------------------------//\r
LoadSubTexFn=LoadSubTexturePageSort; // init load tex ptr\r
\r
bBlendEnable=FALSE; // init blending: off\r
- glDisable(GL_BLEND);\r
+ glDisable(GL_BLEND); glError();\r
+\r
\r
SetScanTrans(); // init scan lines (if wanted)\r
}\r
glViewport(rRatioRect.left, // init viewport by ratio rect\r
iResY-(rRatioRect.top+rRatioRect.bottom),\r
rRatioRect.right, \r
- rRatioRect.bottom); \r
+ rRatioRect.bottom); glError();\r
\r
- glScissor(0, 0, iResX, iResY); // init clipping (fullscreen)\r
- glEnable(GL_SCISSOR_TEST); \r
+ glScissor(0, 0, iResX, iResY); glError(); // init clipping (fullscreen)\r
+ glEnable(GL_SCISSOR_TEST); glError();\r
\r
#ifndef OWNSCALE\r
glMatrixMode(GL_TEXTURE); // init psx tex sow and tow if not "ownscale"\r
glLoadIdentity();\r
glScalef(1.0f/255.99f,1.0f/255.99f,1.0f); // geforce precision hack\r
#endif \r
+ glDepthRangef(0.0f, 1.0f);glError();\r
+ \r
+ glPolygonOffset( -0.2f, -0.2f );glError();\r
+\r
+ glMatrixMode(GL_PROJECTION); glError(); // init projection with psx resolution\r
+ glLoadIdentity(); glError();\r
\r
- glMatrixMode(GL_PROJECTION); // init projection with psx resolution\r
- glLoadIdentity();\r
glOrtho(0,PSXDisplay.DisplayMode.x,\r
- PSXDisplay.DisplayMode.y, 0, -1, 1);\r
+ PSXDisplay.DisplayMode.y, 0, -1, 1); glError();\r
\r
if(iZBufferDepth) // zbuffer?\r
{\r
uiBufferBits=GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT;\r
- glEnable(GL_DEPTH_TEST); \r
- glDepthFunc(GL_ALWAYS);\r
+ glEnable(GL_DEPTH_TEST); glError();\r
+ glDepthFunc(GL_ALWAYS); glError();\r
iDepthFunc=1;\r
}\r
else // no zbuffer?\r
{\r
uiBufferBits=GL_COLOR_BUFFER_BIT;\r
- glDisable(GL_DEPTH_TEST);\r
+ glDisable(GL_DEPTH_TEST); glError();\r
}\r
\r
- glClearColor(0.0f, 0.0f, 0.0f, 0.0f); // first buffer clear\r
- glClear(uiBufferBits);\r
+ glClearColor(0.0f, 0.0f, 0.0f, 0.0f); glError(); // first buffer clear\r
+ glClear(uiBufferBits); glError();\r
\r
GetExtInfos(); // get ext infos\r
SetExtGLFuncs(); // init all kind of stuff (tex function pointers)\r
\r
- glEnable(GL_ALPHA_TEST); // wanna alpha test\r
+ glEnable(GL_ALPHA_TEST); glError(); // wanna alpha test\r
\r
{\r
- glDisable(GL_LINE_SMOOTH);\r
- glDisable(GL_POINT_SMOOTH);\r
+ glDisable(GL_LINE_SMOOTH); glError();\r
+ glDisable(GL_POINT_SMOOTH); glError();\r
}\r
\r
ubGloAlpha=127; // init some drawing vars\r
\r
if(bDrawDither) glEnable(GL_DITHER); // dither mode\r
else glDisable(GL_DITHER); \r
-\r
- glDisable(GL_FOG); // turn all (currently) unused modes off\r
- glDisable(GL_LIGHTING); \r
- glDisable(GL_STENCIL_TEST); \r
- glDisable(GL_TEXTURE_2D);\r
+ glError(); \r
+ glDisable(GL_FOG); glError(); // turn all (currently) unused modes off\r
+ glDisable(GL_LIGHTING); glError(); \r
+ glDisable(GL_STENCIL_TEST); glError(); \r
+ glDisable(GL_TEXTURE_2D); glError();\r
glDisable(GL_CULL_FACE);\r
\r
- glFlush(); // we are done...\r
- glFinish(); \r
+ glFlush(); glError(); // we are done...\r
+ glFinish(); glError(); \r
\r
CreateScanLines(); // setup scanline stuff (if wanted)\r
\r
{\r
if(gLastTex!=gTexName || gLastFMode!=0)\r
{\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); glError();\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); glError();\r
gLastTex=gTexName;gLastFMode=0;\r
}\r
}\r
{\r
if(gLastTex!=gTexName || gLastFMode!=1)\r
{\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); glError();\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); glError();\r
gLastTex=gTexName;gLastFMode=1;\r
}\r
}\r
{\r
if(gLastTex!=gTexName || gLastFMode!=1)\r
{\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); glError();\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); glError();\r
gLastTex=gTexName;gLastFMode=1;\r
}\r
}\r
if(bSetClip || !EqualRect(&rC,&rX))\r
{\r
rC=rX;\r
- glScissor(rC.left,rC.top,rC.right,rC.bottom);\r
+ glScissor(rC.left,rC.top,rC.right,rC.bottom); glError();\r
+ //LOGE("glscissor:%d %d %d %d",rC.left,rC.top,rC.right,rC.bottom);\r
bSetClip=FALSE; \r
}\r
return;\r
\r
if(bSetClip || !EqualRect(&r,&rC))\r
{\r
- glScissor(r.left,r.top,r.right,r.bottom);\r
+ glScissor(r.left,r.top,r.right,r.bottom); glError();\r
+\r
rC=r;\r
bSetClip=FALSE;\r
}\r