DEADSOFTWARE

render: fix unused variable warnings
[d2df-sdl.git] / src / game / opengl / r_graphics.pas
index b16bd6fc010d074b8c89cb60be6b5bb5851e5297..3b60fe49de14e8865dc2817a39a0ea35b0ae1839 100644 (file)
@@ -22,39 +22,11 @@ uses
   {$IFDEF USE_SDL2}
     SDL2,
   {$ENDIF}
-  SysUtils, Classes, Math, e_log, e_texture,
+  SysUtils, Classes, Math, e_log, r_texture, g_base,
   MAPDEF, ImagingTypes, Imaging, ImagingUtility;
 
 type
-  TMirrorType=(None, Horizontal, Vertical);
-  TBlending=(None, Blend, Filter, Invert);
-
-  TPoint2i = record
-    X, Y: Integer;
-  end;
-
-  TPoint2f = record
-    X, Y: Double;
-  end;
-
-  TRect = record
-    Left, Top, Right, Bottom: Integer;
-  end;
-
-  TRectWH = record
-   X, Y: Integer;
-   Width, Height: Word;
-  end;
-
-  TRGB = packed record
-   R, G, B: Byte;
-  end;
-
   PDFPoint = ^TDFPoint;
-  PPoint2f = ^TPoint2f;
-  PRect = ^TRect;
-  PRectWH = ^TRectWH;
-
 
 //------------------------------------------------------------------
 // прототипы функций
@@ -94,8 +66,8 @@ procedure e_DarkenQuadWH (x, y, w, h: Integer; a: Integer);
 function e_CreateTextureImg (var img: TImageData; var ID: DWORD): Boolean;
 function e_CreateTexture(FileName: string; var ID: DWORD): Boolean;
 function e_CreateTextureEx(FileName: string; var ID: DWORD; fX, fY, fWidth, fHeight: Word): Boolean;
-function e_CreateTextureMem(pData: Pointer; dataSize: LongInt; var ID: DWORD): Boolean;
-function e_CreateTextureMemEx(pData: Pointer; dataSize: LongInt; var ID: DWORD; fX, fY, fWidth, fHeight: Word): Boolean;
+function e_CreateTextureMem(pData: Pointer; dataSize: LongInt; var ID: DWORD; filter: Boolean = False): Boolean;
+function e_CreateTextureMemEx(pData: Pointer; dataSize: LongInt; var ID: DWORD; fX, fY, fWidth, fHeight: Word; filter: Boolean = False): Boolean;
 procedure e_GetTextureSize(ID: DWORD; Width, Height: PWord);
 procedure e_DeleteTexture(ID: DWORD);
 procedure e_RemoveAllTextures();
@@ -143,26 +115,15 @@ procedure e_SetGamma(win: PSDL_Window;Gamma: Byte);
 
 procedure e_MakeScreenshot(st: TStream; Width, Height: Word);
 
-function _RGB(Red, Green, Blue: Byte): TRGB;
-function _Point(X, Y: Integer): TPoint2i;
-function _Rect(X, Y: Integer; Width, Height: Word): TRectWH;
-function _TRect(L, T, R, B: LongInt): TRect;
-
 //function e_getTextGLId (ID: DWORD): GLuint;
 
 var
   e_Colors: TRGB;
-  e_NoGraphics: Boolean = False;
-  e_FastScreenshots: Boolean = true; // it's REALLY SLOW with `false`
-  g_dbg_scale: Single = 1.0;
-  r_pixel_scale: Single = 1.0;
-
 
 implementation
 
 uses
-  paszlib, crc, utils;
-
+  paszlib, crc, utils, g_options;
 
 type
   TTexture = record
@@ -205,8 +166,6 @@ var
   e_RBO: GLuint = 0;
   e_RBOSupported: Boolean = True;
   e_Frame: GLuint = 0;
-  e_FrameW: Integer = -1;
-  e_FrameH: Integer = -1;
 
 //function e_getTextGLId (ID: DWORD): GLuint; begin result := e_Textures[ID].tx.id; end;
 
@@ -332,7 +291,7 @@ begin
  Result := True;
 end;
 
-function e_CreateTextureMem(pData: Pointer; dataSize: LongInt; var ID: DWORD): Boolean;
+function e_CreateTextureMem(pData: Pointer; dataSize: LongInt; var ID: DWORD; filter: Boolean = False): Boolean;
 var
   find_id: DWORD;
   fmt:     Word;
@@ -341,14 +300,14 @@ begin
 
  find_id := FindTexture;
 
- if not LoadTextureMem(pData, dataSize, e_Textures[find_id].tx, e_Textures[find_id].tx.Width, e_Textures[find_id].tx.Height, @fmt) then exit;
+ if not LoadTextureMem(pData, dataSize, e_Textures[find_id].tx, e_Textures[find_id].tx.Width, e_Textures[find_id].tx.Height, @fmt, filter) then exit;
 
  id := find_id;
 
  Result := True;
 end;
 
-function e_CreateTextureMemEx(pData: Pointer; dataSize: LongInt; var ID: DWORD; fX, fY, fWidth, fHeight: Word): Boolean;
+function e_CreateTextureMemEx(pData: Pointer; dataSize: LongInt; var ID: DWORD; fX, fY, fWidth, fHeight: Word; filter: Boolean = False): Boolean;
 var
   find_id: DWORD;
   fmt:     Word;
@@ -357,7 +316,7 @@ begin
 
  find_id := FindTexture();
 
- if not LoadTextureMemEx(pData, dataSize, e_Textures[find_id].tx, fX, fY, fWidth, fHeight, @fmt) then exit;
+ if not LoadTextureMemEx(pData, dataSize, e_Textures[find_id].tx, fX, fY, fWidth, fHeight, @fmt, filter) then exit;
 
  ID := find_id;
 
@@ -415,9 +374,6 @@ begin
 
   DestroyFramebuffer;
 
-  e_FrameW := Width;
-  e_FrameH := Height;
-
   glGetError();
 
   glGenFramebuffers(1, @e_FBO);
@@ -1943,36 +1899,6 @@ begin
  e_TextureFonts := nil;
 end;
 
-function _RGB(Red, Green, Blue: Byte): TRGB;
-begin
- Result.R := Red;
- Result.G := Green;
- Result.B := Blue;
-end;
-
-function _Point(X, Y: Integer): TPoint2i;
-begin
- Result.X := X;
- Result.Y := Y;
-end;
-
-function _Rect(X, Y: Integer; Width, Height: Word): TRectWH;
-begin
- Result.X := X;
- Result.Y := Y;
- Result.Width := Width;
- Result.Height := Height;
-end;
-
-function _TRect(L, T, R, B: LongInt): TRect;
-begin
- Result.Top := T;
- Result.Left := L;
- Result.Right := R;
- Result.Bottom := B;
-end;
-
-
 procedure e_MakeScreenshot (st: TStream; Width, Height: Word);
 var
   pixels, obuf, scln, ps, pd: PByte;