Amon Amarth wrote:
Amon Amarth wrote:
Has anyone found a way to remove the vignetting?
I don't suppose we can expect to see a fix from someone at least this year?
Well, it must be a simple HLSL Post shader; almost certainly in a .fx/.h(etc..), file. It might be by itself, or in a shader file with some of the other post effects. So identifying it should be extremely straightforward. Then all that needs to be done is: 1)Find a way to unpack From Software's .bdt asset archives (the .bhd's are almost certainly the indexes accompanying said archives. so no need to mess with those. 2) locate the shader files. 3)find the vignette code (Which should be very few lines) 4)Altering the vignette code.
[edit: I forgot #5]-- 5) Repack said archive with modified file and place back in game directory.
It should usually have the word Vignette actually in the syntax and be accompanied by some values correlating to screen edges (+x,-x,+y-y,)or (+pixel.x,-pixel.x,+pixel.y,-pixel.y) or (+tex.x,-tex.x,+tex.y,-tex.y,) something of that nature. It should also contain a colorInput texture of some sort, and end in something along the lines of: return colorinput;
Code:
for example The common TV style one found in certain certain shader suites (This one is from an ENB) (-x*x+x) * (-y*y+y):
tex = -tex * tex + tex;
colorInput.rgb = saturate(tex.x * tex.y * 100.0) * colorInput.rgb
or a round formula: (-x*x+x) * (-y*y+y)
float tex_xy = dot( float4(tex,tex) , float4(-tex,1.0,1.0) );
colorInput.rgb = saturate(tex_xy * 4.0) * colorInput.rgb;
Then just playing with the values until it gets to an acceptable level, Flat out removing it, or leaving an empty file might also work just fine (empty if it is the only shader present.) Although coming a cross a null value or not finding the file at all may bug something out if anything else depends on its output or it is supposed to point to another shader, or....
Since there are texture mods available for DS3 on the Nexus. There is almost certainly a utility there as well for opening the archives. I'm on a business trip currently but get back Friday night so if no one has looked at it yet. I'll try and work it out. However, I am sure anyone can do it as long as they just aren't intimidated by the shader code. It is really very simple to follow and edit/write very basic shaders like vignette, sepia, basic sharpening, and (some types of) tonemapping. Besides it is a fun little project to engross ones self in if you want to learn about these types of things, and a great place to start.