Skip to content

Iterative Performance Boost

Latest
Compare
Choose a tag to compare
@aronson aronson released this 09 Oct 11:37
· 31 commits to main since this release

"GPU" Support for Cogmind

This release contains Cogmind-specific patches that enable the sdl12-compat project to run the game, moving rendering from legacy SDL 1.2 CPU-based code to modern SDL 2 GPU CPU!-based code.

It has a 10% performance boost compared to the previous release.

Apple Silicon machines will see performance jump from sub-30 FPS to 120+ FPS with either CrossOver Wine or Parallels VM and the mod.

Windows and Linux desktop and laptop users can see anywhere from 380-1300% measured speedups compared to stock under stress, and can run custom shaders with ReShade with this mod.

This mod may enable Steam overlay on your system and may improve performance when capturing Cogmind's window.

Note: previous versions of this mod claimed GPU support, this is only very slightly true after gaining knowledge of the codebase. Most of the graphics are still done on the CPU for now, and always have been!

To install:

  • If on Windows, you will likely need to set your audio device's sample rate to 44.1 kHz
  • Ensure Cogmind has been launched at least once and is currently set to either "Borderless Fullscreen" or "Windowed" mode in options
  • Close Cogmind
  • Locate the Cogmind install folder and backup SDL.dll to SDL.dll.bak or similar
    • Typical Steam install location: C:\Program Files (x86)\Steam\steamapps\common\Cogmind\
  • Extract the mod zip
  • Drag and drop SDL.dll and SDL2.dll within the extracted folder into your Cogmind install folder, overwriting the original SDL.dll shipped with the game.

Known bugs:

  • Map export hangs game for many minutes (now disabled as a workaround) resolved in b13 on smaller maps
  • Right shift does not fire under CrossOver Wine in MacOS, use Karabiner-Elements to remap right shift to left shift
  • "True Fullscreen" in Cogmind's options may render the game at half the intended screen size. Use "Borderless Fullscreen" to get around this, and for a generally better experience overall

New changes from 2.0.0

New changes from 1.2.0

  • Entirely re-written SDL2.dll pixel blending algorithm see branch here for sources
  • Discovered GPU is only used for the final screen displayed

New changes from 1.1.0:

  • Scroll wheel fixed
  • Map export DISABLED; use original SDL.dll to export maps
  • Compiled with additional stable optimizations using MSVC compiler

New changes from 1.0.0:

  • No longer performs a lookup for the memory freeing function every time a sound is unloaded (i.e. a weapon is fired)