Audiosurf

Audiosurf

Not enough ratings
Config for low latency & clear visuals
By EvilMcSheep
Removing latency via graphics driver tweaks, improving visual clarity, and reverting an unfortunate update!
   
Award
Favorite
Favorited
Unfavorite
Latency: Why it matters in general
Latency is the small time delay between you moving your mouse (or giving any other input) and it being reflected on-screen.

Reducing this delay removes weightiness from your inputs - it gives a more-direct connection to your machine, which makes it much more natural to play well, and, just like increased framerate (which also naturally reduces latency), can reduce fatigue from long gaming sessions!
Latency: Why it matters for Audiosurf
Latency reduction benefits Audiosurf in a unique way:
Audio sync
The game relies heavily on the audio being in sync with visuals, for perfect gameplay feel and also visual effects!

Good audio sync makes it very natural (and fun!) to dance with the game!

Audiosurf can do it better than Audiosurf 2 - take advantage of it!
Through the magic of not running on Unity, the original Audiosurf has excellent potential for low latency and good immersion!

From personal experience
Latency reduction has delivered a very clear improvement in my ability to score;
Precise movements are much easier, and even a small, barely-perceptible tweak quickly paid off in breaking of records!

"Who cares about score? I just want to have fun!"
Well - being in full control of your movements can avoid you a lot of frustration, especially with puzzle characters!
Removing latency: V-Sync
Unless you're running G-Sync/FreeSync or a high refresh rate panel, V-Sync can be absolutely brutal for latency!

How to turn it off
As you can see, there is no such option in the in-game menu!
What now?

First though...
How to even tell if you were successful: Checking framerate
See bottom of the guide if you need help with enabling an FPS counter!

With V-Sync enabled, your game will max out at the refresh rate of your monitor (usually 60Hz, but may also be higher, like 75/120/144Hz+)

Alright, let's get rid of that V-Sync!
Method #1: Graphics driver
The exact steps will depend on your GPU vendor and graphics driver version;
Create a game profile / 3D application profile for QuestViewer.exe, found within Audiosurf's \engine\ folder! This is what Audiosurf actually runs on! Audiosurf.exe merely acts as a launcher!
[See bottom of the guide if you need help with finding this]

Now, just set V-Sync / Wait for vertical refresh to Always off / Force disabled, and save the profile!
Launch Audiosurf, and see if it worked!

This will fail with AMD Catalyst drivers, so...
Method #2: RadeonPro for old AMD/ATI cards
Nonono, you don't need to buy a workstation card! RadeonPro is software that offers extended driver settings for older AMD cards!

This tool hasn't been updated in a while, and I can only confirm trouble-free operation with older cards and drivers (HD 2000-6000 series, running Catalyst drivers) - try it with more-modern configurations at your own risk!

Download it here: https://www.radeonpro.info/download/

After installation, I recommend going into the settings, and disabling whatever extra features you might not be interested in, such as launch on Windows startup (you will have to launch RadeonPro every time you want to play Audiosurf, though!), just leave API monitoring enabled!

You can now add QuestViewer.exe, and set V-Sync to be truly off! It looks the same as in CCC, but this tool does it successfully!


Alright, I very much hope that your V-Sync is gone now! :) Playing with it enabled is truly a miserable experience :D
Removing latency: FPS limiter
If you're trying to save your laptop's battery, or are trying to reduce stress on your hardware, setting an FPS limit is generally not a bad idea!

However, even when still exceeding the refresh rate of your monitor, FPS limits will still create latency;
If your monitor isn't running adaptive sync, then there will naturally be latency due to GPU/panel desync, and game logic / input polling may be slower too!

If you want minimal latency, it's best to disable such limiters!
Removing latency: Pre-rendered frames & low-latency modes
Frame pre-rendering can slightly improve framerate and frametime consistency, but it adds a small (but feelable) amount of latency!

Nvidia
This has likely changed since I last used an Nvidia card, but for older Nvidia drivers, there is definitely a setting for Pre-rendered frames!
As described in this guide before, add QuestViewer.exe, and then set this setting as low as it goes!

More recently, Nvidia added "Ultra-Low Latency Mode" - you should be able to find easily enough - I believe that this is replacement for the Pre-rendered frames, and likely works very similarly!

AMD/ATI
ATI's version of Pre-rendered frames was called the "Flip Queue";
This setting was removed from their control panel a long time ago, but remained tweakable externally for a while, though likely not quite to this day.

Luckily, RadeonPro, the tool described at the end of this guide's V-Sync section, offers the ability to change it!

Just set it to 0, though you may prefer other values for frametime consistency - play around with it! :)

As an alternative to RadeonPro, if you would like to universally change this setting, at least with not-super-modern hardware/drivers this can also be done via Registry edit!
Look into this at your own risk! Just pointing out that it may be an option for you! :)

With newer drivers, AMD has a feature called "Radeon Anti-Lag" - this seems to be a more-clever version of the "Flip Queue";
As described in the guide above, you want QuestViewer.exe! The setting should be easy enough to find within the driver!
Removing latency: Custom resolutions / "monitor overclocking"
Latency is naturally decreased by an increase of framerate, or in this case - refresh rate!

By creating a custom resolution with an increased refresh rate, you can make your monitor attempt to match this refresh rate!

If it can't, then it will simply start skipping frames or complain about "unsupported resolution" - no real risk of damage!

Modern graphics drivers from both AMD and Nvidia allow you to create custom resolutions with ease! :)

Custom Resolution Utility - CRU
For older drivers/something universal (also works with Intel iGPUs!), you can try CRU!
Download it from here:
https://www.monitortests.com/forum/Thread-Custom-Resolution-Utility-CRU
Just follow the "Getting started" section of the thread! :)
I believe, you had to launch the program as Admin too...

Some tips from personal experience...
Usually, monitors will run a frame or two above their native refresh rate at a minimum, but some support increased refresh rate much better than others!

Testing resolutions
If the monitor doesn't complain about the resolution being unsupported, it still might not be running it perfectly! You need to check for it it's skipping frames!

"Fancy rail and chasing-cam setup, with UFOs???"
lol no;

Get a dark, clean background, and drag your cursor at moderate pace across the screen, and see if it hitches;

Keep your eyes straight, and rotate your head to keep the cursor in eye focus - move the cursor as quick as you can, without losing your focus;

If cursor movement appears smooth, then your monitor should have no issues with the chosen resolution - the monitor doesn't care if the frames come from desktop, or from a game :)

Pushing higher refresh rates
Lower resolutions often support higher refresh rates; I'm running my 1080p panel at 900p for this reason!

If your monitor hits a higher refresh rate at some lowered resolution, it may be worth trying to bump up the resolution to some halfway point - maybe it still holds!
Ran mine at 720p for a while, not realizing that 900p works at the same refresh rate!

There are plenty of reports online that cable quality and length matters, for signal integrity reasons;
Loosely on this topic, the move from VGA to HDMI got me from 66Hz@720p to 72Hz@900p, on my "1080@60" panel (Philips 221T1)!
(For the record, it can also do 66Hz@1080p - can still have a good gain, without sacrifice :))

Personal conclusion
As you can see, this worked out very well for me - a 20% increase in motion smoothness, and refresh rate-based latency down from 16.666ms to 13.888ms!

The ~9 year old monitor has been running at increased refresh rate for about 4 years now, without any signs of trouble!
Removing latency: Multi-GPU
I love multi-GPU setups, so it's unfortunate that I must remind against running this mode in Audiosurf;
Since Audiosurf is prone to being CPU-bottlenecked, running AFR will usually do nothing but add the typical ~10% overhead penalty to average FPS, while also affecting frametime consistency;

As usual with Multi-GPU: Only enable it if the game in question can push such a setup to close to it's limits!

Labeled latency trap: Frame pacing
Frame pacing certainly makes motion look smoother, but it does this at the expense of increased latency - if you left multi-GPU mode on, disable this!
Visual clarity: In-game settings
Don't just run the game at max because your hardware can handle it!
Here's a rundown of the 4 detail levels:
Premium
  • Spits particles into your face at speed
  • Sometimes looks really sweet
  • Destroys framerate relative to other settings
  • Even when average framerate is high, the frametime consistency is often poor, making it look like it's running at 30FPS when it's actually at 100+
  • Has the highest render distance for traffic - a potential advantage!
Enhanced
  • Doesn't have the occasional beauty of Premium, but certainly has a lot more elegance due to removal of clutter
  • Massive improvement in framerate / frametime consistency compared to Premium
  • Slight reduction in traffic render distance - a potential, though uncommon, gameplay disadvantage
Normal
  • Gives a visible bump in framerate compared to Enhanced
  • Removes floating decorative objects - in very rare songs, the track may clip through them, obstructing visibility - a super-obscure gameplay advantage
    https://gtm.steamproxy.vip/sharedfiles/filedetails/?id=2455766316
  • Removes the colored lines under traffic - have heard of someone (a very-skilled Eraser player) being bothered by these
  • Reduced traffic render distance, to the point being a very likely gameplay disadvantage
  • Same as Minimal gameplay-wise, but now with background scenery
Minimal
  • Ultimate framerate - can run on truly terrible hardware
  • Same traffic render distance as Normal
Dark mode
Remember that you can change the color scheme to preserve your eyeballs when playing Casual characters!
The "Background" settings change the entire color scheme, not just the far background! (requires song reload to change fully)
(If you're into it, these settings can also be used to re-enable track color for Elite characters)
Visual clarity: Return to stretch-e
Insanity: 4:3 stretch was GOOD
Hear me out on this one :D

The center of the screen is where all the interesting stuff happens, and to make space for the empty sides, it effectively needs to be zoomed-out, making small distant traffic appear even smaller.


You can think of this as an increase in FOV!
Normally, I'm all FOR a good, high FOV, but this is the one game, where it is absolutely useless!
(I also like the oval-shaped rings more :D)

Reason to revert #2: Job-unfit corkscrews
This update also changed the placement of corkscrews - previously, they were placed at random, but now, they appear at epic moments.
Sounds reasonable, no?

Problem is - the geometry of the corkscrews is prone to making the camera confused, and obstructs visibility even when the camera is fine;
By making the corkscrews specifically SEEK OUT extreme moments in songs, Dylan has made them far more bothersome than they ever were!
They also serve as a good reason to tilt your head, which is fun, but not during most-intense moments

How to revert to previous game version
Here:
https://www.dropbox.com/s/1xl5ym36d8mfz1e/RevertToStretch.7z?dl=0
It contains the old versions of the relevant files changed in the last update (it also reverts the menus)

Open the game folder (see bottom of the guide, if you need help with this), and dump the "engine" folder from the archive straight into it!
Then confirm all replacement requests!

Widescreen fix specific
If you specifically want/don't want this change - it all depends on the 'XX_Camera' files, found under \engine\Stage :)

Corkscrew specific
Much like the widescreen change, the corkscrews depend on one file!
\engine\Scores\StatCollector.cgr is what you're interested in!

Is this cheating?
Traffic placement remains unchanged, and so does your score potential!
You can think of this as using a skin with a higher camera in Audiosurf 2! :)
Visual clarity: Anti-aliasing & anisotropic filtering
Though there aren't any in-game options for these, you can enable them elsewhere!
These will make distant things appear a little clearer.

AA is mostly beneficial for lower resolutions, like the one that you ended up with after all that monitor overclocking :D

You can enable AA via the options.ini file, found within the engine folder!
(See the section below if you need help with finding this!)

The antialiasing param is at the very bottom, and you can change the 0 to values such as 2, 4, 8!
Save the file, start the game, and see how it looks!

For anisotropic filtering, you'll need to use the graphics driver!
(You can set AA here too :))

Same basic procedure as with the driver-based V-Sync disabling of before, just that you're messing with different settings!
AA depends on how much your GPU can handle, while aniso generally makes no difference to performance, and is safe to just max out!
Help: Finding/accessing game files for making tweaks
Library > Audiosurf > Right-click > Manage > Browse local files

Simple! :)
If you make any mistakes
Library > Audiosurf > Right-click > Properties... > LOCAL FILES > Verify integrity of game files...

Steam will now re-download and replace any files that you may have messed up!
Help: Seeing current framerate
Launch the game and press Shift+Tab, to open Steam Overlay!

SETTINGS > IN-GAME > In-game FPS counter

A small FPS counter should now appear in whatever corner you selected, upon closing the overlay!
7 Comments
Shark 23 Jul, 2024 @ 3:13pm 
windowed mode does not fix the problem and im using steam's fps overlay and its locked at 32fps
EvilMcSheep  [author] 23 Jul, 2024 @ 2:57pm 
Some power-saving mode, perhaps? (Windows / GPU driver)
Some games like to set your monitor to a lower refresh rate too, which you can solve by deleting / editing resolutions via CRU. (Your monitor OSD should have an info panel showing refresh rate, or may show it after you switch inputs).
Does switching to windowed mode make the problem go away?
Is this 30fps something you're measuring by feel, or do you have Steam overlay/Riva/whatever measuring framerate? So it's locked at exactly 30?
Shark 23 Jul, 2024 @ 1:59pm 
i know this is a pretty old thread but ive been stuck on 30fps for a while and i cant figure out why its been stuck at 30fps.
ive tried everything above btw
EvilMcSheep  [author] 8 Sep, 2021 @ 12:14pm 
Wherever there are ducks, there is danger for gut-privacy of software! :D
Hope that you do! Nerdy details are always interesting! (:
m1nt_ 8 Sep, 2021 @ 12:02pm 
No problem! Been hacking away at this game and looking at its internals (and that of Quest3D) for quite a bit now, hope I can share some more insights later on :^)
EvilMcSheep  [author] 8 Sep, 2021 @ 8:58am 
Hm, can people with a duck in their hair really be trusted?
Apparently so! :D

Thanks, added this to the guide! :)
m1nt_ 8 Sep, 2021 @ 7:18am 
Good guide, but the game does have built-in Anti-aliasing, but it's only changeable in the config file in the game's engine folder
For example for me, the location of the config is C:\Program Files (x86)\Steam\steamapps\common\Audiosurf\engine\options.ini
The AA value in the config goes up to 8.