Thursday, June 4, 2015

Rome 2 Total War (DX9) - 3D Vision Fix : UPDATE 4-June-2015

3D Vision Fix by mike_ar69


Fixed
- Shadows
- Lights
- Fog
- Smoke
- Fire
- Water
- Floaty 2D ground textures
- Put HUD at depth so markers align better with objects


**UPDATE 04-11-2016 by Muizer (Thank you!)
I've done the best I could to repair mike's fix. Not perfect, but better than nothing. Link to .rar below contains dx9settings.ini and the shaderoverride folder. If you're feeling brave, place in Rome II folder and extract. Otherwise, wait for it to be checked by the powers that be. 

Get the updated files here: 
Muizer Update

Notes: I know there's still an issue with wet surface reflections on battlemaps. Don't know how to fix that. I also returned the HUD to screen depth because with a hud at depth portraits go out of focus even at rather low convergence settings. I've looked at the portraits themselves, but there's a nasty clipping issue I have no idea how to fix. 

Place the archive in Steam\steamapps\common\Total War Rome II and extract in place

Navigate to C:\Users\[user name]\AppData\Roaming\The Creative Assembly\Rome2\scripts

Open preferences.script.txt and set "gfx_shadermodel" and "gfx_device_type" to 0


Greets,
Muizer




**UPDATE 2-8-2014
I have done a first pass of the game after the beta 9 patch changed lots of shaders.  New version v2.  I do not know if I have caught everything, quite a lot got messed up with the patch, but it is certainly more than playable again.

Issues
- This is a fix for the DirectX9 version of the game only.
- The mouse cursor is still at screen depth.  However, everything in game gets highlighted so there is no issue selecting stuff.
- There are some remaining anomalies - some puffs of smoke, the odd light here and there.  I will fix these as I come to them (assuming I can), but I don't believe there is anything major.

Images


Summary
Game looks like crap out the box, in both DX11 and DX9, pretty much everything is wrong to some degree.
Once patched up though it looks as good as Napolean Total War.


Installation
Steps:
1. Extract this zip file to the games exe directory.  In my case this is D:\Steam\steamapps\common\Total War Rome II
2. Run the game.

93 comments:

  1. Gonna play this as soon as I wipe the tears of joy from my eyes. :'o) It's beautiful.
    Thanks mate.

    ReplyDelete
  2. fantastic work mike!!

    i am testing, some minor bugs but the game now it is seen spectacular.

    i had some hangs whem i change the graphics options or between different historical battles i.e. carthago if i was in 3d before to enter.

    but if i am in 2d and when in battle phase i put 3d, it is ok.

    i am dreaming yet, .. thanks

    ReplyDelete
    Replies
    1. Thanks for letting me know. I had some issues with the game in 3d regardless of the fix, and in particular alt-tabbing etc. I read on the web that the game has issues reloading textures and stuff (even in 2d), so it might be related to that. Running the game in window mode btw is much less problematic.

      Delete
  3. mike_ar69
    Tested it and it looks fab. I can't believe how much this has improved the game. I havent played this since September! I wonder if those patches have made a difference...

    FYI - The bloomlike armour glint effect is in 2D.

    All the best!

    ReplyDelete
    Replies
    1. Hi Andy - thanks for the feedback. Keep a tab of the little issues and report back. I have a few on my list already, all little things, but will look even better when fixed.

      Delete
  4. Thanks !!
    Just bought Sniper Elite V2 and if the shadows could be sorted out .... it could be a great 3d game!! keep up with your great work

    ReplyDelete
    Replies
    1. Nope, that's a DX11 game, and there is no dx11 wrapper yet :-(

      Delete
    2. I beleive that SE:V2 has actually been rated as excellent in the latest drivers. I haven't checked though.

      Delete
  5. How can you start Rome 2 as DX9 application?

    ReplyDelete
    Replies
    1. 1. Go to this directory:
      C:\Users\\AppData\Roaming\The Creative Assembly\Rome2\scripts
      2. Open this file:
      preferences.script.txt
      3. Find this key (on or near line 20):
      gfx_enable_directx11
      4. Set the value after it to be "false":
      gfx_enable_directx11 false
      5. Save the file, and exit.

      Delete
    2. Hi, thanks, that works to run the game now with DX9. But now it is not 3d at all anymore. Other games still are 3d (3d is enabled in the nvidia control panel) but rome 2 is now 2d. Why is this?

      Delete
    3. Silly question but you never know - have you tried pressing Ctrl + T? Somethings that kicks 3D on for me.

      Delete
    4. Looking at other comments here, Rome 2 seems to have some known issues, regardless of 3D, so it might be related. I don't know what else to suggest, other than what andysonofbob suggested, then perhaps Alt-Tab in and out of game, or change resolution in game as that usually re-initializes the stereo. Also try windowed mode. But honestly, I am just guessing...

      Delete
    5. Hi, thanks for the quick replies.
      Ctrl + T did only toggle some GUI displays on and off...
      Alt + Tab did not change anything
      Window mode gave me a load bar with no progress, which changed to a completely black screen after a while...
      Resolution change gave me a load bar with no progress and hanging forever...
      So unfortunately no success. Any other ideas? Do I have to tell nvidia that the Rome 2 exe is a 3d application? or how does nvidia know whats 3d and whats not?

      Delete
    6. Does this happen without the fix installed or just with it installed?

      Delete
    7. good point, I will test this

      Delete
  6. hey, message for the Devs of Helix mod... can we get a mod for Dues Ex human revolution? as it is there is no ghosting or irregular depth/convergence problems in the game apart from there being absolutely no difference between the game in 3d or without glasses.. they look identical

    ReplyDelete
  7. Too bad, only on this game i get a freezes and my computer hangs as soon i activate 3d vision (CTRL-T one minute after that), tried reinstalling drivers, played another game with no issues on 3d (arkham origins) , reinstalled full game and tried without dll. Steam integrity says it's ok. Anyone experiencing same issue?

    ReplyDelete
  8. hello dorkirt, the game it is not patched totally from creative assemnbly yet., for i have readed, now it is vers 1.8, i have had some hang but try tu put in 3d after you enter in battle phase and changed to 2d if not.. what graphics cards do you have

    ReplyDelete
  9. Hello there ! And thanks both for your help. I have a pair of 460 SLI. Tried the other day that "late activate" you suggest and it didn't work. Sadly i had not time to test windowed mode and campaign map/battle, only tried with custom battles. will keep you informed if it works. Thanks !

    ReplyDelete
  10. works fine with the dx9 script change. Does that mean that company of heroes 2 floating ground can be fixed as well?

    ReplyDelete
    Replies
    1. Different game engine I think. Also, I think it might be only DX11, so no way to fix it with the current helixmod.

      Delete
  11. Should this address the strategic map issues also ? Because it doesn't seem to work on my Steam version :(

    ReplyDelete
    Replies
    1. Hi - well, you will have to tell me what the issues are... ;-) Steam btw has nothing to do with it, I am on Steam edition. As far as I can tell, there are no major issues on the strategic map, though I am aware of a few minor issues. Please let me know what the issues are, what maps specifically, and preferably some screenshots showing the problems. Thanks.

      Delete
    2. Personally I hit Ctr-T when on the strategic map. For me the 3d doesnt matter for the strategy part just the tactical part. But thats just me.

      Delete
  12. Well, it worked, but the latest patch (9 beta) messes things up again :(

    ReplyDelete
    Replies
    1. Thanks for the heads up - I've not been able to look at this for ages. It sounds like the shader CRCs have probably changed. The good news is that I wrote scripts to autofix this game, so it should be relatively quick to redo. Won't be until the weekend though (Feb 1st 2014) at the earliest.

      Delete
    2. Thanks Mike. I Really appreciate the effort! The fix still helps, but the shadows in battles and the rivers in campaign are wrong again. Survivable, but I was happy to see them fixed :)

      Delete
    3. Hi - I did just check quickly and I don't have 9 beta installed, so I guess I'll need to wait until it gets released properly. I am guessing it might be the inclusion of soft shadows? They added this to Shogun 2 I believe. If you can check that in the Options, and if its there, turn it off and see what happens. If that is what is then its a really easy fix.

      Delete
    4. There's no such option. Just normal shadows, which I have turned off right now.

      Delete
    5. yeah I have patch9 and the game looks awfulll again :( this patch is actually very promising so I hope it wouldnt require muich work to fix it again.. assuming that its the patch that broke things again.

      Delete
    6. How do I get hold of the patch? I will look at this at the weekend.

      Delete
    7. How do I get hold of the patch? I will look at this at the weekend.

      Delete
    8. In steam, select "library". Rome II should be in the list of installed games. Right-click on Total War: Rome II and select "Properties".In the window that opens open the "updates" tab. Under "Automatic updates" select "Always keep this game up to date" and close the window. The update should start soon. Progress will be shown in the library's "installed games" list.

      Delete
  13. I fixed the shadows and lights and a couple of other things, but quite a few shaders changed CRC in this patch, and I keep seeing more little bits that need re-fixing. The good news is that it is mostly done already and the rest is minor (but noticeable).

    ReplyDelete
  14. Thanks Mike, you're a star!

    ReplyDelete
  15. Any updates on the remaining fixes? Thanks

    ReplyDelete
    Replies
    1. Nope. Is the game not playable for you?

      Delete
  16. It's almost playable. I'm having an issue with background fog on battle maps, some bloom/hdr issues, plus a couple other small problems.

    ReplyDelete
    Replies
    1. Can you provide some screenshots, especially the fog? What is the problem, is it double imaging or something? I think you can turn bloom/hdr off, they are tough to fix anyway..

      Delete
    2. I had another look at fog and I really can't see any issue. I had a less serious look at bloom and HDR, but did not see much wrong there either apart from the sun 'glare' being at screen depth (though the sun itself is at correct depth). So unless you give me a screenshot, there's nothing I can do.

      Delete
  17. Hi did you change you profile in 3D Vision settings? Or It's the default settings? Thank you in advance.

    ReplyDelete
    Replies
    1. No profile change, games' default profile is used.

      Delete
    2. Thank you for your quike answer! In battle, you have units cards and mouse pointer in 3D? In my game, they are in and it's ugly! I prefer this things in 2D

      Delete
    3. 1. For each of the following files in the ShaderOverride/VertexShaders folder:
      - 56D10E43, 7658F69F, A40C8901, C6B5D02E, EFEC1BFF
      2. find the entry at the top that looks like this:

      def c220, 0.5, 0, 0.0625, 0

      3. Change the "0.5" value to "0" in all of them for no 3d hud, or some number smaller than 0.5 for less hud depth


      Delete
    4. ok I will try this this evening! Thank you Mister

      Delete
  18. Sorry but in this folder (56D10E43) for example, I have this : //HUD
    //THere is no VPM....
    // Generated by Microsoft (R) HLSL Shader Compiler 9.27.952.3022
    //
    // Parameters:
    //
    // float g_gamma_output;
    // float4 g_sprite_transform;
    //
    //
    // Registers:
    //
    // Name Reg Size
    // ------------------ ----- ----
    // g_gamma_output c0 1
    // g_sprite_transform c1 1
    //

    vs_3_0
    def c2, 1, 0, 0, 0
    def c220, 0.5, 0, 0.0625, 0
    dcl_2d s1
    dcl_position v0
    dcl_color v1
    dcl_texcoord v2
    dcl_texcoord2 v3
    dcl_texcoord3 v4
    dcl_position o0
    dcl_color o1
    dcl_texcoord o2.xy
    dcl_texcoord1 o3
    dcl_texcoord2 o4
    dcl_texcoord3 o5.xyz
    dcl_texcoord7 o6.x
    mov_sat r0.xyz, v1
    log r1.x, r0.x
    log r1.y, r0.y
    log r1.z, r0.z
    mul r0.xyz, r1, c0.x
    exp o1.x, r0.x
    exp o1.y, r0.y
    exp o1.z, r0.z
    mad o4, v4, c1.xyxy, c1.zwzw
    mad r0.xy, v0, c1, c1.zwzw
    mad r0.zw, v0.z, c2.xyxy, c2.xyyx

    mov r10, r0
    texldl r24, c220.z, s1
    mul r24.x, r24.x, c220.x
    add r10.x, r10.x, r24.x

    mov o0, r0 //r0
    mov o5.xyz, r0
    mov o1.w, v1.w
    mov o2.xy, v2
    mov o3, v3
    mov o6.x, v0.w

    // approximately 17 instruction slots used

    And this folder "EFEC1BFF" : //hud
    // Generated by Microsoft (R) HLSL Shader Compiler 9.27.952.3022
    //
    // Parameters:
    //
    // float g_gamma_output;
    // float4 g_sprite_transform;
    //
    //
    // Registers:
    //
    // Name Reg Size
    // ------------------ ----- ----
    // g_gamma_output c0 1
    // g_sprite_transform c1 1
    //

    vs_3_0
    def c2, 2, 1, 3, 0
    def c220, 0.5, 0, 0.0625, 0
    dcl_2d s1
    dcl_position v0
    dcl_color v1
    dcl_texcoord v2
    dcl_texcoord1 v3
    dcl_texcoord2 v4
    dcl_texcoord3 v5
    dcl_texcoord6 v6
    dcl_position o0
    dcl_color o1
    dcl_texcoord o2.xy
    dcl_texcoord1 o3.xy
    dcl_texcoord2 o4
    dcl_texcoord3 o5
    dcl_texcoord4 o6
    dcl_texcoord5 o7.xy
    dcl_texcoord6 o8.x
    mov_sat r0.xyz, v1
    log r1.x, r0.x
    log r1.y, r0.y
    log r1.z, r0.z
    mul r0.xyz, r1, c0.x
    exp o1.x, r0.x
    exp o1.y, r0.y
    exp o1.z, r0.z
    mad o6, v5, c1.xyxy, c1.zwzw
    frc r0.x, v3.y
    add r0.x, -r0.x, v3.y
    sge r1.y, r0.x, c2.x
    slt r0.xyz, r0.x, c2.yxzw
    lrp r1.x, r0.y, c2.y, r0.z
    mad o3.xy, r0.x, -r1, r1
    mad r10.zw, v0.z, c2.xyyw, c2.xywy
    mad r0.xy, v0, c1, c1.zwzw
    mov r10.xy, r0


    texldl r24, c220.z, s1
    mul r24.x, r24.x, c220.x
    add r0.x, r0.x, r0.x
    mov o0, r0
    mov o7.xy, r0
    mov o1.w, v1.w
    mov o2.xy, v2
    mov o4, v6
    mov o5, v4
    mov o8.x, v0.w

    // approximately 24 instruction slots used

    ReplyDelete
  19. Sorry apologize I didn't see the folder like this! It's ok now! thank you very much!!!

    ReplyDelete
  20. Sorry but there is a last things! you knows the icons in reds that represent the towers, the gats and the point target. Do you know how to fix this in 2D?

    ReplyDelete
  21. Sorry but there is a last things! you knows the icons in reds that represent the towers, the gats and the point target. Do you know how to fix this in 2D?

    ReplyDelete
  22. Are there any changes for patch 10?
    I realised as well, that the icons in reds that represent the towers, the gates and the target points are at screen depth.

    ReplyDelete
    Replies
    1. I did not realize there was a new patch (I dont actually play the game tbh). ill have a look when i get the chance.

      Delete
    2. Hi mike, you have done a great mod in fixing these shaders. So nice to be able to play it in 3d!
      It looks like the last patch did mess up a few things (not too many though) mostly in the user interface.
      -Shadow for Cool down in items is at screen depth
      -windows showing faces of people (e.g. in the diplomacy screen) have way too much depth
      -red icons on the battle map that represent the towers, the gates and the target points
      -shadows on the tactical map (when you hit Tabulator in the battle map or world map)

      Great work

      Delete
    3. Hi - thanks for the list of issues, that's really useful. I'll try and get to this as soon as I can. It's annoying that the shaders keep changing each patch, this is not usually the case for most games, it's all game engine stuff which is way before the rendering pipeline. But I guess if they are making improvements we can't really complain :-) I do have a few other fixes on the go right now, close to completion, so I'll do my best in the next couple of weeks. Ping this blog again if you don't here anything, I'll get the alert to remind me :-)

      Delete
  23. Hi Mike
    Great to hear this. I just found out about another patch comming very soon. Looks like they really want to fix that game. It had just too many problems in the beginning, but its getting there hopefully. So maybe its best to wait until the next patch is out, I will keep you informed.
    Thanks
    Roman

    ReplyDelete
  24. Oh, the patch is here already. We have seasons now. Looks very nice in 3d with snow in winter and leaves in autumn. Still the same things broken in 3d, so this patch did not change anything related with 3d.
    -Shadow for Cool down in items is at screen depth
    -windows showing faces of people (e.g. in the diplomacy screen) have way too much depth
    -red icons on the battle map that represent the towers, the gates and the target points are at screen depth
    -shadows on the tactical map (when you hit Tabulator in the battle map or world map)

    ReplyDelete
    Replies
    1. Thanks - I did see an update in my Steam application actually. Glad to hear there were no extra issues ;-) I'll definitely have a look in the next week or so.

      Delete
    2. Hi Mike
      Did you find time to look into this? Rome 2 looks amazing now, with your mod. Wasn't playable at all in 3d with the original game!
      There really are only the few issues left.

      Delete
    3. wooooow, I just read the post about AC3 with DX11 going real 3d with migoto. Unbelievable. Actually don't worry too much about Rome 2 if you're doing stuff like that!!! ;-)
      I really apreciate your effort.

      Delete
    4. Hi Roman - thanks ;-) I have been pre-occupied it is true, but I do plan on getting to this. I don't play the game much so I'll need to faff around a bit to find the issues, and then get back in the "zone" for fixing this game.

      Delete
  25. Hi Mike
    I think the new patch has broken your fix again. :(
    It doesn't work on my system anyway.

    Do you think you would be able to update your fix, again?

    How much of a faff is it to update? Is it a simple 'go into a file and change a known setting' shindid, which could be explained easily so we could update ourselves?

    Thanks?

    ReplyDelete
    Replies
    1. Hi Andy - I just had a quick look at the game (I never play it lol). It does not look nearly as broken as when patch 9 came out, some lights, the floaty ground stuff, a few other 2D things.

      No this is not something I can give anyone pointers to easily, its all shader fixes, BUT you can look in the existing fixes for key words (I usually, though not as much as I should nowadays, put a comment at the very top). For example search in the Pixel Shaders for "floaty" and you will get several shaders that fix ground textures. Look for a shader in the patch 12 shaders that is the same, edit it the same way, and see if it works.

      I'll try and get to it at some point. We *really* need more people to learn how to do this stuff, I just can't keep up with everything :-(

      Delete
    2. Have you thought about producing a video tutorial demonstrating how to fix shaders? Maybe with a hints and tips section?

      Delete
  26. Not a video no, but I am planning on writing a guide, and using specific games as examples. Not sure when I can get that done though.

    ReplyDelete
  27. If your guide is easy enough to follow, even for the likes of me, I will create a YouTube video. (If creating a video of this is possible!) I reckon a video showing the process might be a more approachable medium for some.

    ReplyDelete
  28. Anyone know if this is working ok with patch 12?

    ReplyDelete
  29. its working good enough to be playable, but there are a few issues left which were introduced with the latest patches

    ReplyDelete
  30. Hey just to give a heads up, patch 14 was a huge one in terms of fixing a ton of the gameplay problems with ai in sieges and combat ai in general, so lots of people coming back to the game. It's a good time to update the helix mod for this one if your up for it.

    ReplyDelete
    Replies
    1. Yes I'm afraid it completely broke the existing fix :( So frustrating.........

      Delete
  31. I have crash to desktop with the fix and patch 14. It is pity.

    ReplyDelete
  32. Creative Assembly keeps fixing this game. There was just a huge patch. Everyone owning the game gets all the DLCs for free and they have fixed most of their issues. Looks like they are trying to say sorry for the mess it was in the begining.
    It would be so nice to have a 3d vision fix for the current version ;-)

    ReplyDelete
  33. Hi

    Do you think this fix will be updated again?
    Thanks

    ReplyDelete
  34. It looks like the game has reached its final Patch. Most of the bugs fixed and content added. I guess you are very busy, Mike?

    ReplyDelete
  35. Thanks for the great patch, game in 3d looks amazing.

    ReplyDelete
  36. ??? is it working with the newest patch???

    ReplyDelete
    Replies
    1. Not from what I've heard. Latest patch broke the fix, and Mike said he wanted to look at it again, but no ETA.

      If someone wanted to take the current fix, they could very likely figure out where to apply them in the latest update. Shaders moved, different CRCs, but are unlikely to be dramatically different.

      Delete
    2. From comparing the shaders of the fix to the ones in-game it did not look like renaming files or copy-pasting sections could fix this. I think Mike said it was material for your upcoming advanced shader-hacking tutorials ;) Mzr

      Delete
    3. That would be nice.
      Would it technically also be possible to do a fix of this game in DX11 with 3dmigoto? Or is 3d migoto not working with every engine?

      Delete
    4. Should be possible to fix the DX11 version with 3Dmigoto. Generally 3Dmigoto has been working on all games we've tried recently. Would be possible to figure out the same DX9 fixes in DX11, but it would likely be easier to find the new changes to the game for the DX9 fix.

      Delete
    5. I've done the best I could to repair mike's fix. Not perfect, but better than nothing. Link to .rar below contains dx9settings.ini and the shaderoverride folder. If you're feeling brave, place in Rome II folder and extract. Otherwise, wait for it to be checked by the powers that be.

      http://s000.tinyupload.com/index.php?file_id=08252878643366710944

      Notes: I know there's still an issue with wet surface reflections on battlemaps. Don't know how to fix that. I also returned the HUD to screen depth because with a hud at depth portraits go out of focus even at rather low convergence settings. I've looked at the portraits themselves, but there's a nasty clipping issue I have no idea how to fix.

      Greets,

      Muizer


      Delete
    6. Wow, thank you. I like that game in 3d

      Delete
  37. This fix is not working for me. I don't know if the game had an update that broke it again, but I doubt it.

    I have verified that I'm running in DX9, and I have installed the fix multiple times to the correct directory.
    Mike's first fix seemed to include an additional file or two, and so I even extracted that one to the directory first, and then extracted Muzier's fix over the top of it. (Not at first, but that was one of my troubleshooting steps).
    I have tried it with all add-on mods to the game turned off.

    Not sure what else to try. Any help would be much appreciated!

    ReplyDelete
  38. This fix contains the game specific files. In addition to it you'll need d3d9.dll (which you can find in the original fix). Unless there's been another update it should still work?

    ReplyDelete
    Replies
    1. Yes, I used the d3d9.dll from the original fix. It doesn't work. But just to verify, the .dll goes in the game directory and not some Nvidia folder like the old way, right?

      Delete
    2. that's right

      Delete
    3. Looks like you'r right. Mine doesn't work anymore either. Not going to fix it again though.

      Delete
  39. Too bad. But honestly, It's still enjoyable in fake 3D, IMHO. The only drawback is the halo-ing particularly around spears and such, and the sprites looks flat if you zoom up on them to the maximum extent, but that doesn't happen very often.

    ReplyDelete
  40. Hello Mr Helix (is it Mike and crew?),

    First of all thank you for all your successful efforts which I have started appreciating in many, many, games ever since I've bought a 3d screen. You rock.

    Now, I wanted to play total war Rome 2 with your fix but it doesn't seem to work for me.

    I am using windows 7 which runs directx11, so I've:
    1. downloaded and installed DXSETUP.
    2. changed this line : gfx_enable_directx11 true; # gfx_enable_directx11 , Enable DirectX 11 rendering #
    into this line: gfx_enable_directx9 true; # gfx_enable_directx9 , Enable DirectX 9 rendering #
    3. Installed your mod (obviously)
    4. changed form the game's graphic options: shadermodel from 5 to 3

    The game starts but all the shadows, rivers and other elements are still misplaced.
    Have I missed something?

    Whether or not you are going to reply to my message I thank you form my heart for all you have already done.

    ReplyDelete
    Replies
    1. Not sure, as I don't follow this game closely, but it sounds like the game had a patch that broke the original fix.

      Did you try Muizers' fix? Should still be DX9 fix, but different shaders in the shaderoverride folder.

      That technique for setting dx9 is not familiar to me, so you might check to see if that is the right way to make that work. Usually it's something like adding a -dx9 flag to the Steam launch.

      Delete
  41. Did a quick repair of the old fix (again).

    Download the archive from http://s000.tinyupload.com/?file_id=03731842502376039761

    Place the archive in Steam\steamapps\common\Total War Rome II and extract in place

    Navigate to C:\Users\[user name]\AppData\Roaming\The Creative Assembly\Rome2\scripts

    Open preferences.script.txt and set "gfx_shadermodel" and "gfx_device_type" to 0

    GL.

    Mzr

    ReplyDelete