diff --git a/docs/rh-log.txt b/docs/rh-log.txt index f934e63cf..005aa5e1e 100644 --- a/docs/rh-log.txt +++ b/docs/rh-log.txt @@ -1,3 +1,8 @@ +September 20, 2009 (Changes by Graf Zahl) +- Changed call to R_DrawRemainingPlayerSprites into a virtual function + of DFrameBuffer because its implementation is specific to the software + renderer and needs to be overridable. + September 19, 2009 - Fixed: Wall drawing handled fixed light levels improperly (but did not completely ignore them, either). diff --git a/src/d_main.cpp b/src/d_main.cpp index 6221c7298..801262790 100644 --- a/src/d_main.cpp +++ b/src/d_main.cpp @@ -681,7 +681,7 @@ void D_Display () SB_state = screen->GetPageCount(); BorderNeedRefresh = screen->GetPageCount(); } - R_DrawRemainingPlayerSprites(); + screen->DrawRemainingPlayerSprites(); screen->DrawBlendingRect(); if (automapactive) { diff --git a/src/v_video.cpp b/src/v_video.cpp index a89e270fb..acd481f68 100644 --- a/src/v_video.cpp +++ b/src/v_video.cpp @@ -1258,6 +1258,17 @@ void DFrameBuffer::WriteSavePic (player_t *player, FILE *file, int width, int he delete pic; } +//=========================================================================== +// +// +// +//=========================================================================== + +void DFrameBuffer::DrawRemainingPlayerSprites() +{ + R_DrawRemainingPlayerSprites(); +} + FNativePalette::~FNativePalette() diff --git a/src/v_video.h b/src/v_video.h index 6d9a6ee96..3ce0e2849 100644 --- a/src/v_video.h +++ b/src/v_video.h @@ -348,6 +348,9 @@ public: // renders view to a savegame picture virtual void WriteSavePic (player_t *player, FILE *file, int width, int height); + // draws player sprites with hardware acceleration (only useful for software rendering) + virtual void DrawRemainingPlayerSprites(); + bool Accel2D; // If true, 2D drawing can be accelerated. // Begin 2D drawing operations. This is like Update, but it doesn't end