Tuesday, May 13, 2014

Assassins Creed 4 Black Flag (DirectX 11) - 3D Vision Fix (UPDATE)

3DMigoto DX11 3D Vision Fix by mike_ar69 and bo3b

Acknowledgements
We are delighted to publish this game fix on the helixmod site, thank you to Helix and Eqzitara for supporting our work on the 3DMigoto DX11 Wrapper!


Fixed
1. Shadows
2. Lights
3. Double Imaging (fog and smoke)
4. Skybox elements
5. HUD
6. Water caustics
**UPDATE
7. Fixed Lights and shadows for all AA options
8. Fix for night stars and moon and clouds

Disabled 
1. Screen stuff like smudges and raindrops
2. Decals like blood etc (for now)

Game Settings
1. Shadows: Shadows must be "very high" or lower, 'soft shadows' have not been fixed (not even looked at yet). For performance reasons turning off soft shadows is a must anyway (the shader is 10000 lines long, compared to most of the others which are all < 600, this explains the processing hog)
2. Ambient Occlusion: SSAO has not been fixed (or looked at) yet. Use "Off", or HBAO+(low).
3. World Detail: Setting to low gives a good FPS boost, but removes gameplay elements, so really needs to be on medium/high
4. Motion Blur: Must be set to OFF


Known Issues
0. Must change profile from AC4 to either no profile, or AC2 (or something else that works).
1. Rain splashes are 2d.
2. Sun Rays: appear 2D, but I can't seem to do anything about this.
3. Shadows from smoke are 2d (minor effect)
4. Text on in-game screens is too deep. This can be adjusted as part of varying the overall HUD depth using new settings in the d3dx.ini file:

[Constants]
x=0.8 <-- Change this one e.g. 0.4 is less depth, -0.2 will pop out the screen etc
y=0.8
z=1.2
w=2.0

5. Bloom from some Lights sometimes shines through objects. This might be an SLI issue, not sure
6. Reflections were fixed in the Animus place, but the fix is only approximate, and there is. some residual 'haloing'. This also affects puddles in Havana. Reflections in 3D are messed up bad actually, and we will continue working on it.
7. For some reason, when the game is started, you may need to change the depth setting a fraction (and then back to what ever it was) for the fix to kick in. Switching profile does not have this problem, but it's a minor annoyance, and has only recently been happening.
8. For Windows 8.1 64 Bit Update 1 you need to delete the dxgi.dll file that gets installed with the fix.


Installation
1.  Make sure you have a platform patch installed.
This is an optional graphics patch from Microsoft. You need this update to avoid having 3Dmigoto crash.
You can look in your View Installed Updates, and search for KB2670838.
If you don't have it, you can get it here:

http://www.microsoft.com/en-us/download/details.aspx?id=36805

2. This fix requires that you either remove the AC4 profile using Nvidia Inspector, or set it to AC2, else the fix for reflections does not work.  If you use the AC2 profile then you will be able to save settings, set SLI bits etc, but this might interfere with playing AC2...

3. Run the game once to make sure it's installed, resolution and refresh are like you want.
Make sure 3D kicks in.

4. If you are running recent drivers, and Compatibility Mode is kicking in, do Ctrl-Alt-F11 to disable it.
We've tested it on older drivers like 320.49 and the most recent Beta 337.50, and think it should work in all cases.
We've tested it with SLI and single GPU.

5. Get the fix as a zip file from here: https://github.com/bo3b/3Dmigoto/releases/download/0.67-beta/3Dmigoto-AC4-0.67_beta.zip

And unzip all of the files and ShaderFixes folder into the Assassin's Creed 4 exe folder.
e.g. "C:\Program Files (x86)\Ubisoft\Ubisoft Game Launcher\games\Assassin's Creed IV Black Flag"
It's a lot of files, 400 or so shader files, and 16 dlls, an uninstall, and the .ini file.
If you need to uninstall, there is an uninstall.bat that will delete the dlls.

6) With all that installed, run AC4.
You should be able to see everything in 3D, and be able to change depth and convergence.
Performance should be good, very close to what you normally get with AC4 in 3D. You should see all of your CPU cores active.
First launch will be slow, like a minute, as it caches shaders.

30 comments:

  1. Thanks again for posting the fix for the game. I updated from the previous version with no issues. I do want to confirm that the nightsky - stars and such, render at the wrong depth. Unfortunately there is no way to load up the game at night. The best thing to do to notice this is to stand in the middle of Havana for a while and check back once it cycles to night.

    ReplyDelete
    Replies
    1. Thanks for the update. I knew about the night sky cloud deck, but thought the stars and moon should be OK. The nights are spectacular, and far too short in this game. I'll take another look because I'm curious now.

      Delete
    2. Hi Arioch. We will have another look at this for sure. We did update a shader specific for stars that seemed to look OK in our testing. There are two main issues with the skybox:
      (a) Most elements of the skybox in this game are on different shader, and require a different correction, so lining them all up for any convergence value is quite tricky, so our approach is to remove convergence dependency if we can and set a common (empirical) depth after that.
      (b) some elements are on the same shader but require a different correction, and it is this one that is hard to get right since the 3DMigoto wrapper does not allow the same separation by texture that the helixmod dll does.

      Anyway, we will keep tweaking :-)

      Delete
    3. I wish it was easier to get to the night but if I recall the moon looked ok but the stars were at the wrong depth. There were clouds in the sky at the times I got to the night but I can check again. Regardless, the game looks great so far in 3D.

      Delete
    4. I put a screenshot of the stars at night on the AC4 thread in the 3D Vision forum.

      Delete
  2. Was this not fixed by Nvidia in one of the recent drivers? Or did that fix suck?

    ReplyDelete
    Replies
    1. The NVidia fix is usable depending upon your view of fake-3D/depth buffer 3D. They are calling it Compatibility Mode, and it doesn't do true 3D, it does the type of 3D seen in Crysis2 and 3. You get a halo around your character, and lower depth and typically not much convergence. Some people cannot stand it, some people are willing to use it if nothing else is available. I think that nearly everyone agrees that if you have a true 3D fix like this, that there is no value in the Compatibility Mode version.

      Delete
    2. I think the depth buffer solution for AC4 is quite bad, and I say this as someone who defends the depth buffer solution for AC3 which is not bad at all, just very low depth. The AC4 depth buffer solution goes haywire if you increase convergence to try and get any sense of separation between objects (because by default its a flat image about 10" behind the screen) - things like objects stuttering in and out of depth (which is unbearable), the "wall" for high convergence being hit almost immediately leading to the completely 'flat' view about 0.5" in front of the screen. It's all just a bit terrible.
      Our fix for AC4 posted above requires that you remove the default AC4 profile - it seems (from our experience with this and a few other games) that Nvidia are setting certain things up in the games profile to support the depth buffer (like how different things are stereoized or otherwise) that screws up 'normal' stereo rendering as well - so it's doubly bad.

      Delete
  3. Hi
    maybe, try the "AC Révélation profile" because it does not BUG (star, sky)
    Good Game

    ReplyDelete
  4. Sorry for bad english, I just want to say thank you, the game looks fantastic in REAL 3D. You're the best !!! merci, merci, merci.

    ReplyDelete
  5. Agreed

    Another thanks to Helix and Eqzitara for hosting this.

    What an amazing community.

    ReplyDelete
  6. Collaboration between the premier forces working on DX11 fixes, to deliver us from tedious 2D or broken 3D? I am a happy happy man!

    Thank you so much to everyone working on making 3D gaming better. Your efforts are tremendously appreciated!

    ReplyDelete
  7. Whoa! This is all 'you got your peanut butter on my chocolate'!? :D
    http://www.youtube.com/watch?v=DJLDF6qZUX0
    ... am I going to have to make a new banner(logo) now? :)

    ReplyDelete
  8. You guys ROCK! I was so sad to play in boring 2D since the fake 3D is unbearable. Now this looks fantastic!!! Much respect for keeping 3D alive.

    ReplyDelete
  9. The updated fixes, including the stars at night, looks great. Thanks again for keeping true 3D gaming alive!

    ReplyDelete
  10. Awesome job! Many thanks, works like a joy, a huge accomplishment!

    ReplyDelete
  11. This comment has been removed by the author.

    ReplyDelete
  12. This is amazing! Absolutely destroys Nvidia's pathetic attempt at a fix :) Related note, Txaa looks great in 3d.

    ReplyDelete
  13. Very nice..!
    Everything looks brilliant !

    ReplyDelete
  14. Hi,
    first ,thanks for your amazing job.

    For me this fix crash on win 8.1 update 1 and drivers 340.43 (doesnt tested early drivers) with no profil or ac2, ac4 profil.

    ReplyDelete
    Replies
    1. "8. For Windows 8.1 64 Bit Update 1 you need to delete the dxgi.dll file that gets installed with the fix."

      Delete
  15. The Nvidia patch fixed shadows while still using compatibility mode with halo, so I installed your fix and now the shadows are 2D again. I followed the installation instructions but for some reasons it's not working (running Win 8.1 Nvidia SLI here)

    ReplyDelete
    Replies
    1. I am not sure I understand?
      1. With CM mode on but no patch installed, pressing Ctrl-Alt-F11 will toggle CM off and on. When on, it fixes everything, shadows, halos etc. The problem that most don't like is that the depth is really low.
      2. When you install the 3DMigoto patch, you need to make sure CM is OFF, by pressing Ctrl-Alt-F11. When you do that the Migoto fix will kick in. If, when the Migoto patch is installed, you turn on CM, the shadows will be wrong because both the nvidia driver AND the Migoto patch are trying to fix them - you must have CM mode OFF if you are using the Migoto patch. If you want to use CM, you need to uninstall the Migoto patch.

      Noting that you are running Win 8.1, did you follow step 8 under ' known issues': "8. For Windows 8.1 64 Bit Update 1 you need to delete the dxgi.dll file that gets installed with the fix." ?

      Delete
    2. Wow, in hindsight my post was really terrible. Even I am having problems understanding myself, I'm sorry about that.
      Right now I am running a fresh installation of AC BF with the NVidia profile deleted (using NVidia inspector), the dxgi deleted and the settings recommended in the instruction. I can correctly adjust depth and convergence and I clearly have a lot more depth than I used to, so I guess migoto is working as intended in that regard.
      Pressing ctr alt f11 doesn't do anything right now though. The shadows, for example the protagonists shadow, are 2D and pop out just like they used to way back when the game came out.

      Do I really have to start the game once and disable CM mode before I apply the patch by the way?

      Delete
    3. No need to do ctrl-alt-f11 after you've set the profile to AC2. Not sure null profile (deleted) works, I don't think we tried that. The ctrl-alt-f11 and CM only work on certain profiles, which is why we move to AC2 so there is no conflict.

      For shadows are you running them at Very High (or lower)? Soft shadows don't work and would give you this effect because there is no fix for them.

      Delete
    4. Shadows are at Very High. After choosing the AC II profile the shadows are working as intended. I have problems with convergence in cutscenes and indoors but that's really just a minor issue, apart from that it looks pretty good. Cranking up the depth will sometimes lead to strange shadows showing up too far away from the object to which they belong but I guess that's something I'm just going to have to live with. At 50% depth it's really not an issue. Thanks for the replies and the great work!

      Delete
    5. Shadows should be perfect so something is still not right. Can you list all your settings and perhaps provide a 100% depth screenshot? AO causes issues as well. Thanks.

      Delete
  16. Hello,

    J'ai un PC avec Windows 8.1, un ecran Asus VG278HR 3D Nivision 2 et une carte GTX 770DX 11.1 avec les derniers drivers Nvidia 340.52.
    Pas mal de jeux donnent un excellent rendu 3D : Batman, Splinter Cell, Tomb Raider, Far Cry 3 Max Payne 3, Metro, ....
    Par contre, pour Assassin Creed IV, j'avais espoir en lisant votre mise à jour.
    J'ai bien installé le "3DMigoto DX11 3D Vision Fix " Hélix Mod Fix en supprimant le fichier dxgi.dll .
    J'ai configuré les paramètres comme recommandé (shadows, motion blur, ...), mais j'ai encore des soucis : tremblement de l'image, lignes coupant l'image, surtout lors des videos et sur le bateau, ....Bref, le résultat n'est pas à la hauteur.
    J'ai bcp lu sur les forums et on conseille de lancer AC4 avec un profil AC2 via Nvidia Inspector, mais comment faire, créer un nouveau profil ?
    Pour info, j'ai la licence AC4 avec Uplay.
    Pourriez-vous m'aider, je suis un peu désespéré .... ? Que faire et quels paramètres régler dans les options du jeu (avec précision).
    Grand merci,

    D.

    ReplyDelete