DEADSOFTWARE

render: remove flag animation from player model state
[d2df-sdl.git] / src / game / opengl / r_render.pas
index 483bd53282af43d03cbeb2e5f53331f2404ebb1b..b26d0ecbea851752387b952675dc49f0e074789a 100644 (file)
@@ -19,15 +19,25 @@ interface
 
   procedure r_Render_Initialize;
   procedure r_Render_Finalize;
+
   procedure r_Render_Resize (w, h: Integer);
 
+  procedure r_Render_Load;
+  procedure r_Render_Free;
+
+  procedure r_Render_Update;
+
+  procedure r_Render_Apply;
+
 implementation
 
   uses
     {$INCLUDE ../../nogl/noGLuses.inc}
-    SysUtils, Classes,
+    SysUtils, Classes, Math,
     e_log, g_system,
-    g_game, g_options, r_window, r_graphics, r_console, r_playermodel
+    g_game, g_options, g_console,
+    r_window, r_graphics, r_console, r_playermodel,
+    r_weapons, r_items, r_gfx, r_monsters
   ;
 
   var
@@ -60,12 +70,30 @@ implementation
     if LoadedGL = true then
     begin
       {$IFDEF NOGL_INIT}
-        nogl_Quit
+        nogl_Quit;
       {$ENDIF}
       LoadedGL := false
     end
   end;
 
+  procedure r_Render_Load;
+  begin
+    r_PlayerModel_Load;
+    r_Monsters_Load;
+    r_Weapon_Load;
+    r_Items_Load;
+    r_GFX_Load;
+  end;
+
+  procedure r_Render_Free;
+  begin
+    r_GFX_Free;
+    r_Items_Free;
+    r_Weapon_Free;
+    r_Monsters_Free;
+    r_PlayerModel_Free;
+  end;
+
   procedure r_Render_Initialize;
   begin
     if sys_SetDisplayMode(gRC_Width, gRC_Height, gBPP, gRC_FullScreen, gRC_Maximized) = False then
@@ -78,11 +106,16 @@ implementation
 
   procedure r_Render_Finalize;
   begin
-    FreeGL;
     r_PlayerModel_Finalize;
+    FreeGL;
     e_ReleaseEngine
   end;
 
+  procedure r_Render_Update;
+  begin
+    r_PlayerModel_Update;
+  end;
+
   procedure r_Render_Resize (w, h: Integer);
   begin
     LoadGL;
@@ -109,4 +142,13 @@ implementation
     e_InitGL
   end;
 
+  procedure r_Render_Apply;
+  begin
+    if sys_SetDisplayMode(Max(1, gRC_Width), Max(1, gRC_Height), Max(1, gBPP), gRC_FullScreen, gRC_Maximized) then
+      e_LogWriteln('resolution changed')
+    else
+      e_LogWriteln('resolution not changed');
+    sys_EnableVSync(gVSync)
+  end;
+
 end.