index b768075d9dd1ecf0c84e12c92445f0f354e0dfa2..90bda3b04a230a27abceb3ad4e651b518a5fad7e 100644 (file)
procedure r_Render_Initialize;
procedure r_Render_Finalize;
+
+ procedure r_Render_Load;
+ procedure r_Render_Free;
+
+ procedure r_Render_LoadTextures;
+ procedure r_Render_FreeTextures;
+
procedure r_Render_Resize (w, h: Integer);
+ procedure r_Render_Update;
+
procedure r_Render_Apply;
implementation
SysUtils, Classes, Math,
e_log, g_system,
g_game, g_options, g_console,
- r_window, r_graphics, r_console, r_playermodel
+ r_window, r_graphics, r_console, r_playermodel, r_textures, r_animations,
+ r_weapons, r_items, r_gfx, r_monsters, r_map, r_player, r_game
;
var
end
end;
+ procedure r_Render_LoadTextures;
+ begin
+ r_Game_LoadTextures;
+ r_Map_LoadTextures;
+ end;
+
+ procedure r_Render_FreeTextures;
+ begin
+ r_Map_FreeTextures;
+ r_Game_FreeTextures;
+ end;
+
+ procedure r_Render_Load;
+ begin
+ r_Game_Load; // load first!
+ r_Player_Load;
+ r_Map_Load;
+ 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;
+ r_Map_Free;
+ r_Player_Free;
+ r_Game_Free;
+ g_Texture_DeleteAll;
+ g_Frames_DeleteAll;
+ end;
+
procedure r_Render_Initialize;
begin
if sys_SetDisplayMode(gRC_Width, gRC_Height, gBPP, gRC_FullScreen, gRC_Maximized) = False then
r_Window_Initialize;
r_Console_Init;
r_PlayerModel_Initialize;
+ r_Map_Initialize;
end;
procedure r_Render_Finalize;
begin
- FreeGL;
+ r_Map_Finalize;
r_PlayerModel_Finalize;
+ FreeGL;
e_ReleaseEngine
end;
+ procedure r_Render_Update;
+ begin
+ r_Map_Update;
+ r_PlayerModel_Update;
+ end;
+
procedure r_Render_Resize (w, h: Integer);
begin
LoadGL;
gScreenWidth := w;
gScreenHeight := h;
e_ResizeWindow(w, h);
- e_InitGL
+ e_InitGL;
+ r_Game_SetupScreenSize;
end;
procedure r_Render_Apply;