Here we go, I hope this one works well for everyone (unlike 0.8).
- Fixed the issues introduced on some systems by 0.8
(which were caused by the haphazard way I tried to fix the offset issue)
- Fixed Video size during profiling
(this was a bug related to improving the reflections introduced in 0.7)
- Really fixed the pixel offset error, at all resolutions
- Added high quality “VSSAO2″ option (see above, compare: off / on)
- Adjusted windowed mode so that it’s possible to move the window
Tracking down the profiling issue and the correct fix for the offset error was rather cumbersome. Here you see the culprit for the “halos”:
Downlaod DPfix 0.9.1 here (donate)
The source code for DPfix is now up on github.
I always planned to do this, but I decided to do so earlier rather than later for a few reasons:
- 0.8 works perfectly for me, but causes problems on many other systems, and it’s very hard to “remotely” debug issues.
- I’ll be really busy with work the rest of this week and throughout next week, so I can’t spend as much time on Deadly Premonition (or anything really) as I would like.
- Someone asked for it.
Now, when I released DSfix I was a bit disappointed by the lack of external contributions. There were a few brave souls, and I’m very grateful, but overall 95% of the code in DSfix is still written by me and untouched.
I think the problem was at least partly a lack of documentation and guidelines on my part, so I just spent over 2 hours writing up a developer README for DPfix. Have a look if you are thinking about contributing, or if you simply want to get a better idea about how Deadly Premonition works or how I create these interceptors.
Edit: Apparently there are some issues with this version on some configurations. If you experience any problems, revert back to 0.7.1 until I can figure this out.
Closing in on the final version.
- Fixed pixel offset error in light buffer with higher rendering resolution (caused small halos around some objects)
- Fixed AA not being correctly applied when the game uses the alternative rendering path (e.g. in the gallery)
- Added option to improve the Depth of Field effect (reduces flicker/pixelation)
- Added intial version of SSAO (screen space ambient occlusion) option
Some of these were much harder than they should have been. Maybe I’ll write up a longer post at some point with some more in-depth explanation of some of the things which go on in Deadly Premonition’s rendering pipeline, and how they affected DPfix development.
Download DPfix 0.8 here
Also check out this high-res font/UI pack by InfiniteNine.
This is the “halo” effect I’m talking about in point 1:
It was caused by some pixel size (or rather, 0.5/pixelsize) shader parameters not being correctly updated with the increased resolution, both for vertex and for pixel shaders, and it got worse with higher resolutions. It should be completely fixed now.
The DoF improvements can be seen in the shot up top already, with a less muddy/pixelated but still unfocused image in the distance. Finally, here are two screenshots showing off the current SSAO effect:
SSAO off | SSAO on
As always, if you like DPfix you can consider donating here, and if you enjoy the work InfiniteNine did on high-res UI textures you can donate here.
I’m quite proud of this release, since it accomplishes something which is amongst the hardest things I did in any of my interceptor .dlls so far, and which I failed to do back in DSfix: improving the quality of the shadow mapping.
- Fixed an issue that could happen when reloading and encountering a dual-perspective scene twice (0.7.1)
- Fixed crash when accessing the Add-ons menu (might also fix other crashes)
- Added the ability to improve shadow rendering: shadow map resolution and precision settings
- Added reflection resolution setting (affects e.g. mirrors, see screenshot above)
The most complex of these is the shadow change, and it also make a rather large difference, as you can see for part of the shadow map of the opening scene below (Left shows the default, and right with settings shadowMapScale 4 and improveShadowPrecision 1):
There are some minor bad news which come with the crash fix, since it involves changing how textures are hashed:
All A few existing texture mods may no longer work, until they are updated to the new hash code.
The fix for dual-scene rendering is also affected, and will not work until I can get to such a scene in the game again and find the right hash. (Or until someone provides me with a savegame in the room in chapter 5)
I will release a 0.7.1 to fix the latter issue once I am able to do so, I did not want to delay this release further since I might not get a chance to work on anything concerning Deadly Premonition until Saturday.
Download DPfix 0.7.1 Here
As always, if you enjoy this release, you can donate here.
Just a small update:
- Fixed crash caused by using the texture override functionality (sorry about that one)
- Added screenshot functions for both normal and hudless screenshots
You can configure the keys for screenshots in DPFixKeys.ini and the path they are stored at in DPFix.ini (default is [game path]/dpfix/screens)
Download DPfix 0.6.1 here
You can get the override textures used in the screenshot above here. The key texture can be used together with a controller profile to get correct key prompts when playing with a controller (particularly handy during QTEs).
(Ye olde donation link is here, since every post tagged dpfix could be the first/only one someone new sees)
Edit: 0.6 broke texture dumping, 0.6.1 fixes it again. Download from the link above.
After a weekend spent mostly on Deadly Premonition, here’s another version of DPfix. Due to the number of fixes and additions in this one I bumped the version number by 0.2.
- Fixed additional map locations/sizes for main menu map and large overlay map
- Fixed positioning and size in scenes with 2 viewpoints being shown (also fixed size of their storage buffers)
- Fixed enemy shadow trails on the world map at night
- Added anti-aliasing support (FXAA and SMAA1x supported, see DPfix.ini to enable)
- Added texture dumping and overriding functionality (works as it did in DSfix)
Download DPfix 0.5 here
(If you like this version you can consider donating)
Some other things:
- Some people think their posts here on the blog are being deleted, rest assured this is not the case. Because of spam issues I run a rather rigorous spam filter and most posts need to be manually accepted (particularly if it’s your first post) so there may be some delay involved in that. (You may have noticed that there’s no spam in the comments, unlike most blogs :P)
- If you have issues with the game which are unrelated to DPfix, (e.g. stuttering, crashing) try rebooting and setting DP.exe to Windows 98 compatibility mode. Sounds silly, but it fixed everything for me.
- I can’t really fix audio issues or add real gamepad support to the game, sorry.
In the upcoming week I have quite a lot of work to do, so I probably won’t get much done in DPfix, but I think this version is really good enough to enjoy the game with.
Oh, and someone please make a high-res texture pack for the 3D stuff in the in-game menu. It’s hideous!
This version fixes all issues I was aware of (which were caused by DPfix and not inherent in the game), so I’ll call it a beta. Of course, there might still be problems I’m not aware of yet.
- Fixed normal mapping/lighting of many surfaces in the game (this is a big one)
- Fixed minimap location
- Added windowed mode (in addition to fullscreen and borderless windowed fullscreen modes), since it was requested
Get DPfix 0.3 beta here
Unless something more crops up, I can now focus on additional features (and I’ll also slow down the pace a bit probably, I’ve done little else these past few days).
I’ve also been contacted by Rising Star Games about DPfix, so maybe we can work something more official out.
(If you find DPfix useful, you can consider donating here)
There is a remaining issue with scenes that render 2 camera perspectives later in the game. I’ll have to play a bit to get to those before I can attempt fixing them (I don’t really want to skip forward by downloading a save, I’m actually enjoying the game)