X-Git-Url: http://deadsoftware.ru/gitweb?a=blobdiff_plain;f=src%2Fnogl%2FnoGLES1.inc;h=6bc0acb937a361685297bca2597817b86851d243;hb=923ff56209bf28a54bd5bd63a786e67af8af121b;hp=2bfec5316ee7b0296f1c2767ea303463b98d4230;hpb=b5d789f0a119c0e2db9403c2e19e6344b88f582d;p=d2df-sdl.git diff --git a/src/nogl/noGLES1.inc b/src/nogl/noGLES1.inc index 2bfec53..6bc0acb 100644 --- a/src/nogl/noGLES1.inc +++ b/src/nogl/noGLES1.inc @@ -57,7 +57,8 @@ implementation es_glFlush: procedure; cdecl; es_glFinish: procedure; cdecl; - es_glOrthof: procedure (left, right, bottom, top, near, far: GLfloat); cdecl; + es_glMultMatrixf: procedure (m: PGLfloat); cdecl; + //es_glOrthof: procedure (left, right, bottom, top, near, far: GLfloat); cdecl; es_glLoadIdentity: procedure; cdecl; es_glMatrixMode: procedure (mode: GLenum); cdecl; es_glLoadMatrixf: procedure (m: PGLfloat); cdecl; @@ -297,9 +298,27 @@ implementation - procedure glOrtho (left, right, bottom, top, near, far: GLfloat); + procedure glOrtho (left, right, bottom, top, near, far: GLdouble); + var m: array [0..15] of GLfloat; begin - es_glOrthof(left, right, bottom, top, near, far); + {es_glOrthof(left, right, bottom, top, near, far);} + m[0] := 2 / (right - left); + m[1] := 0; + m[2] := 0; + m[3] := 0; + m[4] := 0; + m[5] := 2 / (top - bottom); + m[6] := 0; + m[7] := 0; + m[8] := 0; + m[9] := 0; + m[10] := -2 / (far - near); + m[11] := 0; + m[12] := -((right + left) / (right - left)); + m[13] := -((top + bottom) / (top - bottom)); + m[14] := -((far + near) / (far - near)); + m[15] := 1; + es_glMultMatrixf(@m[0]); end; procedure glLoadIdentity; @@ -514,7 +533,8 @@ implementation es_glFlush := SDL_GL_GetProcAddress('glFlush'); es_glFinish := SDL_GL_GetProcAddress('glFinish'); - es_glOrthof := SDL_GL_GetProcAddress('glOrthof'); + es_glMultMatrixf := SDL_GL_GetProcAddress('glMultMatrixf'); + //es_glOrthof := SDL_GL_GetProcAddress('glOrthof'); es_glLoadIdentity := SDL_GL_GetProcAddress('glLoadIdentity'); es_glMatrixMode := SDL_GL_GetProcAddress('glMatrixMode'); es_glLoadMatrixf := SDL_GL_GetProcAddress('glLoadMatrixf'); @@ -583,7 +603,8 @@ implementation es_glFlush := nil; es_glFinish := nil; - es_glOrthof := nil; + es_glMultMatrixf := nil; + //es_glOrthof := nil; es_glLoadIdentity := nil; es_glMatrixMode := nil; es_glLoadMatrixf := nil;