Saturday, April 14, 2018

UE4 Universal Fix

I made this UE4 Universal Fix because the time spending on fixing games is HUGE, so this save A LOT OF TIME. End results: More time to play and less time spending on fixing a game. And second i made this because there are a lot of games that are not fixed (not catch the attention of a Shaderhacker, or they are very sadly, not fix for them)....this add a new possibility if those games are using this engine :)

This Universal Fixes are made thanks to DarkStarSword, who add ShaderRegex to 3Dmigoto, for me the TOP1 feature. This feature have an incredible potencial and is very very consistent....i use this feature in every game i fixed since the feature was released.

Thanks to bo3b for help me solving some swizzle in asm with some of the variant of the 2D Objects and Decals.

This Univeral Fix should fix any UE4 game about 90% and 98%.If devs change or tweak the vanilla engine, the fix may not work properly in some effects (example: Hellblade). Read the README.txt for more info.

The effects that are "Not fixed" are related to shaders that DON'T have a common pattern, so add a universal fix can cause others effects broke that originaly are working too risky! and can make the game looks worst. In any case this should always be the starting point to fix a game using this engines.

Update: June 26:
- Improve some Regex for shadows and Lights

Fix on the Fly:
- Shadows
- Lights
- Tile Lights
- Reflections
- VS Reflections (by sun or moon)
- Volumetric Lighting
- Light Shafts
- 2D Objects
- 2D Decals
- Halos

Not Fixed:
- HUD elements
- Object Outlines (see the bottom of the for the instructions to fix it)
- Some variant of effects


** Do you like the fix? **
If you like the fix, you can donate to this PAYPAL account:


  1. hi thanks for the fix i try Rad Rodgers but when i press ctrl+T the 3d not working

    1. You need to make sure that the game is running in 3D before you add this fix. This fixes the broken 3D effects, but can't do anything if you are not already running in 3D.

    2. can you tell me how to run this game ( Rad Rodgers ) in 3d pls witch profile to use

    3. The fix already have a profile override.
      Make sure you are using fullscreen to activate bo3b says, make sure the game run in 3D before using the fix.

  2. thank alot man but sbs is not working

    1. Remove the ";" in the ;run = CustomShader3DVision2SBS in the [Present] section of the d3dx.ini. Default TB Mode. F11 to cycle. Use Checkerboard in the NVCP.

  3. Jesus....amazing the things you all do with the fixes!!!!!
    Thanks a LOOOOOT to all you Shaderhackers!!!!!

  4. Hello, can ANYONE here, explain me, what "Helix Mod" is? I searched on Google..., found no answer. And also here, I don't find any answer. That's not realy user friendly. Some people may stumble over that topic, because it have to do with "3D gaming", but don't find any explaining, what for "Helix Mod" is and what it do. It's like somoeone would sell cars without any name or other information. "You want a car? I have a car for You! Brand? The brand is "car". What engine? It has a engine! Tires? Four!". Sanyone get what I mean?? Nobody starts a book in the middle, because then some essential information would be missed. Or is that a secret society here? ;-D Sincerely

    1. Well, if you don't know what HelixMod is... you don't need it. :->

      It's not exactly as secret society, but we are small in numbers, but very enthusiastic about our mods. The short story is that we all use NVidia 3D Vision to play games in stereoscopic 3D. But, the games are complicated and typically have broken effects in 3D, like shadows looking out of place. Our mods using the HelixMod tool for DX9, and 3Dmigoto for DX11 manually fix these problems by editing and replacing the shaders that the games use.

      This particular fix of UE4 universal fix, automates that process from being a manual search for shaders, into one that uses regex expressions, because we know that all UE4 games use the same shaders, so we can do an automatic replacement for known patterns.

      Upshot- we make games playable in stereoscopic 3D, that were never designed with that in mind. Nearly every game looks better and is more fun in stereoscopic 3D. A big part of the appeal of the current VR craze is that people are getting to see actual stereoscopic 3D for the first time.

    2. BTW, if you want to see a bunch of game screenshots, you can look through You can see some examples of before and after fixes.

      You can view these screenshots with normal red/cyan glasses for a rough idea. Normal 3D Vision hardware, or good 3D TVs are much better than anaglyph.

    3. This comment has been removed by the author.

    4. Thank you a lot, for that stupid first sentence! I don't know why people treat other poeple in this way, without any plausible reason! Like if I would be to stupid to understand something! This is just asocial!

    5. But anyway, thank you, that I got already before my first post. So HelixMod is like Tridef or VorpX, or it only correct some issues while playing non-stereoscopic-games in 3D? I want to know that because I also play games in 3D, but with Tridef and Vorpx, over a 3D-Beamer. And I want to know, if HelixMod would also help, when I play Games in 3D over my 3D-Beamer (shutter)and without Nvidia 3D-Vision. Thanks for anyones answers.

    6. I also would like to know, if it only work with anaglyph-3D (because all the pictures behind the link you sended me, were in anaglyph). But I can't imagine that, because the 3DVision-Kit's also work with shutter-technic.

    7. Hmm... So you already knew what HelixMod does, but just came here to complain?

      For 3D Vision on an unsupported projector, you can use 3D TV Play. See this thread for background.

      This is not the spot to discuss our failings. Go to the 3D Vision forums if you have further questions.

  5. Hi, can't make it working with Vanishing of Ethan Carter REDUX. It's bugged in 3D mode with or without this fix. Please help. Thanks a lot.

    1. I took a look using the GoG version, which also provides the free Redux version.

      This universal fix does not work with the Redux version completely. There are some shaders that are clearly being fixed in the log, but graphical effects are broken including shadows and water reflections and decals like blood. I also tried the 3 variants of decals and none work for this game. Shaders must be too different.

      Always possible that the variants are small, and with enough enthusiasm you can possibly compare the universal versions to this game's versions, and work out how to manually tweak the shaders.

      Playing the original version that includes the DX9 fix, I don't actually see any visual difference between the versions. Graphical comparisons on the web also suggest there is no actual visual difference, it's just a new conversion for Xbone. Original game is still spectacular and fix works fine.

    2. Probably they change the constant buffer # related to each effect (i see this in another UE4 game). Since the DX9 version is fixed and is the same has DX11, graphicaly speaking, not make any sense to waste time making it work.

  6. I am having issues getting the software cursor to work in 2 different games.. Conan Exiles and Fractured Space.. Am I supposed to do somethins special to the files besides uncomment the line to enable it??

    1. Probably needs more setup, depending upon what you are trying to do.

      Release notes

      You can set to fixed depth in the shader, manually. Or you can pass in a depth map to get it be like a lasersight. By default I think it follows whatever the original game cursor would do, so if the game cursor is stuck at screen depth, this will too.

  7. Well I am getting the software mouse to show. the problem is it is not is stereo.. I seen in the Mouse.hlsl configuration the section it says where I can add more depth but have no idea how to get it too work or configure it..

    // Adjust stereo depth of pos here using whatever means you feel is
    // suitable for this game, e.g. with a suitable crosshair.hlsl you
    // could automatically adjust it from the depth buffer:
    //float2 mouse_pos = (cursor_window / window_size * 2 - 1);
    //output.pos.x += adjust_from_depth_buffer(mouse_pos.x, mouse_pos.y);

    I would appreciate some help on what I am supposed to do there as I have no idea and it is not clear to me..

    1. I have no idea either, I haven't used it. Here is a guide for using the depth buffer.

      Crosshair Guide

      Depending upon what you need, you might just set it to a fixed depth. Should work like normal depth setting, so maybe just multiply pos.x by 0.75 or something.

  8. OK I figured it out. I needed to add the following to the Mouse.hlsl file and I got it working in Stereo:

    //NEW LINES-----------------------------

    float4 stereo = StereoParams.Load(0);
    float4 iniParams = IniParams.Load(0);
    output.pos.x += stereo.x * 0.4; //pushes mouse cursor further into the screen