index e04fbc42a196201086df63a259102b260c3b8568..8c4bfdcd2501407dd0f8d27c7719f0b5e6b58ef2 100644 (file)
{$INCLUDE ../../../shared/a_modes.inc}
unit r_holmes;
{$INCLUDE ../../../shared/a_modes.inc}
unit r_holmes;
+ {$IFDEF USE_GLES1}
+ {$FATAL Desktop OpenGL required for current Holmes implementation}
+ {$ENDIF}
+
interface
procedure r_Holmes_Draw ();
interface
procedure r_Holmes_Draw ();
xprofiler,
sdlcarcass,
fui_common, fui_ctls,
xprofiler,
sdlcarcass,
fui_common, fui_ctls,
- fui_gfx_gl,
+ fui_gfx,
+ r_fui_gfx_gl,
{$IFDEF ENABLE_GFX}
g_gfx,
{$ENDIF}
{$IFDEF ENABLE_GFX}
g_gfx,
{$ENDIF}
MAPDEF, g_options;
var
MAPDEF, g_options;
var
- hlmContext: TGxContext = nil;
+ hlmContext: r_fui_gfx_gl.TGxContext = nil;
vpx, vpy: Integer;
vpw, vph: Integer;
laserSet: Boolean = false;
vpx, vpy: Integer;
vpw, vph: Integer;
laserSet: Boolean = false;
begin
if (gPlayer1 = nil) then exit;
begin
if (gPlayer1 = nil) then exit;
- if (hlmContext = nil) then hlmContext := TGxContext.Create();
+ glPushMatrix;
+ (* hack: scale and translate must be handled by hlmContext.glSetScaleTrans, but it dont work for some reason *)
+ glScalef(g_dbg_scale, g_dbg_scale, 1.0);
+ glTranslatef(-vpx, -vpy, 0);
+
+ if (hlmContext = nil) then hlmContext := r_fui_gfx_gl.TGxContext.Create();
gxSetContext(hlmContext);
try
gxSetContext(hlmContext);
try
glScalef(g_dbg_scale, g_dbg_scale, 1.0);
glTranslatef(-vpx, -vpy, 0);
}
glScalef(g_dbg_scale, g_dbg_scale, 1.0);
glTranslatef(-vpx, -vpy, 0);
}
- hlmContext.glSetScaleTrans(g_dbg_scale, -vpx, -vpy);
+// hlmContext.glSetScaleTrans(g_dbg_scale, -vpx, -vpy); // uncomment when fix it
glEnable(GL_SCISSOR_TEST);
glScissor(0, gScreenHeight-gPlayerScreenSize.Y-1, gPlayerScreenSize.X, gPlayerScreenSize.Y);
glEnable(GL_SCISSOR_TEST);
glScissor(0, gScreenHeight-gPlayerScreenSize.Y-1, gPlayerScreenSize.X, gPlayerScreenSize.Y);
gxSetContext(nil);
end;
gxSetContext(nil);
end;
+ glPopMatrix;
+
if showMapCurPos then
begin
s := Format('mappos:(%d,%d)', [pmsCurMapX, pmsCurMapY]);
if showMapCurPos then
begin
s := Format('mappos:(%d,%d)', [pmsCurMapX, pmsCurMapY]);