X-Git-Url: http://deadsoftware.ru/gitweb?a=blobdiff_plain;f=src%2Fgame%2FDoom2DF.lpr;h=1e358b9224d6d6a94f33242dc3fca5cbd417fccb;hb=87d7671fba8d9f2961a1f682a406bd4049f23796;hp=47ffeb22c64427a0808af286a7c9e6e4b3767e1c;hpb=0361545117c9f1e9c4e719f2250c48f69879de4a;p=d2df-sdl.git diff --git a/src/game/Doom2DF.lpr b/src/game/Doom2DF.lpr index 47ffeb2..1e358b9 100644 --- a/src/game/Doom2DF.lpr +++ b/src/game/Doom2DF.lpr @@ -144,49 +144,71 @@ uses g_playermodel in 'g_playermodel.pas', g_saveload in 'g_saveload.pas', g_sound in 'g_sound.pas', - g_textures in 'g_textures.pas', + g_animations in 'g_animations.pas', g_triggers in 'g_triggers.pas', g_weapons in 'g_weapons.pas', g_window in 'g_window.pas', -{$IFNDEF HEADLESS} - {$IFDEF USE_SYSSTUB} - g_system in 'stub/g_system.pas', - {$ENDIF} - {$IFDEF USE_SDL} - g_system in 'sdl/g_system.pas', - {$ENDIF} - {$IFDEF USE_SDL2} - g_system in 'sdl2/g_system.pas', - {$ENDIF} -{$ENDIF} -{$IFNDEF HEADLESS} - {$I ../shared/vampimg.inc} - r_animations in 'opengl/r_animations.pas', - r_console in 'opengl/r_console.pas', - r_game in 'opengl/r_game.pas', - {$IFDEF ENABLE_GFX} - r_gfx in 'opengl/r_gfx.pas', - {$ENDIF} - r_graphics in 'opengl/r_graphics.pas', - r_items in 'opengl/r_items.pas', - r_map in 'opengl/r_map.pas', - r_monsters in 'opengl/r_monsters.pas', - r_netmaster in 'opengl/r_netmaster.pas', - r_player in 'opengl/r_player.pas', - r_playermodel in 'opengl/r_playermodel.pas', - r_render in 'opengl/r_render.pas', - r_texture in 'opengl/r_texture.pas', - r_textures in 'opengl/r_textures.pas', - r_weapons in 'opengl/r_weapons.pas', - r_window in 'opengl/r_window.pas', - {$IFDEF ENABLE_TOUCH} - r_touch in 'opengl/r_touch.pas', + {$IFDEF ENABLE_SYSTEM} + {$IFDEF USE_SYSSTUB} + g_system in 'stub/g_system.pas', + {$ENDIF} + {$IFDEF USE_SDL} + g_system in 'sdl/g_system.pas', + {$ENDIF} + {$IFDEF USE_SDL2} + g_system in 'sdl2/g_system.pas', + {$ENDIF} {$ENDIF} + {$IFDEF ENABLE_MENU} g_gui in 'g_gui.pas', g_menu in 'g_menu.pas', {$ENDIF} + +{$IFDEF ENABLE_RENDER} + {$IF DEFINED(USE_OPENGL) OR DEFINED(USE_GLES1) OR DEFINED(USE_GLSTUB)} + {$I ../shared/vampimg.inc} + r_animations in 'opengl/r_animations.pas', + r_console in 'opengl/r_console.pas', + r_game in 'opengl/r_game.pas', + {$IFDEF ENABLE_GFX} + r_gfx in 'opengl/r_gfx.pas', + {$ENDIF} + r_graphics in 'opengl/r_graphics.pas', + r_items in 'opengl/r_items.pas', + r_map in 'opengl/r_map.pas', + r_monsters in 'opengl/r_monsters.pas', + r_netmaster in 'opengl/r_netmaster.pas', + r_player in 'opengl/r_player.pas', + r_playermodel in 'opengl/r_playermodel.pas', + r_render in 'opengl/r_render.pas', + r_texture in 'opengl/r_texture.pas', + r_textures in 'opengl/r_textures.pas', + r_weapons in 'opengl/r_weapons.pas', + r_window in 'opengl/r_window.pas', + {$IFDEF ENABLE_TOUCH} + r_touch in 'opengl/r_touch.pas', + {$ENDIF} + {$IFDEF ENABLE_MENU} + r_gui in 'opengl/r_gui.pas', + {$ENDIF} + {$ELSEIF DEFINED(USE_STUBRENDER)} + r_render in 'renders/stub/r_render.pas', + {$ELSEIF DEFINED(USE_NEWGL)} + {$I ../shared/vampimg.inc} + r_render in 'renders/opengl/r_render.pas', + r_atlas in 'renders/opengl/r_atlas.pas', + r_textures in 'renders/opengl/r_textures.pas', + r_draw in 'renders/opengl/r_draw.pas', + r_map in 'renders/opengl/r_map.pas', + r_fonts in 'renders/opengl/r_fonts.pas', + r_common in 'renders/opengl/r_common.pas', + r_console in 'renders/opengl/r_console.pas', + r_gui in 'renders/opengl/r_gui.pas', + {$ELSE} + {$FATAL render driver not selected} + {$ENDIF} {$ENDIF} {$IFDEF USE_FMOD} @@ -251,7 +273,7 @@ begin if (NetMode = NET_SERVER) then g_Net_Host_Update() else if (NetMode = NET_CLIENT) then g_Net_Client_Update(); // think -{$IFNDEF HEADLESS} +{$IFDEF ENABLE_RENDER} r_Render_Update; {$ENDIF} g_Game_Update(); @@ -266,10 +288,10 @@ var Time, Time_Delta: Int64; Frame: Int64; begin - {$IFDEF HEADLESS} - Result := False; - {$ELSE} + {$IFDEF ENABLE_SYSTEM} Result := sys_HandleInput(); + {$ELSE} + Result := False; {$ENDIF} Time := GetTickCount64(); @@ -318,10 +340,9 @@ begin gLerpFactor := 1.0 else gLerpFactor := nmin(1.0, (Time - Time_Old) / 28.0); -{$IFNDEF HEADLESS} - r_Render_Draw; - sys_Repaint; -{$ENDIF} + {$IFDEF ENABLE_RENDER} + r_Render_Draw; + {$ENDIF} Frame := Time end else @@ -387,7 +408,6 @@ begin begin itmp := 0; val(ParamStr(idx), itmp, valres); - {$IFNDEF HEADLESS} if (valres = 0) and (not g_holmes_imfunctional) then begin case itmp of @@ -396,11 +416,6 @@ begin 16: uiContext.font := 'win16'; end; end; - {$ELSE} - // fuck off, fpc! - itmp := itmp; - valres := valres; - {$ENDIF} Inc(idx); end; end; @@ -977,7 +992,7 @@ end; procedure ScreenResize (w, h: Integer); begin - {$IFNDEF HEADLESS} + {$IFDEF ENABLE_RENDER} r_Render_Resize(w, h); {$IFDEF ENABLE_HOLMES} fuiScrWdt := w; @@ -1004,7 +1019,7 @@ end; InitPrep; e_Input_Initialize; InitSound; - {$IFNDEF HEADLESS} + {$IFDEF ENABLE_SYSTEM} sys_Init; sys_CharPress := @CharPress; (* install hook *) sys_ScreenResize := @ScreenResize; (* install hook *) @@ -1014,7 +1029,7 @@ end; g_Console_Initialize; // TODO move load configs here g_Language_Set(gLanguage); - {$IFNDEF HEADLESS} + {$IFDEF ENABLE_RENDER} r_Render_Initialize; {$ENDIF} DebugOptions; @@ -1023,16 +1038,15 @@ end; {$IFDEF ENABLE_HOLMES} InitHolmes; {$ENDIF} - {$IFDEF HEADLESS} - g_PlayerModel_LoadFake('doomer', 'doomer.wad'); - {$ELSE} + {$IFDEF ENABLE_RENDER} g_PlayerModel_LoadAll; r_Render_Load; + {$ELSE} + g_PlayerModel_LoadFake('doomer', 'doomer.wad'); {$ENDIF} g_Game_Init; {$IFDEF ENABLE_MENU} g_Menu_Init; - g_GUI_Init; {$ENDIF} g_Game_Process_Params; // TODO reload GAME textures @@ -1048,7 +1062,7 @@ end; g_GUI_Destroy; g_Menu_Free; {$ENDIF} - {$IFNDEF HEADLESS} + {$IFDEF ENABLE_RENDER} r_Render_Free; {$ENDIF} {$IFDEF ENABLE_HOLMES} @@ -1057,8 +1071,10 @@ end; g_Net_Slist_ShutdownAll; g_Net_DeinitLowLevel; (* g_Touch_Finalize; *) - {$IFNDEF HEADLESS} + {$IFDEF ENABLE_RENDER} r_Render_Finalize; + {$ENDIF} + {$IFDEF ENABLE_SYSTEM} sys_Final; {$ENDIF} g_Console_Finalize;