Indigomod - DX11 wrapper by Chiri and elbarterino - Bioshock Infinite
  16 / 28    
Same here, dont give up! And less than $1k to go, wow, ill donate again as soon as i get my paycheck, we're so close now
Same here, dont give up!

And less than $1k to go, wow, ill donate again as soon as i get my paycheck, we're so close now

All hail 3d modders DHR, MasterOtaku, Losti, Necropants, Helifax, bo3b, mike_ar69, Flugan, DarkStarSword, 4everAwake, 3d4dd and so many more helping to keep the 3d dream alive, find their 3d fixes at http://helixmod.blogspot.com/ Also check my site for spanish VR and mobile gaming news: www.gamermovil.com

Posted 08/03/2013 05:39 AM   
[quote="djb"]+$216, over $4K now. :-)[/quote] A deep bow is in place, sir! (I hate COD, but there is 1 sentence that comes to mind when going MP: Let's Do This!) ps: I prefer a 3D universe where there are 2 gods instead of 1.
djb said:+$216, over $4K now. :-)


A deep bow is in place, sir!

(I hate COD, but there is 1 sentence that comes to mind when going MP: Let's Do This!)

ps: I prefer a 3D universe where there are 2 gods instead of 1.

Posted 08/03/2013 06:14 AM   
Just donated. Please continue Your campaign!!!
Just donated. Please continue Your campaign!!!

My original display name is 3d4dd - for some reason Nvidia changed it..?!

Posted 08/03/2013 07:25 AM   
I'll put up this statement on the Indigomod page soon together with a new video of the current state. Many thanks to 3dsolutiongaming.com and all the donators who are still supporting this wrapper. As you all might know, Helix appeared out of nowhere with a Bioshock Infinite wrapper for free. The logic conclusion would be to stop the campaign and leave it all to Helix, who seems to have the time, money and resources to pull something like this off. But we received a lot of positive feedback from the community and many users told us to not cancel the campaign in favor of having another wrapper available using a different approach for game fixes. I want to point out the differences to the Helix wrapper here: All DirectX DLLs are wrapped, which includes [list] [.]dxgi.dll for video mode manipulations like screen resolution, refresh rate settings and primary render buffers.[/.] [.]nvapi.dll for NVidia specific stereo settings: overriding game profile values, setting auto stereo modes, custom convergence and separation values for render objects or on input device events.[/.] [.]D3DCompiler_xx.dll for shader manipulations in HLSL for games which provide shader source code to the system.[/.] [.]d3d11.dll for marking pixel shaders, vertex shaders, index buffers and render buffers. Also all shader manipulations are implemented here.[/.] [/list] While the Helix wrapper operates on the shader assembly code, the Indigomod wrapper disassembles shader code into HLSL, providing a C-like language for understanding and patching shader code, which is much easier to read and to make patches by hand or fully automated. Modern games are using thousands of shaders, so just patching several shaders by hand is not going to fix everything. Therefore the wrapper provides several algorithms which patches shaders on the fly and cashes them for faster reload next time: [list] [.]Vertex shader output variables (SV_Position) NVidia only patches the SV_Position value for stereo projection but most games use additional variables for effect calculations in pixel shaders. The wrapper detects those output variables and also applies stereo projection for those values. fix_sv_position=1[/.] [.]Inverse position transformation correction By marking pixel shaders and browsing through the source code, you see back transformations from projected screen coordinates to other spaces. This is used for deferred rendering effects like lighting, shadows etc. The wrapper corrects those transformations automatically if you provide the matrix name from the source code fix_InvTransform=ScreenToLight,InverseTranslatedViewProjectionMatrix[/.] [.]Projected position correction Some calculations on G-buffers are performed already in screen space - there is no back transformation. A transformation has to be provided by the vertex shader like this: fix_BackProjectionTransform=ScreenToWorld._m00,ScreenToWorld._m02,ScreenToWorld._m01 Pixel shaders are then using this transformation for positional corrections: fix_ObjectPosition2=SpotPositionAndInverseRadius fix_ObjectPosition2Multiplier=1,0.7626,0[/.] [/list] It's still required to do shader fixes by hand for little things like HUD, Lens flares or other cosmetic effects. Currently, the Bioshock Infinite specific part of the wrapper consists of 11 custom patched shaders dealing with HUD position, lens flares, sun glare etc. and the following settings in the .ini file: [code] ; ; Settings for GPU program manipulations. ; [Rendering] storage_directory=ShaderOverride ; thread save data structure access. required on multithreaded rendering. use_criticalsection=1 ; cache all compiled .txt shaders. this removes loading stalls. cache_shaders=1 ; preload all patched shaders. there's a bug in NVidia auto stereoization if stero shaders ; are being loaded during the game on some HW/SW combinations, which turns off auto patching ; for those stereo shaders (results in partial mono rendering). this is a workaround for this case. preload_shaders=1 ; autofix shader option: stereoize all shader parameters with position semantic. fix_sv_position=1 ; evaluate depth for deferred rendering. fix_ZRepair_DepthTexture1=SceneDepthTexture.x fix_ZRepair_Dependencies1=MinZ_MaxZRatio fix_ZRepair_ZPosCalc1=zTex * MinZ_MaxZRatio.z - MinZ_MaxZRatio.w fix_ZRepair_DepthTexture2=SceneDepthTexture.x fix_ZRepair_Dependencies2= fix_ZRepair_ZPosCalc2=zTex fix_ZRepair_PositionTexture=PositionTexture fix_ZRepair_PositionCalc=1024 * %s ; Inject depth texture if other depth sources are unavailable. fix_ZRepair_DepthTextureHash=8a19f087b004598f ; correct inverse transformations using evaluated depth. fix_InvTransform=ScreenToLight,InverseTranslatedViewProjectionMatrix ; Back projection fix_BackProjectionTransform1=ScreenToTranslatedWorldMatrix._m00,ScreenToTranslatedWorldMatrix._m02,ScreenToTranslatedWorldMatrix._m01 fix_BackProjectionTransform2=ScreenToWorld._m00,ScreenToWorld._m02,ScreenToWorld._m01 fix_ObjectPosition1=PointPositionAndInverseRadius fix_ObjectPosition1Multiplier=1,0.82,0 fix_ObjectPosition2=SpotPositionAndInverseRadius fix_ObjectPosition2Multiplier=1,0.7626,0 [/code]
I'll put up this statement on the Indigomod page soon together with a new video of the current state. Many thanks to 3dsolutiongaming.com and all the donators who are still supporting this wrapper.

As you all might know, Helix appeared out of nowhere with a Bioshock Infinite wrapper for free. The logic conclusion would be to stop the campaign and leave it all to Helix, who seems to have the time, money and resources to pull something like this off.
But we received a lot of positive feedback from the community and many users told us to not cancel the campaign in favor of having another wrapper available using a different approach for game fixes.

I want to point out the differences to the Helix wrapper here:

All DirectX DLLs are wrapped, which includes
  • dxgi.dll for video mode manipulations like screen resolution, refresh rate settings and primary render buffers.
  • nvapi.dll for NVidia specific stereo settings: overriding game profile values, setting auto stereo modes, custom convergence and separation values for render objects or on input device events.
  • D3DCompiler_xx.dll for shader manipulations in HLSL for games which provide shader source code to the system.
  • d3d11.dll for marking pixel shaders, vertex shaders, index buffers and render buffers. Also all shader manipulations are implemented here.

While the Helix wrapper operates on the shader assembly code, the Indigomod wrapper disassembles shader code into HLSL, providing a C-like language for understanding and patching shader code, which is much easier to read and to make patches by hand or fully automated.
Modern games are using thousands of shaders, so just patching several shaders by hand is not going to fix everything. Therefore the wrapper provides several algorithms which patches shaders on the fly and cashes them for faster reload next time:
  • Vertex shader output variables (SV_Position)
    NVidia only patches the SV_Position value for stereo projection but most games use additional variables for effect calculations in pixel shaders. The wrapper detects those output variables and also applies stereo projection for those values.
    fix_sv_position=1
  • Inverse position transformation correction
    By marking pixel shaders and browsing through the source code, you see back transformations from projected screen coordinates to other spaces. This is used for deferred rendering effects like lighting, shadows etc. The wrapper corrects those transformations automatically if you provide the matrix name from the source code
    fix_InvTransform=ScreenToLight,InverseTranslatedViewProjectionMatrix
  • Projected position correction
    Some calculations on G-buffers are performed already in screen space - there is no back transformation. A transformation has to be provided by the vertex shader like this:
    fix_BackProjectionTransform=ScreenToWorld._m00,ScreenToWorld._m02,ScreenToWorld._m01
    Pixel shaders are then using this transformation for positional corrections:
    fix_ObjectPosition2=SpotPositionAndInverseRadius
    fix_ObjectPosition2Multiplier=1,0.7626,0

It's still required to do shader fixes by hand for little things like HUD, Lens flares or other cosmetic effects.

Currently, the Bioshock Infinite specific part of the wrapper consists of 11 custom patched shaders dealing with HUD position, lens flares, sun glare etc. and the following settings in the .ini file:
;
; Settings for GPU program manipulations.
;
[Rendering]
storage_directory=ShaderOverride
; thread save data structure access. required on multithreaded rendering.
use_criticalsection=1
; cache all compiled .txt shaders. this removes loading stalls.
cache_shaders=1
; preload all patched shaders. there's a bug in NVidia auto stereoization if stero shaders
; are being loaded during the game on some HW/SW combinations, which turns off auto patching
; for those stereo shaders (results in partial mono rendering). this is a workaround for this case.
preload_shaders=1
; autofix shader option: stereoize all shader parameters with position semantic.
fix_sv_position=1
; evaluate depth for deferred rendering.
fix_ZRepair_DepthTexture1=SceneDepthTexture.x
fix_ZRepair_Dependencies1=MinZ_MaxZRatio
fix_ZRepair_ZPosCalc1=zTex * MinZ_MaxZRatio.z - MinZ_MaxZRatio.w
fix_ZRepair_DepthTexture2=SceneDepthTexture.x
fix_ZRepair_Dependencies2=
fix_ZRepair_ZPosCalc2=zTex
fix_ZRepair_PositionTexture=PositionTexture
fix_ZRepair_PositionCalc=1024 * %s
; Inject depth texture if other depth sources are unavailable.
fix_ZRepair_DepthTextureHash=8a19f087b004598f
; correct inverse transformations using evaluated depth.
fix_InvTransform=ScreenToLight,InverseTranslatedViewProjectionMatrix
; Back projection
fix_BackProjectionTransform1=ScreenToTranslatedWorldMatrix._m00,ScreenToTranslatedWorldMatrix._m02,ScreenToTranslatedWorldMatrix._m01
fix_BackProjectionTransform2=ScreenToWorld._m00,ScreenToWorld._m02,ScreenToWorld._m01
fix_ObjectPosition1=PointPositionAndInverseRadius
fix_ObjectPosition1Multiplier=1,0.82,0
fix_ObjectPosition2=SpotPositionAndInverseRadius
fix_ObjectPosition2Multiplier=1,0.7626,0

Posted 08/03/2013 11:04 AM   
[quote="Chiri"]I'll put up this statement on the Indigomod page soon together with a new video of the current state. Many thanks to 3dsolutiongaming.com and all the donators who are still supporting this wrapper. As you all might know, Helix appeared out of nowhere with a Bioshock Infinite wrapper for free. The logic conclusion would be to stop the campaign and leave it all to Helix, who seems to have the time, money and resources to pull something like this off. But we received a lot of positive feedback from the community and many users told us to not cancel the campaign in favor of having another wrapper available using a different approach for game fixes. I want to point out the differences to the Helix wrapper here: All DirectX DLLs are wrapped, which includes [list] [.]dxgi.dll for video mode manipulations like screen resolution, refresh rate settings and primary render buffers.[/.] [.]nvapi.dll for NVidia specific stereo settings: overriding game profile values, setting auto stereo modes, custom convergence and separation values for render objects or on input device events.[/.] [.]D3DCompiler_xx.dll for shader manipulations in HLSL for games which provide shader source code to the system.[/.] [.]d3d11.dll for marking pixel shaders, vertex shaders, index buffers and render buffers. Also all shader manipulations are implemented here.[/.] [/list] While the Helix wrapper operates on the shader assembly code, the Indigomod wrapper disassembles shader code into HLSL, providing a C-like language for understanding and patching shader code, which is much easier to read and to make patches by hand or fully automated. Modern games are using thousands of shaders, so just patching several shaders by hand is not going to fix everything. Therefore the wrapper provides several algorithms which patches shaders on the fly and cashes them for faster reload next time: [list] [.]Vertex shader output variables (SV_Position) NVidia only patches the SV_Position value for stereo projection but most games use additional variables for effect calculations in pixel shaders. The wrapper detects those output variables and also applies stereo projection for those values. fix_sv_position=1[/.] [.]Inverse position transformation correction By marking pixel shaders and browsing through the source code, you see back transformations from projected screen coordinates to other spaces. This is used for deferred rendering effects like lighting, shadows etc. The wrapper corrects those transformations automatically if you provide the matrix name from the source code fix_InvTransform=ScreenToLight,InverseTranslatedViewProjectionMatrix[/.] [.]Projected position correction Some calculations on G-buffers are performed already in screen space - there is no back transformation. A transformation has to be provided by the vertex shader like this: fix_BackProjectionTransform=ScreenToWorld._m00,ScreenToWorld._m02,ScreenToWorld._m01 Pixel shaders are then using this transformation for positional corrections: fix_ObjectPosition2=SpotPositionAndInverseRadius fix_ObjectPosition2Multiplier=1,0.7626,0[/.] [/list] It's still required to do shader fixes by hand for little things like HUD, Lens flares or other cosmetic effects. Currently, the Bioshock Infinite specific part of the wrapper consists of 11 custom patched shaders dealing with HUD position, lens flares, sun glare etc. and the following settings in the .ini file: [code] ; ; Settings for GPU program manipulations. ; [Rendering] storage_directory=ShaderOverride ; thread save data structure access. required on multithreaded rendering. use_criticalsection=1 ; cache all compiled .txt shaders. this removes loading stalls. cache_shaders=1 ; preload all patched shaders. there's a bug in NVidia auto stereoization if stero shaders ; are being loaded during the game on some HW/SW combinations, which turns off auto patching ; for those stereo shaders (results in partial mono rendering). this is a workaround for this case. preload_shaders=1 ; autofix shader option: stereoize all shader parameters with position semantic. fix_sv_position=1 ; evaluate depth for deferred rendering. fix_ZRepair_DepthTexture1=SceneDepthTexture.x fix_ZRepair_Dependencies1=MinZ_MaxZRatio fix_ZRepair_ZPosCalc1=zTex * MinZ_MaxZRatio.z - MinZ_MaxZRatio.w fix_ZRepair_DepthTexture2=SceneDepthTexture.x fix_ZRepair_Dependencies2= fix_ZRepair_ZPosCalc2=zTex fix_ZRepair_PositionTexture=PositionTexture fix_ZRepair_PositionCalc=1024 * %s ; Inject depth texture if other depth sources are unavailable. fix_ZRepair_DepthTextureHash=8a19f087b004598f ; correct inverse transformations using evaluated depth. fix_InvTransform=ScreenToLight,InverseTranslatedViewProjectionMatrix ; Back projection fix_BackProjectionTransform1=ScreenToTranslatedWorldMatrix._m00,ScreenToTranslatedWorldMatrix._m02,ScreenToTranslatedWorldMatrix._m01 fix_BackProjectionTransform2=ScreenToWorld._m00,ScreenToWorld._m02,ScreenToWorld._m01 fix_ObjectPosition1=PointPositionAndInverseRadius fix_ObjectPosition1Multiplier=1,0.82,0 fix_ObjectPosition2=SpotPositionAndInverseRadius fix_ObjectPosition2Multiplier=1,0.7626,0 [/code][/quote] 1. Is it possible to create a new wrapper, so it has best of both worlds? (helix/cheri corporation?) Which language did you use to create your wrapper (C#)? Will your wrapper code become open-source? (so other people can join in to improve?). off-topic: donated once again!
Chiri said:I'll put up this statement on the Indigomod page soon together with a new video of the current state. Many thanks to 3dsolutiongaming.com and all the donators who are still supporting this wrapper.

As you all might know, Helix appeared out of nowhere with a Bioshock Infinite wrapper for free. The logic conclusion would be to stop the campaign and leave it all to Helix, who seems to have the time, money and resources to pull something like this off.
But we received a lot of positive feedback from the community and many users told us to not cancel the campaign in favor of having another wrapper available using a different approach for game fixes.

I want to point out the differences to the Helix wrapper here:

All DirectX DLLs are wrapped, which includes
  • dxgi.dll for video mode manipulations like screen resolution, refresh rate settings and primary render buffers.
  • nvapi.dll for NVidia specific stereo settings: overriding game profile values, setting auto stereo modes, custom convergence and separation values for render objects or on input device events.
  • D3DCompiler_xx.dll for shader manipulations in HLSL for games which provide shader source code to the system.
  • d3d11.dll for marking pixel shaders, vertex shaders, index buffers and render buffers. Also all shader manipulations are implemented here.

While the Helix wrapper operates on the shader assembly code, the Indigomod wrapper disassembles shader code into HLSL, providing a C-like language for understanding and patching shader code, which is much easier to read and to make patches by hand or fully automated.
Modern games are using thousands of shaders, so just patching several shaders by hand is not going to fix everything. Therefore the wrapper provides several algorithms which patches shaders on the fly and cashes them for faster reload next time:
  • Vertex shader output variables (SV_Position)
    NVidia only patches the SV_Position value for stereo projection but most games use additional variables for effect calculations in pixel shaders. The wrapper detects those output variables and also applies stereo projection for those values.
    fix_sv_position=1
  • Inverse position transformation correction
    By marking pixel shaders and browsing through the source code, you see back transformations from projected screen coordinates to other spaces. This is used for deferred rendering effects like lighting, shadows etc. The wrapper corrects those transformations automatically if you provide the matrix name from the source code
    fix_InvTransform=ScreenToLight,InverseTranslatedViewProjectionMatrix
  • Projected position correction
    Some calculations on G-buffers are performed already in screen space - there is no back transformation. A transformation has to be provided by the vertex shader like this:
    fix_BackProjectionTransform=ScreenToWorld._m00,ScreenToWorld._m02,ScreenToWorld._m01
    Pixel shaders are then using this transformation for positional corrections:
    fix_ObjectPosition2=SpotPositionAndInverseRadius
    fix_ObjectPosition2Multiplier=1,0.7626,0

It's still required to do shader fixes by hand for little things like HUD, Lens flares or other cosmetic effects.

Currently, the Bioshock Infinite specific part of the wrapper consists of 11 custom patched shaders dealing with HUD position, lens flares, sun glare etc. and the following settings in the .ini file:
;
; Settings for GPU program manipulations.
;
[Rendering]
storage_directory=ShaderOverride
; thread save data structure access. required on multithreaded rendering.
use_criticalsection=1
; cache all compiled .txt shaders. this removes loading stalls.
cache_shaders=1
; preload all patched shaders. there's a bug in NVidia auto stereoization if stero shaders
; are being loaded during the game on some HW/SW combinations, which turns off auto patching
; for those stereo shaders (results in partial mono rendering). this is a workaround for this case.
preload_shaders=1
; autofix shader option: stereoize all shader parameters with position semantic.
fix_sv_position=1
; evaluate depth for deferred rendering.
fix_ZRepair_DepthTexture1=SceneDepthTexture.x
fix_ZRepair_Dependencies1=MinZ_MaxZRatio
fix_ZRepair_ZPosCalc1=zTex * MinZ_MaxZRatio.z - MinZ_MaxZRatio.w
fix_ZRepair_DepthTexture2=SceneDepthTexture.x
fix_ZRepair_Dependencies2=
fix_ZRepair_ZPosCalc2=zTex
fix_ZRepair_PositionTexture=PositionTexture
fix_ZRepair_PositionCalc=1024 * %s
; Inject depth texture if other depth sources are unavailable.
fix_ZRepair_DepthTextureHash=8a19f087b004598f
; correct inverse transformations using evaluated depth.
fix_InvTransform=ScreenToLight,InverseTranslatedViewProjectionMatrix
; Back projection
fix_BackProjectionTransform1=ScreenToTranslatedWorldMatrix._m00,ScreenToTranslatedWorldMatrix._m02,ScreenToTranslatedWorldMatrix._m01
fix_BackProjectionTransform2=ScreenToWorld._m00,ScreenToWorld._m02,ScreenToWorld._m01
fix_ObjectPosition1=PointPositionAndInverseRadius
fix_ObjectPosition1Multiplier=1,0.82,0
fix_ObjectPosition2=SpotPositionAndInverseRadius
fix_ObjectPosition2Multiplier=1,0.7626,0


1. Is it possible to create a new wrapper, so it has best of both worlds? (helix/cheri corporation?)

Which language did you use to create your wrapper (C#)?

Will your wrapper code become open-source? (so other people can join in to improve?).

off-topic: donated once again!

Posted 08/03/2013 11:39 AM   
We are working on a video right now. It's great that both wrappers work in a different way, making both more viable alongside each other. Potentially a issue that one wrapper struggles to fix, the other might fix easily. This is a positive thing for all 3d users and future game releases. 3dsolutiongaming are very excited about both wrappers and cant wait to see what the future brings.
We are working on a video right now.

It's great that both wrappers work in a different way, making both more viable alongside each other. Potentially a issue that one wrapper struggles to fix, the other might fix easily.

This is a positive thing for all 3d users and future game releases. 3dsolutiongaming are very excited about both wrappers and cant wait to see what the future brings.

Asus Rampage Extreme II | Quad core intel I7 2.6 | 6gig ram | Geforce GTX 680 | Samsung 22" 2233RZ | Acer 5360 | win8

3D website dedicated soley for nvidia 3D Vision

Visit 3dSolutionGaming.com for an A-Z listing of 3D streaming video's, automated slideshows, download packs and common fixes for 3dvision gamers.

Facebook Page: https://www.facebook.com/3dsolutiongaming
Twitter page: https://twitter.com/solutiongaming
Youtube Channel: www.youtube.com/user/SolutionGaming

Keenly supporting the Helixwrapper
http://helixmod.blogspot.com/

Posted 08/03/2013 11:41 AM   
I want to correct you, because some differences you described not correct. [quote="Chiri"] dxgi.dll for video mode manipulations like screen resolution, refresh rate settings and primary render buffers. [/quote] I provide this functional as well(starts from d3d9), but directly from d3d11.dll. Don't see the reason to make bunch of dll's. [quote="Chiri"] nvapi.dll for NVidia specific stereo settings: overriding game profile values, setting auto stereo modes, custom convergence and separation values for render objects or on input device events. [/quote] The same as above, doing all this from d3d11. [quote="Chiri"] D3DCompiler_xx.dll for shader manipulations in HLSL for games which provide shader source code to the system. [/quote] Honestly, useless thing. How many games have shader sources ? :) [quote="Chiri"] d3d11.dll for marking pixel shaders, vertex shaders, index buffers and render buffers. Also all shader manipulations are implemented here. [/quote] I'm doing all this too [quote="Chiri"] While the Helix wrapper operates on the shader assembly code, the Indigomod wrapper disassembles shader code into HLSL, providing a C-like language for understanding and patching shader code, which is much easier to read and to make patches by hand or fully automated. [/quote] This is a matter of habit. It's like discussion what language is better :) [quote="Chiri"] Vertex shader output variables (SV_Position) [/quote] Fully automated process will brake things like: diffuse reflection, water reflection and some others effects. That's why I sorted out them from the script code. It's a more flexibly. Other things are also doing by script, because I don't want to recompile dll every time for others game which has different render techniques. All functional from DX9 version will work in DX11 (and a bit later DX10) versions, plus some new things ;) Anyway, i hope you will finish your work some day and make it public for free. I'm just curious to see how it works :) [quote="Schmeltzer"] 1. Is it possible to create a new wrapper, so it has best of both worlds? (helix/cheri corporation?) Which language did you use to create your wrapper (C#)? [/quote] Cooperate ? no, for sure. Because their point is making some money on it. But maybe I will implement in in future in helixmod. As I'm doing all shader compilation/decompilation myself and build syntax tree based on asm code it will be not hard.
I want to correct you, because some differences you described not correct.

Chiri said:
dxgi.dll for video mode manipulations like screen resolution, refresh rate settings and primary render buffers.

I provide this functional as well(starts from d3d9), but directly from d3d11.dll. Don't see the reason to make bunch of dll's.

Chiri said:
nvapi.dll for NVidia specific stereo settings: overriding game profile values, setting auto stereo modes, custom convergence and separation values for render objects or on input device events.

The same as above, doing all this from d3d11.

Chiri said:
D3DCompiler_xx.dll for shader manipulations in HLSL for games which provide shader source code to the system.

Honestly, useless thing. How many games have shader sources ? :)

Chiri said:
d3d11.dll for marking pixel shaders, vertex shaders, index buffers and render buffers. Also all shader manipulations are implemented here.

I'm doing all this too

Chiri said:
While the Helix wrapper operates on the shader assembly code, the Indigomod wrapper disassembles shader code into HLSL, providing a C-like language for understanding and patching shader code, which is much easier to read and to make patches by hand or fully automated.

This is a matter of habit. It's like discussion what language is better :)

Chiri said:
Vertex shader output variables (SV_Position)

Fully automated process will brake things like: diffuse reflection, water reflection and some others effects.
That's why I sorted out them from the script code. It's a more flexibly.
Other things are also doing by script, because I don't want to recompile dll every time for others game which has different render techniques.

All functional from DX9 version will work in DX11 (and a bit later DX10) versions, plus some new things ;)

Anyway, i hope you will finish your work some day and make it public for free. I'm just curious to see how it works :)

Schmeltzer said:
1. Is it possible to create a new wrapper, so it has best of both worlds? (helix/cheri corporation?)
Which language did you use to create your wrapper (C#)?

Cooperate ? no, for sure. Because their point is making some money on it.

But maybe I will implement in in future in helixmod. As I'm doing all shader compilation/decompilation myself and build syntax tree based on asm code it will be not hard.

Posted 08/03/2013 12:03 PM   
[quote="-=HeliX=-"] [quote="Schmeltzer"] 1. Is it possible to create a new wrapper, so it has best of both worlds? (helix/cheri corporation?) Which language did you use to create your wrapper (C#)? [/quote] Cooperate ? no, for sure. Because their point is making some money on it. [/quote] It has some advantages though, maybe we get an option for requesting games that I'd like to see fixed, but you won't because you don't like the game anyway (this is an ssumption on my part).
-=HeliX=- said:

Schmeltzer said:
1. Is it possible to create a new wrapper, so it has best of both worlds? (helix/cheri corporation?)
Which language did you use to create your wrapper (C#)?

Cooperate ? no, for sure. Because their point is making some money on it.

It has some advantages though, maybe we get an option for requesting games that I'd like to see fixed, but you won't because you don't like the game anyway (this is an ssumption on my part).

Posted 08/03/2013 12:16 PM   
@Schmeltzer, maybe, but if you read their FAQ there is no guarantees of that. And as for me, I more appreciate freedom than money :)
@Schmeltzer, maybe, but if you read their FAQ there is no guarantees of that.
And as for me, I more appreciate freedom than money :)

Posted 08/03/2013 12:26 PM   
[quote="-=HeliX=-"]@Schmeltzer, maybe, but if you read their FAQ there is no guarantees of that. And as for me, I more appreciate freedom than money :)[/quote] "And as for me, I more appreciate freedom than money ;-)" Agreed :-) Would you consider to update your site in such manner that we can see on what projects you and other modders ([u]might, no gueraties[/u]) are working? To give you 2 examples: I played dishonored and when I finished, a day later there was a fix :-) And if I only knew that you were working (or considering to work) on Bioshock Infinite, I would have waited to play it (I'm a patient guy) Just a thought!
-=HeliX=- said:@Schmeltzer, maybe, but if you read their FAQ there is no guarantees of that.
And as for me, I more appreciate freedom than money :)


"And as for me, I more appreciate freedom than money ;-)" Agreed :-)

Would you consider to update your site in such manner that we can see on what projects you and other modders (might, no gueraties) are working?

To give you 2 examples:

I played dishonored and when I finished, a day later there was a fix :-)

And if I only knew that you were working (or considering to work) on Bioshock Infinite, I would have waited to play it (I'm a patient guy)

Just a thought!

Posted 08/03/2013 12:49 PM   
@Schmeltzer Yeah, I'm planning to do that more informative. As for the games I want to fix as many as possible, but can't do that all days :)
@Schmeltzer
Yeah, I'm planning to do that more informative.
As for the games I want to fix as many as possible, but can't do that all days :)

Posted 08/03/2013 12:55 PM   
[quote="-=HeliX=-"]@Schmeltzer Yeah, I'm planning to do that more informative. As for the games I want to fix as many as possible, but can't do that all days :)[/quote] Nice! (I hope one day you will add a paypall option too. To me you're the guy that allays pays the bill in the restaurant, and I'd love to do something in return.) And again: you're the best!
-=HeliX=- said:@Schmeltzer
Yeah, I'm planning to do that more informative.
As for the games I want to fix as many as possible, but can't do that all days :)


Nice!
(I hope one day you will add a paypall option too. To me you're the guy that allays pays the bill in the restaurant, and I'd love to do something in return.)



And again: you're the best!

Posted 08/03/2013 01:07 PM   
Ah yes!!! It's happening here too!!! Don't get me wrong or anything, but I love the fact that now both Helix and Chiri have a working wrapper. Ofc the implementation is different and that is the beauty of it. I remember a lecturer say at some point ago.."There is no RIGHT way to code. Everyone makes their decisions and such. It is important to understand why you made yours." This is soo true as you can see from the above posts. I loveeee this type of discussions where one says this is right and the other one says this is right;)) Why? because like this, each of the wrappers can be improved based on these discussions, or give an alternative solution to the same problem;))) I also took part in discussions like this on WSGF:)) Which is better Flawless WideScreen of WideScreen Fixer:)) one is done in C++ other in C#, one offers automatic updates other doesn't etc and etc and etc;)) At some point I decided to stick with WSF (even before Flawless was released) and afterwards kinda stick with it. But does "it do it" better than Flawless? I can't say..it's an alternative solution to the same problem;)) So back on topic, I really want to see both projects take LIFE! @Chiri. It was very very interesting to read what you are doing and gave an inside look exactly on what I wanted to know. Now with that info I should defo look more in-depth;)) Coding the app directly is one thing. Reverse engineering it is another thing...hehe (More interesting if you ask me ^_^)
Ah yes!!! It's happening here too!!!

Don't get me wrong or anything, but I love the fact that now both Helix and Chiri have a working wrapper. Ofc the implementation is different and that is the beauty of it.

I remember a lecturer say at some point ago.."There is no RIGHT way to code. Everyone makes their decisions and such. It is important to understand why you made yours." This is soo true as you can see from the above posts.

I loveeee this type of discussions where one says this is right and the other one says this is right;))
Why? because like this, each of the wrappers can be improved based on these discussions, or give an alternative solution to the same problem;)))

I also took part in discussions like this on WSGF:)) Which is better Flawless WideScreen of WideScreen Fixer:)) one is done in C++ other in C#, one offers automatic updates other doesn't etc and etc and etc;))
At some point I decided to stick with WSF (even before Flawless was released) and afterwards kinda stick with it. But does "it do it" better than Flawless? I can't say..it's an alternative solution to the same problem;))

So back on topic, I really want to see both projects take LIFE!

@Chiri. It was very very interesting to read what you are doing and gave an inside look exactly on what I wanted to know. Now with that info I should defo look more in-depth;))
Coding the app directly is one thing. Reverse engineering it is another thing...hehe (More interesting if you ask me ^_^)

1x Palit RTX 2080Ti Pro Gaming OC(watercooled and overclocked to hell)
3x 3D Vision Ready Asus VG278HE monitors (5760x1080).
Intel i9 9900K (overclocked to 5.3 and watercooled ofc).
Asus Maximus XI Hero Mobo.
16 GB Team Group T-Force Dark Pro DDR4 @ 3600.
Lots of Disks:
- Raid 0 - 256GB Sandisk Extreme SSD.
- Raid 0 - WD Black - 2TB.
- SanDisk SSD PLUS 480 GB.
- Intel 760p 256GB M.2 PCIe NVMe SSD.
Creative Sound Blaster Z.
Windows 10 x64 Pro.
etc


My website with my fixes and OpenGL to 3D Vision wrapper:
http://3dsurroundgaming.com

(If you like some of the stuff that I've done and want to donate something, you can do it with PayPal at tavyhome@gmail.com)

Posted 08/03/2013 01:21 PM   
It's nice to see that there are two projects in the works to keep 3D gaming alive once the next-gen consoles are out and almost all the multi-platform games will be DX11 derivatives. I am amazed by what you guys can do and want both to succeed. I am curious HeliX, are you a fan of the Witcher games? I am really hoping that the next one will be fixable.
It's nice to see that there are two projects in the works to keep 3D gaming alive once the next-gen consoles are out and almost all the multi-platform games will be DX11 derivatives. I am amazed by what you guys can do and want both to succeed.

I am curious HeliX, are you a fan of the Witcher games? I am really hoping that the next one will be fixable.

1080 GTX 8GB SLI | I7-4770K@4.5GHz | 16GB RAM | Win10x64
Asus ROG Swift PG278Q | 3D Vision 2

Posted 08/03/2013 01:31 PM   
Off-topic (sorry) @Helifax, You know a lot about 3D surround gaming. I'm having some problems with my surround setup (stuttering). Is it allright with you if I PM somewhere soon to ask you a few questions?
Off-topic (sorry)

@Helifax,

You know a lot about 3D surround gaming. I'm having some problems with my surround setup (stuttering). Is it allright with you if I PM somewhere soon to ask you a few questions?

Posted 08/03/2013 01:38 PM   
  16 / 28    
Scroll To Top