[prboom+] 02/03: Imported Upstream version 2.5.1.5~svn4462+dfsg1

Fabian Greffrath fabian at moszumanska.debian.org
Sun Jan 24 16:38:16 UTC 2016


This is an automated email from the git hooks/post-receive script.

fabian pushed a commit to branch master
in repository prboom+.

commit 40ae0ed485564b1348fa4e40a9f61c0b1cc6f04c
Author: Fabian Greffrath <fabian at debian.org>
Date:   Sun Jan 24 17:38:01 2016 +0100

    Imported Upstream version 2.5.1.5~svn4462+dfsg1
---
 INSTALL                      |  2 +-
 README                       |  2 +-
 VisualC6/config.h            |  2 +-
 VisualC8/config.h            |  2 +-
 configure.ac                 |  2 +-
 doc/prboom-plus-history.html | 41 +++++++++++++++++++++++++++++++++++++++++
 doc/prboom-plus-history.txt  | 38 ++++++++++++++++++++++++++++++++++++++
 src/MAC/config.h             |  2 +-
 src/d_client.c               |  4 +---
 src/d_main.c                 | 33 ++++++++++++++++++++++++---------
 src/d_main.h                 |  3 ++-
 src/gl_gamma.c               |  3 +++
 src/i_capture.c              | 13 +++++++++----
 src/i_capture.h              |  2 ++
 src/m_misc.c                 |  7 ++++---
 src/r_fps.c                  | 20 ++++++++++++--------
 src/r_fps.h                  |  3 ++-
 17 files changed, 144 insertions(+), 35 deletions(-)

diff --git a/INSTALL b/INSTALL
index f55de25..123da6e 100644
--- a/INSTALL
+++ b/INSTALL
@@ -2,7 +2,7 @@ Installation From SVN
 =====================
 
 If you intend to compile PrBoom from a source tar file, such as
-prboom-plus-2.5.1.4.tar.gz, as opposed to SVN, skip to the "Basic Installation"
+prboom-plus-2.5.1.5.tar.gz, as opposed to SVN, skip to the "Basic Installation"
 section.
 
   1. Install and configure deutex.  If deutex is already installed and
diff --git a/README b/README
index 7717345..e0d8b32 100644
--- a/README
+++ b/README
@@ -1,4 +1,4 @@
-PrBoom 2.5.1.4
+PrBoom 2.5.1.5
 
 PrBoom is a version of the classic 3D shoot'em'up game Doom, originally
 written by id Software.
diff --git a/VisualC6/config.h b/VisualC6/config.h
index 0bc6793..1dcd34d 100644
--- a/VisualC6/config.h
+++ b/VisualC6/config.h
@@ -149,7 +149,7 @@
 #define PACKAGE_TARNAME "prboom-plus"
 
 /* Define to the version of this package. */
-#define PACKAGE_VERSION "2.5.1.4"
+#define PACKAGE_VERSION "2.5.1.5"
 
 /* Define if you have the SDL image library -lSDL_image */
 #define HAVE_LIBSDL_IMAGE
diff --git a/VisualC8/config.h b/VisualC8/config.h
index 3ee4eb1..65b3031 100644
--- a/VisualC8/config.h
+++ b/VisualC8/config.h
@@ -149,7 +149,7 @@
 #define PACKAGE_TARNAME "prboom-plus"
 
 /* Define to the version of this package. */
-#define PACKAGE_VERSION "2.5.1.4"
+#define PACKAGE_VERSION "2.5.1.5"
 
 /* Define if you have the SDL image library -lSDL_image */
 #define HAVE_LIBSDL_IMAGE
diff --git a/configure.ac b/configure.ac
index d1a10bd..8eb3e28 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,5 +1,5 @@
 dnl Process this file with autoconf to produce a configure script.
-AC_INIT([PrBoom-Plus],[2.5.1.4],[],[prboom-plus])
+AC_INIT([PrBoom-Plus],[2.5.1.5],[],[prboom-plus])
 
 AC_CONFIG_HEADER(config.h)
 AC_CONFIG_AUX_DIR(autotools)
diff --git a/doc/prboom-plus-history.html b/doc/prboom-plus-history.html
index 5d0baca..e89b317 100644
--- a/doc/prboom-plus-history.html
+++ b/doc/prboom-plus-history.html
@@ -43,6 +43,47 @@
 
 <h1>Change Log</h1>
 
+<br><span class="ver">2.5.1.4</span>
+<span class="date"> @ 2016-Jan-10</span>
+<table>
+<tr><td class="aaa">[+]</td><td>Added "Fix clipping problems in large levels" option.
+<tr><td class="aaa">[+]</td><td>Added "gl_finish" config variable.
+<tr><td class="aaa">[+]</td><td>Added "mus_fluidsynth_gain" and "mus_opl_gain cfg" config variables to fine tune output of fluidsynth and opl2 midi. Values allowed are 0 to 1000. 50 (default) exactly matches old behavior.
+<tr><td class="aaa">[+]</td><td>Added a "Health Bar Above Monsters" option (health_bar* config variables).
+<tr><td class="aaa">[+]</td><td>Added a "Things appearance" automap option. Possible values: "classic", "scaled" and "icons".
+<tr><td class="aaa">[+]</td><td>Added "notarget" and "fly" cheat codes.
+<tr><td class="aaa">[+]</td><td>Added MBF's "-beta" codepointers.
+<tr><td class="aaa">[+]</td><td>Added a new HUD.
+<tr><td class="aaa">[+]</td><td>Added "shaders" sector light mode.
+<tr><td class="aaa">[+]</td><td>Support "Classic Doom" WAD files of Doom 3 BFG Edition, by Fabian Greffrath.
+<tr><td class="aaa">[+]</td><td>Support for HACX 1.2 IWAD, by Fabian Greffrath.
+<tr><td class="aaa">[+]</td><td>Support up to eight joystick buttons instead of just four, by Fabian Greffrath. The fifth and sixth buttons are mapped to strafe left and right.
+<tr><td class="aaa">[+]</td><td>Mouse look now is available in software mode.
+<tr><td class="aaa">[+]</td><td>Added a crosshair. Three different crosshair graphics are for choice: cross, angle and dot. Extra features are changing crosshair colors according to the player's health and/or on sight of a target.
+<tr><td class="aaa">[+]</td><td>Added "Allow Jump" option on "Prboom-plus 'bad' compatibility settings" page. Implemented by Fabian Greffrath.
+<tr><td class="aaa">[+]</td><td>Added a "Backpack Changes Thresholds" option.
+<tr><td class="aaa">[+]</td><td>-skipsec accepts a minutes prefix followed by a colon.
+<tr><td class="aaa">[+]</td><td>Two-key strafe50: StrafeOn + MoveLR = strafe50
+<tr><td class="aaa">[+]</td><td>Added "Allow Vertical Aiming" option on "Prboom-plus 'bad' compatibility settings" page.
+<tr><td class="aaa">[*]</td><td>Update to newest SDL libraries: SDL_mixer 1.2.12, SDL_image 1.2.12, SDL_net 1.2.8.
+<tr><td class="aaa">[*]</td><td>Brown color for weapons that cannot be fired on weapon HUD widget.
+<tr><td class="aaa">[*]</td><td>"Use GL surface for software mode" mode now works much faster if gl_finish is 0 in config.
+<tr><td class="aaa">[*]</td><td>process_affinity_mask config variable is removed. Single CPU core will be automatically forced if SDL MIDI player is used.
+<tr><td class="aaa">[*]</td><td>Better support for Chex Quest, by Fabian Greffrath. Embed chex.deh by fraggle in prboom-plus.wad.
+<tr><td class="aaa">[*]</td><td>Redo MBF-style multiple DEHACKED lumps. Load command line DeHackEd patches after DEHACKED lumps.
+<tr><td class="aaa">[*]</td><td>Improved rendering precision (wall wiggle), by kb1.
+<tr><td class="aaa">[*]</td><td>Realign automap grid with blockmap.
+<tr><td class="aaa">[-]</td><td>'Max Health', 'Max Soulsphere' and 'Megasphere Health' DEH parameters did not work after warping to level from command line since 2.4.8.1.
+<tr><td class="aaa">[-]</td><td>Buggy invulnerability effect if hi-res textures are used and there is no support for GL_ARB_framebuffer_object.
+<tr><td class="aaa">[-]</td><td>Simple shadows flicker during lowering lifts.
+<tr><td class="aaa">[-]</td><td>"Change palette on pain/bonus/power" settings did not work.
+<tr><td class="aaa">[-]</td><td>Lines of walls on automap were not displayed on <a href="http://www.doomworld.com/vb/wads-mods/61701-planisphere-2/">Planisphere 2</a> at some zoom.
+<tr><td class="aaa">[-]</td><td>Fixed HOMs on <a href="http://www.doomworld.com/vb/wads-mods/61701-planisphere-2/">Planisphere 2</a>.
+<tr><td class="aaa">[-]</td><td>Incorrect clipping of automap in opaque mode after changing view window size. Affects only software mode.
+<tr><td class="aaa">[-]</td><td>Fixed <a href="http://doom.wikia.com/wiki/Long_wall_error">long wall error</a>.
+<tr><td class="aaa">[-]</td><td>Boom's ability to change floor and ceiling lighting independently was not applied to things in opengl.
+</table>
+
 <br><span class="ver">2.5.1.3</span>
 <span class="date"> @ 2011-Dec-05</span>
 <table>
diff --git a/doc/prboom-plus-history.txt b/doc/prboom-plus-history.txt
index b24d16d..267d3f6 100644
--- a/doc/prboom-plus-history.txt
+++ b/doc/prboom-plus-history.txt
@@ -1,5 +1,43 @@
 Change Log
 
+2.5.1.4 @ 2016-Jan-10
+[+] Added "Fix clipping problems in large levels" option.
+[+] Added "gl_finish" config variable.
+[+] Added "mus_fluidsynth_gain" and "mus_opl_gain cfg" config variables to fine tune output of fluidsynth and opl2 midi. Values allowed are 0 to 1000. 50 (default) exactly matches old behavior.
+[+] Added a "Health Bar Above Monsters" option (health_bar* config variables).
+[+] Added a "Things appearance" automap option. Possible values: "classic", "scaled" and "icons".
+[+] Added "notarget" and "fly" cheat codes.
+[+] Added MBF's "-beta" codepointers.
+[+] Added a new HUD.
+[+] Added "shaders" sector light mode.
+[+] Support "Classic Doom" WAD files of Doom 3 BFG Edition, by Fabian Greffrath.
+[+] Support for HACX 1.2 IWAD, by Fabian Greffrath.
+[+] Support up to eight joystick buttons instead of just four, by Fabian Greffrath. The fifth and sixth buttons are mapped to strafe left and right.
+[+] Mouse look now is available in software mode.
+[+] Added a crosshair. Three different crosshair graphics are for choice: cross, angle and dot. Extra features are changing crosshair colors according to the player's health and/or on sight of a target.
+[+] Added "Allow Jump" option on "Prboom-plus 'bad' compatibility settings" page. Implemented by Fabian Greffrath.
+[+] Added a "Backpack Changes Thresholds" option.
+[+] -skipsec accepts a minutes prefix followed by a colon.
+[+] Two-key strafe50: StrafeOn + MoveLR = strafe50
+[+] Added "Allow Vertical Aiming" option on "Prboom-plus 'bad' compatibility settings" page.
+[*] Update to newest SDL libraries: SDL_mixer 1.2.12, SDL_image 1.2.12, SDL_net 1.2.8.
+[*] Brown color for weapons that cannot be fired on weapon HUD widget.
+[*] "Use GL surface for software mode" mode now works much faster if gl_finish is 0 in config.
+[*] process_affinity_mask config variable is removed. Single CPU core will be automatically forced if SDL MIDI player is used.
+[*] Better support for Chex Quest, by Fabian Greffrath. Embed chex.deh by fraggle in prboom-plus.wad.
+[*] Redo MBF-style multiple DEHACKED lumps. Load command line DeHackEd patches after DEHACKED lumps.
+[*] Improved rendering precision (wall wiggle), by kb1.
+[*] Realign automap grid with blockmap.
+[-] 'Max Health', 'Max Soulsphere' and 'Megasphere Health' DEH parameters did not work after warping to level from command line since 2.4.8.1.
+[-] Buggy invulnerability effect if hi-res textures are used and there is no support for GL_ARB_framebuffer_object.
+[-] Simple shadows flicker during lowering lifts.
+[-] "Change palette on pain/bonus/power" settings did not work.
+[-] Lines of walls on automap were not displayed on Planisphere 2 at some zoom.
+[-] Fixed HOMs on Planisphere 2.
+[-] Incorrect clipping of automap in opaque mode after changing view window size. Affects only software mode.
+[-] Fixed long wall error.
+[-] Boom's ability to change floor and ceiling lighting independently was not applied to things in opengl.
+
 2.5.1.3 @ 2011-Dec-05
 [+] Added process_priority config variable. 0 - normal (default); 1 - high; 2 - realtime.
 [*] "Screen multiple factor" can be changed on the fly.
diff --git a/src/MAC/config.h b/src/MAC/config.h
index 5c19071..e947bbb 100644
--- a/src/MAC/config.h
+++ b/src/MAC/config.h
@@ -6,7 +6,7 @@
 #define PACKAGE_TARNAME "prboom-plus"
 
 /* Define to the version of this package. */
-#define PACKAGE_VERSION "2.5.1.4"
+#define PACKAGE_VERSION "2.5.1.5"
 
 #ifdef DEBUG
 
diff --git a/src/d_client.c b/src/d_client.c
index c971b7c..7ce74d4 100644
--- a/src/d_client.c
+++ b/src/d_client.c
@@ -83,8 +83,6 @@ int ticdup = 1;
 static int xtratics = 0;
 int              wanted_player_number;
 
-static dboolean isExtraDDisplay = false;
-
 static void D_QuitNetGame (void);
 
 #ifndef HAVE_NET
@@ -502,7 +500,7 @@ void TryRunTics (void)
         if (movement_smooth && gamestate==wipegamestate)
         {
           isExtraDDisplay = true;
-          D_Display();
+          D_Display(I_GetTimeFrac());
           isExtraDDisplay = false;
         }
       }
diff --git a/src/d_main.c b/src/d_main.c
index e785d8a..9c82860 100644
--- a/src/d_main.c
+++ b/src/d_main.c
@@ -250,7 +250,7 @@ gamestate_t    wipegamestate = GS_DEMOSCREEN;
 extern dboolean setsizeneeded;
 extern int     showMessages;
 
-void D_Display (void)
+void D_Display (fixed_t frac)
 {
   static dboolean isborderstate        = false;
   static dboolean borderwillneedredraw = false;
@@ -350,7 +350,7 @@ void D_Display (void)
     // Boom colormaps should be applied for everything in R_RenderPlayerView
     use_boom_cm=true;
 
-    R_InterpolateView(&players[displayplayer]);
+    R_InterpolateView(&players[displayplayer], frac);
 
     R_ClearStats();
 
@@ -471,10 +471,30 @@ static void D_DoomLoop(void)
       if (players[displayplayer].mo) // cph 2002/08/10
         S_UpdateSounds(players[displayplayer].mo);// move positional sounds
 
+      // Update display, next frame, with current state.
       if (!movement_smooth || !WasRenderedInTryRunTics || gamestate != wipegamestate)
+      {
+        // NSM
+        if (capturing_video && !doSkip)
+        {
+          dboolean first = true;
+          int cap_step = TICRATE * FRACUNIT / cap_fps;
+          cap_frac += cap_step;
+          while(cap_frac <= FRACUNIT)
+          {
+            isExtraDDisplay = !first;
+            first = false;
+            D_Display(cap_frac);
+            isExtraDDisplay = false;
+            I_CaptureFrame();
+            cap_frac += cap_step;
+          }
+          cap_frac -= FRACUNIT + cap_step;
+        }
+        else
         {
-        // Update display, next frame, with current state.
-        D_Display();
+          D_Display(I_GetTimeFrac());
+        }
       }
 
       // CPhipps - auto screenshot
@@ -494,11 +514,6 @@ static void D_DoomLoop(void)
         M_DoScreenShot(avi_shot_curr_fname);
         free(avi_shot_curr_fname);
       }
-      // NSM
-      if (capturing_video && !doSkip)
-      {
-        I_CaptureFrame ();
-      }
 }
 }
 
diff --git a/src/d_main.h b/src/d_main.h
index 6b9d8df..17bfa6d 100644
--- a/src/d_main.h
+++ b/src/d_main.h
@@ -34,6 +34,7 @@
 #ifndef __D_MAIN__
 #define __D_MAIN__
 
+#include "m_fixed.h"
 #include "d_event.h"
 #include "w_wad.h"
 
@@ -67,7 +68,7 @@ void D_DoAdvanceDemo (void);
 // BASE LEVEL
 //
 
-void D_Display(void);
+void D_Display(fixed_t frac);
 void D_PageTicker(void);
 void D_StartTitle(void);
 void D_DoomMain(void);
diff --git a/src/gl_gamma.c b/src/gl_gamma.c
index 41e58fb..57e3530 100644
--- a/src/gl_gamma.c
+++ b/src/gl_gamma.c
@@ -191,6 +191,9 @@ int gld_SetGammaRamp(int gamma)
 
     CalculateGammaRamp(g, gammatable);
 
+    // has no effect sometimes on Intel Graphics
+    // do it twice!
+    SDL_SetGammaRamp(gammatable, gammatable, gammatable);
     succeeded = (SDL_SetGammaRamp(gammatable, gammatable, gammatable) != -1);
     if (!succeeded)
     {
diff --git a/src/i_capture.c b/src/i_capture.c
index f2b156b..1478948 100644
--- a/src/i_capture.c
+++ b/src/i_capture.c
@@ -67,6 +67,8 @@ const char *cap_muxcommand;
 const char *cap_tempfile1;
 const char *cap_tempfile2;
 int cap_remove_tempfiles;
+int cap_fps;
+int cap_frac;
 
 // parses a command with simple printf-style replacements.
 
@@ -98,6 +100,9 @@ static int parsecommand (char *out, const char *in, int len)
         case 'f':
           i = doom_snprintf (out, len, "%s", vid_fname);
           break;
+        case 'r':
+          i = doom_snprintf (out, len, "%u", cap_fps);
+          break;
         case '%':
           i = doom_snprintf (out, len, "%%");
           break;
@@ -555,11 +560,11 @@ void I_CaptureFrame (void)
   if (!capturing_video)
     return;
 
-  nsampreq = snd_samplerate / 35;
-  partsof35 += snd_samplerate % 35;
-  if (partsof35 >= 35)
+  nsampreq = snd_samplerate / cap_fps;
+  partsof35 += snd_samplerate % cap_fps;
+  if (partsof35 >= cap_fps)
   {
-    partsof35 -= 35;
+    partsof35 -= cap_fps;
     nsampreq++;
   }
 
diff --git a/src/i_capture.h b/src/i_capture.h
index eb2d428..1197c1c 100644
--- a/src/i_capture.h
+++ b/src/i_capture.h
@@ -42,6 +42,8 @@ extern const char *cap_muxcommand;
 extern const char *cap_tempfile1;
 extern const char *cap_tempfile2;
 extern int cap_remove_tempfiles;
+extern int cap_fps;
+extern int cap_frac;
 
 // true if we're capturing video
 extern int capturing_video;
diff --git a/src/m_misc.c b/src/m_misc.c
index 990f0d5..75e7684 100644
--- a/src/m_misc.c
+++ b/src/m_misc.c
@@ -470,8 +470,8 @@ default_t defaults[] =
 
   {"gl_vsync",{&gl_vsync},{1},0,1,
    def_bool,ss_none},
-  /*{"gl_finish",{&gl_finish},{1},0,1,
-   def_bool,ss_none},*/
+  {"gl_finish",{&gl_finish},{1},0,1,
+   def_bool,ss_none},
   {"gl_clear",{&gl_clear},{0},0,1,
    def_bool,ss_none},
   {"gl_ztrick",{&gl_ztrick},{0},0,1,
@@ -980,11 +980,12 @@ default_t defaults[] =
   // NSM
   {"Video capture encoding settings",{NULL},{0},UL,UL,def_none,ss_none},
   {"cap_soundcommand",{NULL, &cap_soundcommand},{0,"oggenc2 -r -R %s -q 5 - -o output.ogg"},UL,UL,def_str,ss_none},
-  {"cap_videocommand",{NULL, &cap_videocommand},{0,"x264 -o output.mp4 --crf 22 --muxer mp4 --demuxer raw --input-csp rgb --input-depth 8 --input-res %wx%h --fps 35 -"},UL,UL,def_str,ss_none},
+  {"cap_videocommand",{NULL, &cap_videocommand},{0,"x264 -o output.mp4 --crf 18 --muxer mp4 --demuxer raw --input-csp rgb --input-depth 8 --input-res %wx%h --fps %r -"},UL,UL,def_str,ss_none},
   {"cap_muxcommand",{NULL, &cap_muxcommand},{0,"mkvmerge -o %f output.mp4 output.ogg"},UL,UL,def_str,ss_none},
   {"cap_tempfile1",{NULL, &cap_tempfile1},{0,"output.ogg"},UL,UL,def_str,ss_none},
   {"cap_tempfile2",{NULL, &cap_tempfile2},{0,"output.mp4"},UL,UL,def_str,ss_none},
   {"cap_remove_tempfiles", {&cap_remove_tempfiles},{1},0,1,def_bool,ss_none},
+  {"cap_fps", {&cap_fps},{60},16,300,def_int,ss_none},
 
   {"Prboom-plus video settings",{NULL},{0},UL,UL,def_none,ss_none},
   {"sdl_videodriver", {NULL,&sdl_videodriver}, {0,"default"},UL,UL,
diff --git a/src/r_fps.c b/src/r_fps.c
index aae4735..67e7a68 100644
--- a/src/r_fps.c
+++ b/src/r_fps.c
@@ -39,10 +39,12 @@
 #include "r_demo.h"
 #include "r_fps.h"
 #include "i_system.h"
+#include "i_capture.h"
 #include "e6y.h"
 
 int movement_smooth_default;
 int movement_smooth;
+dboolean isExtraDDisplay = false;
 
 typedef enum
 {
@@ -69,11 +71,14 @@ tic_vars_t tic_vars;
 static void R_DoAnInterpolation (int i, fixed_t smoothratio);
 
 extern int realtic_clock_rate;
-void D_Display(void);
+void D_Display(fixed_t frac);
 
 void M_ChangeUncappedFrameRate(void)
 {
-  movement_smooth = (singletics ? false : movement_smooth_default);
+  if (capturing_video)
+    movement_smooth = true;
+  else
+    movement_smooth = (singletics ? false : movement_smooth_default);
 }
 
 void R_InitInterpolation(void)
@@ -90,10 +95,9 @@ static dboolean NoInterpolateView;
 static dboolean didInterp;
 dboolean WasRenderedInTryRunTics;
 
-void R_InterpolateView(player_t *player)
+void R_InterpolateView(player_t *player, fixed_t frac)
 {
   static mobj_t *oviewer;
-  fixed_t frac;
 
   dboolean NoInterpolate = (paused && !walkcamera.type) || (menuactive && !demoplayback);
 
@@ -104,11 +108,10 @@ void R_InterpolateView(player_t *player)
     R_ResetViewInterpolation();
     oviewer = player->mo;
   }
-  tic_vars.frac = I_GetTimeFrac();
-  if (NoInterpolate)
-    tic_vars.frac = FRACUNIT;
 
-  frac = tic_vars.frac;
+  if (NoInterpolate)
+    frac = FRACUNIT;
+  tic_vars.frac = frac;
 
   if (movement_smooth)
   {
@@ -191,6 +194,7 @@ void R_InterpolateView(player_t *player)
 void R_ResetViewInterpolation ()
 {
   NoInterpolateView = true;
+  cap_frac = 0;
 }
 
 static void R_CopyInterpToOld (int i)
diff --git a/src/r_fps.h b/src/r_fps.h
index a268618..f8921fa 100644
--- a/src/r_fps.h
+++ b/src/r_fps.h
@@ -39,6 +39,7 @@
 
 extern int movement_smooth_default;
 extern int movement_smooth;
+extern dboolean isExtraDDisplay;
 
 extern int interpolation_maxobjects;
 
@@ -55,7 +56,7 @@ extern tic_vars_t tic_vars;
 void M_ChangeUncappedFrameRate(void);
 
 void R_InitInterpolation(void);
-void R_InterpolateView(player_t *player);
+void R_InterpolateView(player_t *player, fixed_t frac);
 
 extern dboolean WasRenderedInTryRunTics;
 

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-games/prboom+.git



More information about the Pkg-games-commits mailing list