This page features a collection of interesting tips and tricks based on posts made by members of the Special K community that do not fit anywhere else.
By AkiraJkr, based on their Discord message. Further edited with more details as of 15/03/2024.
DS4Windows
to DS4Winn
to avoid conflicts/detection with Steam and other software.HidHide Configuration Client
hide your DualShock4, but make an exception for the renamed DS4Windows(DS4Winn.exe).Output Mode
to Passthrough
for your Touchpad & Gyro.Passthrough
Output Mode.DS4 Profile
as default BEFORE making a duplicate X360 profile with a emulated Xbox 360 Controller.X360 Profile
, make the Lightbar green before switch it to Passthrough
.DS4 Profile
, and in the Other tab, change Emulated Controller
to DualShock 4.DS4 Profile
as your default, and switch to the X360 Profile
for any emergencies.For Steam use:
Steam
> Settings
> Controller
and disable Enable Steam Input for Playstation
controllers. (Although, I recommend disabling it for them all, if your gamepad has native support to PC)If you wish to use Steam Input, enable it in a per-game case since global controller support is(thankfully) off;
Just go to your game’s Properties > Controller and Enable Steam Input instead of using default.
In some games, you might have no option but to USE Steam Input, as they have ZERO native support for the controllers, and Steam Input might automatically be force-enabled.
(Some games only support Steam Input but have HIDDEN native support fallback, so even if Steam Input is force-enabled, try disabling it and see if your controller is supported.
e.g. Tomb Raider I-II-III Remastered)
Profile | Rumble Support | Gyro | Lightbar custom color |
---|---|---|---|
DS4 Profile | * | ||
X360 Profile |
The Lightbar for the DS4 Profile will be blue like we’ve set before, until a game with proper DS4 support(or Steam Input) uses it.
Special K does not Unlock FPS in Sekiro properly anymore resulting in issues.
Use SekiroFpsUnlockDll instead
By Kaldaien, based on their their Discord message.
Special K calculates the G-Sync fps limit (or technically the fps limit that’s set by Nvidia reflex when using G-Sync + Vsync On) this way: Refresh - (Refresh * Refresh) / 3600.0
.
Moved to dgVoodoo page
Special K’s Vulkan Bridge
makes adjustments in the game’s Special K config file and sets Nvidia’s “Vulkan/OpenGL present method” driver option to “Prefer layered on DXGI Swapchain” in the game’s driver profile. Special K also sets additional driver flags in the game’s driver profile to improve compatibility, performance, and stability.
Nvidia’s DXGI interop uses a D3D11 swapchain. The Vulkan game (or D3D9 game using DXVK) still uses the Vulkan API, but Nvidia’s DXGI interop is used for final presentation. Special K can then hook into Nvidia’s DXGI interop layer, which provides enhancements such as DXGI flip model presentation and HDR injection.
DO NOT Use DXVK+Special K’s Vulkan Bridge (or the manual method) in DirectX 11 games.
Steps to enable Special K’s Vulkan Bridge:
Download a DXVK archive from the releases page which contains the compilled DLL files.
Extract the correct d3d9.dll
from the archive depending on whether your game’s .exe is 32bit or 64bit (PCGamingWiki may have this information), and place the dll where the game’s primary .exe
file is located.
Upon launching the game with Special K, a prompt asking if you want to enable native DXVK support should appear; press the Yes
button.
OK
button.On next launch, you should see the Special K startup banner in-game indicating that Special K is active.
Vulkan
. If it says D3D11.4 (despite being a D3D9 game using DXVK), then something may have prevented Special K from detecting the API correctly or Special K may have injected too late and some Special K override or feature may not be available.By jooozek, based on their their Discord message. This was the method used before Special K’s Vulkan Bridge existed.
Might require drivers version >=526.98
The two nvidia driver settings in the guide might reset on every driver update.
As usual with Special K, don’t use fullscreen.
Download DXVK archive from the release page which contains the compilled dll files, as of now dxvk-2.0.tar.gz https://github.com/doitsujin/dxvk/releases/
Extract the appropriate d3d9.dll
from archive, be it x32 for 32bit D3D9 games or x64 for 64bit D3D9 games to the place where the game exe file is located
Enable the the DXGI interop via NVCP Prefer layered on DXGI Swapchain
With Nvidia Profile Inspector change the value of OGL_DX_PRESENT_DEBUG
to 0x000802A5
located under section 8 - Extra
<path-to-SpecialK>\Profiles\<game-specific>\custom_SpecialK.ini
and insert the following in it:[API.Hook]
LastKnown=64
ddraw=false
d3d8=false
d3d9=false
d3d9ex=false
d3d11=true
OpenGL=false
[Window.System]
DontHookWndProc=true
custom_SpecialK.ini
is an override, delete this file if you aren’t using this method anymore
[Window.System]
RenderInBackground=true
DXVK test:
Create dxvk.conf
and add to it dxvk.hud = full
By Spodi, based on their their Discord message.
If the frametime is stable, latent sync pauses the rendering of the next frame, depending on the bias you set.
I can try to explain what I understood, but I don’t know if that is actually right.
Let’s say you set your limiter to 100 FPS and they are rock solid stable, that should be 10ms of total frametime from the start of the render to the actual presentation.
But the frame might actually always be finished after 3ms, which would be stable 333 FPS.
In such scenarios latent sync can delay the rendering of the next frame by a percentage of your total frametime you set the limiter at.
So e.g. 50% input bias at 10ms would be a delay by 5ms.
5ms + 3ms to render = 8ms.
Your frame is still ready in time.
So you can see the result of your action about 5ms sooner than normal.
Btw:
75% bias in this example would result in 7.5ms delay. 7.5ms + 3ms = 10.5ms bias. That would be too much and stutter/make things worse.
I hope this is the right math behind it and if it isn’t please correct me.
This toggle has historically been linked to enabling VRR support in earlier UWP games that otherwise does not make use of it, however in 2022 the Special K community realized it also impacted whether VRR remained engaged or not while an overlay were present above the game. This prompted a question in the official DirectX Discord server in early 2023 where a software engineer at Microsoft kindly provided the following detailed information about the toggle:
Hey. That toggle enables/disables Windows VRR for Games feature. This feature does two main things:
If a game is presenting on a VRR monitor with SyncInterval=1, then the OS promotes the SyncInterval to 0, so that the right levers in kernel and driver are activated for the game to leverage the benefits of VRR
If there is any passive content on top of the game (such as game bar), then it informs the compositor to lock its composition rate to the game’s presentation rate, so that the game continues to leverage VRR instead of dropping to a fixed rate composition mode
What you are seeing with gamebar overlay [ED: VRR remained synced to the game despite the presence of the gamebar overlay on top] is a result of #2.
The multi-mon weirdness when running VRR on primary is a known limitation of windows compositor for mixed refresh and mixed capabilities displays (i.e one display is running fixed rate content, and one is running VRR content). The compositor team is currently working on this problem to be shipped for a future OS release.
The information has been moved to its own page.