Dark Souls 2 SSAO always uses VSSAO2 regardless of setting
Opened this issue · 3 comments
Regardless of which SSAO type I choose (SAO, HBAO, MSSAO, etc.), the Dark Souls 2 plugin will ignore that and always use VSSAO2 instead. Screenshots taken with different SSAO types look identical (changing strength, blur type, and scale works fine), and the log confirms that it's only using VSSAO2.
Here's a copy of my log (using log level 1). Notice how it says "ssaoType : MSSAO", but then loads "N:\GeDoSaTo\assets\VSSAO2.fx load, scale 2.0, strength SSAO_STRENGTH_LOW".
===== Sat Dec 13 19:44:12 2014 =====
===== start GeDoSaTo version 0.16.1704 built on 2014/11/30 18:46:26 "Third Ensemble" (GENERIC/RELEASE) = fn: DarkSoulsII
===== installation directory: N:\GeDoSaTo\
= Settings read:
- presentWidth : 1920
- presentHeight : 1080
- presentHz : 60
- presentInterval : -1
- adapterOverride : -1
- overrideWidth : 0
- overrideHeight : 0
- scalingType : bilinear
- maintainAspectRatio : true
- forceAnisoLevel : 0
- pluginHandlesDownsampling : false
- forcePresentRes : false
- forceRenderRes : false
- forceAlwaysDownsamplingRes : false
- emulateFlipBehaviour : false
- interceptOnlySystemDlls : false
- preventSteamOverlay : false
- loadSteamOverlayEarly : true
- loadD3DEarly : false
- delayDetouring : false
- zBufCompatibilityFlag : 0
- zBufClearIndex : 0
- pluginOverride : None
- enableDX11 : false
- enableTextureDumping : false
- enableAlternativeTextureDumping : false
- enableTextureOverride : true
- enableTextureMarking : false
- modifyGetCursorPos : true
- modifySetCursorPos : false
- interceptWindowProc : false
- adjustMessagePt : false
- modifyGetClientRect : true
- modifyGetWindowRect : true
- logLevel : 1
- messageSeconds : 2
- forceBorderlessFullscreen : false
- hideMouseCursor : false
- forceWindowedMode : false
- forceFullscreenMode : false
- injectPSHash :
- injectVSHash :
- injectRenderstate :
- injectDelayAfterDraw : false
- constrainInjectedRT : false
- aaType : smaa
- aaQuality : 3
- ssaoType : MSSAO
- ssaoStrength : 1
- ssaoScale : 2
- ssaoBlurType : gaussian
- enableDoF : false
- dofBaseRadius : 1.050000
- dofType : bokeh
- enableBloom : true
- enablePostprocessing : true
- postProcessingType : asmodean
- postProcessAfterScaling : false
- shadowScale : 1
- MSAASampleCount : 4
- enableCoverageSampling : false
- maxScreenshotParallelism : 4
=============
= Loaded Keybindings:
- 60 => toggleHUD
- 61 => toggleAA
- 62 => toggleDOF
- 63 => toggleAO
- 64 => togglePost
- 67 => toggleBloom
- 6a => takeScreenshot
- 6b => showStatus
- 6d => takeHUDlessScreenshot
- 6e => togglePerfInfo
- 6f => takeFullScreenshot
- 79 => dumpSSAO
- 7a => reloadShaders
= Loaded Button bindings:
=============
=== DetouredDirect3DCreate9 V:32
=== Direct3DCreate9 hooking 01903CD8
=== Direct3DCreate9 returning
GetAdapterDisplayMode ------
Injecting downsampling mode!
Injecting downsampling mode!
Injecting downsampling mode!
Injecting downsampling mode!
Injecting downsampling mode!
Injecting downsampling mode!
Injecting downsampling mode!
Injecting downsampling mode!
Injecting downsampling mode!
Injecting downsampling mode!
Injecting downsampling mode!
Injecting downsampling mode!
=== DetouredDirect3DCreate9 V:32
=== Direct3DCreate9 hooking 0192B218
=== Direct3DCreate9 returning
=== DetouredDirect3DCreate9 V:32
=== Direct3DCreate9 hooking 0192B228
=== Direct3DCreate9 returning
=== DetouredDirect3DCreate9 V:32
=== Direct3DCreate9 hooking 0192B238
=== Direct3DCreate9 returning
=== DetouredDirect3DCreate9 V:32
=== Direct3DCreate9 hooking 0192B258
=== Direct3DCreate9 returning
=== DetouredDirect3DCreate9 V:32
=== Direct3DCreate9 hooking 0192B268
=== Direct3DCreate9 returning
=== DetouredDirect3DCreate9 V:32
=== Direct3DCreate9 hooking 0192B278
=== Direct3DCreate9 returning
DetouredDirectInput8Create!
=== DetouredDirect3DCreate9 V:32
=== Direct3DCreate9 hooking 0192B348
=== Direct3DCreate9 returning
GetDeviceCaps 0 1 0018FA94 ------
=== DetouredDirect3DCreate9 V:32
=== Direct3DCreate9 hooking 0192B368
=== Direct3DCreate9 returning
GetDeviceCaps 0 1 0018F14C ------
GetAdapterDisplayMode ------
CreateDevice ------ Adapter 0 Thread 1236
- redirectCreateDevice requested mode:
- - Backbuffer(s): 1920 x 1080 D3DFMT_A8R8G8B8 *2
- - PresentationInterval: 1 Windowed: false Refresh: 0 Hz SwapEffect: D3DSWAPEFFECT_DISCARD
- - Autodepthstencil: false Format: D3DFMT_D24S8 Discard: false
- - Multisampling Type: D3DMULTISAMPLE_NONE Quality: 0
RenderstateManager resource initialization started
Initializing Console on device 1450A040
- done
SMAA load, SMAA_PRESET_HIGH, float4(1.0 / 1920, 1.0 / 1080, 1920, 1080)
N:\GeDoSaTo\assets\VSSAO2.fx load, scale 2.0, strength SSAO_STRENGTH_LOW
N:\GeDoSaTo\assets\post_asmodean.fx load
N:\GeDoSaTo\assets\bloom.fx load
RenderstateManager resource initialization completed
Dark Souls 2 has it own plugin, which only supports VSSAO. If you want use other forms of AO, you need to add pluginOverride GenericDepthPlugin to DS2 config, but this will probably break other Gedo features for this game.
I see. Thanks for explaining that.
I'll reopen this as a feature request, since there isn't really any reason for the DS2 plugin not to support other AO.