What's new in TDM 2.07

From The DarkMod Wiki
Jump to navigationJump to search
Version 2.07 of The Dark Mod has not been released yet.

See the roadmap on our bugtracker.

The Dark Mod 2.07 Stability Release


Taking the bold new features introduced in 2.06 and improving their stability
was the intended goal of the 2.07 release cycle.

With that said, 2.07 has a number of new tricks up it's sleeve
so you'll still get a few new features along with the large number of critical fixes.




Deprecation Notice!

  • Future TDM versions (2.08+) will not work on Windows XP!

    (TDM 2.07 is the the last TDM release that will be compiled with Windows XP compatibility.)
    We have NO confirmation from any testers whether 2.07 even works in XP yet.

  • Future TDM versions (2.08+) will require OpenGL 3.3 Driver Support!

    We plan on moving more of the renderer off the CPU onto the GPU. Only OpenGL 3.3 and newer will allow this.






Important CVARS


Old:

  • r_useFBO: enables/disables FBO rendering. It is now ON by default.
  • r_fboResolution: coefficient for internal rendering resolution (takes effect only when FBO is on). 2 means double resolution. Works like SSAA. Very high performance cost.
  • r_softshadowsradius: Determines how large the light center is for light sources. Negative value overrides emitter_size spawnarg. (partly configurable in video settings GUI)
  • r_softshadowsquality: Determines how many gradients for shadows. Larger values produce smoother blending at more performance cost. (configurable in video settings GUI)


New:

Graphics

  • r_ambientMinLevel: adds specified value to ambient light (linear correction).
  • r_ambientGamma: applies specified gamma exponent to ambient light (gamma correction).
  • r_shadows 2: enables new "Maps" implementation of shadows. (configurable in video settings GUI)
  • r_shadowMapSize: defines resolution of shadow maps with "Maps" implementation of shadows. More = better, less = faster.
  • r_maxShadowMapLight: If a light is bigger than this value, it will render in Stencil Shadow mode to avoid texture resolution artifacts


Frob Help

  • r_frobhelper_active: 1 = Activate, 2 = Deactivate
  • r_frobhelper_alpha: Opacity of the FrobHelper cursor
  • r_frobhelper_ignore_size: FrobHelper is not shown for objects bigger than this specified size along any axis
  • r_frobhelper_fadein_delay: FrobHelper is shown after a certain delay
  • r_frobhelper_fadein_duration: FrobHelper is faded in over this specified duration
  • r_frobhelper_fadeout_duration: FrobHelper is faded out over this specified duration


Mantle Changes

  • pm_mantle_fastLowObstacles: increase speed, remove crouch, reduce screen rock when mantling small obstacles
  • pm_mantle_maxLowObstacleHeight: height above which fast mantle for "low obstacles" is no longer in effect


Cheat \ Debug Map command:

  • tdm_give_loot: Automatically gives the player all loot in the map. Useful in debugging loot based goals or letting frustrated players avoid prolonged treasure hunting



  Experimental Graphics

* r_useFenceSync: Disable Fence Sync optimization. Can help TDM run properly on drivers that have poor support for this extension.

* r_skipDynamicShadows: Only render shadows from stationary light sources

* r_shadowMapSinglePass: Gathers all shadow operations into one texture so that only one shadow pass is needed. 
  
    Note: seems to be more beneficial to Intel and AMD hardware than Nvidia where it can even cause performance loss.

* r_testARBProgram = 2: Multi-light shading. Gather all lights into one render pass. Ambient in this mode is '''not''' enhanced.

* image_useNormalCompression = 2: Initial support for RGTC compression. Similar to AMD 3Dc or D3D BC5. 
   
    Not fully working but fairly complete. Needs new GLSL based materials for water\glass or other complex ARB materials.



AI


While the list of AI changes is a little short in the release, many of the fixes
were quite complex projects and have widespread impact on the immersive quality of missions.


  • Fire Elemental deemed complete. Further changes are enhancement requests.
  • AI react properly to flashbomb attacks while seated
  • AI properly return to seated coordinates after being interrupted from patrol routes
  • Improved the way that AI respond to the player escaping to dark ledges
  • AI can now handle bodies (ragdolls) obstructing door closure
  • AI think loops have been restructured to reduce anomalies with interrupted animation



Graphics


ANTIALIASING AND SOFT SHADOWS "WORK TOGETHER" IN TDM 2.07!!

By making "Framebuffer Objects" (FBO) the default rendering mode and implementing true
Multisample Antialiasing (MSAA), TDM 2.07 will now allow users to change nearly every
standard graphic quality setting without restarting the game!

Shadow quality inches closer to the Holy Grail of true physically correct penumbra behavior
with the arrival of Shadow Maps with "contact hardening" Percentage Closer Soft Shadows (PCSS)!

Shadow Maps also offer performance advantages in scenes that are normally CPU bound
when in Stencil Shadows mode.


(Due to having to do skinning and silhouette calculations on the CPU in Stencil Shadow mode.)

  • Numerous FBO-related fixes: reloadImages now works, quickload no longer crashes, no more duplicate renders, etc.

  • Finished the move to FBO-based rendering and implemented proper antialiasing (MSAA).
    (It is recommended to reset config file, or at least set "r_useFBO 1" and "r_fboResolution 1" manually.)

  • New experimental mode of rendering shadows ("Maps") --- can be switched on in Video/Advanced menu.

  • Softness of soft shadows can be controlled by "emitter_size" spawnarg.
    (Beware: "Maps" and "Stencil" modes of rendering shadows treat it in absolutely different way!)

  • Added "soft gamma": implementation of gamma correction not subject to color banding.
    (See cvars r_ambientMinLevel and r_ambientGamma.)

  • GLSL Interaction Shader more closely resembles the ARB version

  • Shaders are all OpenGL 2.x baseline "with extensions".
    (2.06 had a zoo of different GL versions in the Shaders.)

  • Lanterns no longer flicker when climbing ladders



Sound


3D positional sound and reverb have been vastly improved in the release!

  • Enabled HRTF by default for better positional sound: works properly only with headphones.

  • New syntax for EFX files (Version 2): allows using presets from openal-soft.
    ( See syntax in Setting Reverb Data ).

  • Sounds which should not be affected by environment are marked as no_efx.
  • Fixed some sounds which had (incorrect) stereo encoding. Converting to mono fixed 3D positional behavior
  • MANY Missing impact sounds added
  • Added sound shader definitions for some previously unreferenced sounds, including ambient sounds and AI speech samples
  • New, more realistic and varied mantle sounds



Coding


TDM 2.07 goes further with the process to modernize coding standards in TDM.
More legacy OpenGL functions have been replaced with modern techniques.
C++ Library management and compiling have been improved.
Finally, performance optimizations have been applied to the rendering framework,
game code, and code base in general.


  • Mouse sensitivity in the main menu should be similar to one in Windows.
  • Precision fixes: dmap and collision-related gameplay are affected.
  • tdm_update: probably improved VCRedist installation, built Linux 64-bit version.
  • Moved closer to Doom 3 BFG Vertex Buffer management (better multi-core stability)
  • More SIMD instructions used to improve performance ( 64-bit rendering now has performance parity to 32-bit )
  • Lightgem is now defined in it's own "view" to better match native rendering conventions
  • FFMPEG now utilizes SMP
  • Envshot is fixed and can also capture the skybox
  • noFog material flag now works as originally described here: [1]
  • noFog is now also available as an entity flag
  • Lightgem no longer renders during the Compass renderDef phase



Assets


Many quality textures, models, and materials were added by both Team members and
community contributors over the 2.06 to 2.07 cycle.


  • Epifire's Security Camera
  • Springheel's Church modules
  • Springheel's updated head models
  • Springheel's particle effects
  • Grayman's Grandfather Clock prefab
  • Spooks light texture
  • Rsoul's Chain models and Interior Module fixes
  • Dragofer Textures, Materials, Sounds, Particles, and Hookah model



GUIs


  • "Frob helper" feature provides a small screen center indicator when frobbing small object
  • Mission Download page now has a "Download All" button
  • Softness slider for soft shadows
  • Added a toggle for Stencil Shadows vs Shadow Maps
  • Added "Look Up" and "Look Down" key configurations
  • Splash screen aspect ratios corrected



Gameplay


  • Mantling low and medium-sized obstacles is faster and smoother
  • Remote listening support (related to security camera features)
  • Doubled air regaining speed after dive (Full refill now takes about 8 seconds)
  • Mantling no longer allowed when "under water"
  • Prefab Traps (scripts and models)
  • Inactivity Trigger script



Translation

  • Outsider One provided updates to his Turkish Translation of Menus




See also