I want to make Thief 1&2 fully 3D Vision compatible - please help
  1 / 2    
Hello, I also tried to get responses for this in the Thief Forum ttlg.com. Here is the [url=http://www.ttlg.com/forums/showthread.php?t=148883&highlight=3d]post[/url]. Unfortunately no responses yet. I'm a huge fan of 3D Vision and playing Thief 1 and 2 with it. There is a thread on how to configure your computer for Thief 1 and 2 for 3D: http://www.ttlg.com/forums/showthread.php?t=138821 There is only one major drawback: It needs the iZ3D driver, which is a discontinued project and only runs with Windows 7 and below. I have a Windows 7 computer just for this purpose: Playing Thief 1 & 2 in 3D. I would like to upgrade because I have driver issues under Win 7, but I can't. There are other problems as well: [olist] [.]I'm not sure if this is an iZ3D problem, but when I increase the 3D depth I can see through walls from the very left and right camera angle. There is probably something wrong with the clipping. [img]https://forums.geforce.com/cmd/default/download-comment-attachment/75287/[/img][/.] [.]The overlay text for the inventory on the bottom righthand corner doesn't show up. See also the screenshot above.[/.] [.]Enabling iZ3D breaks lot of other programs, like Chrome and a lot of games. I have to enable IZ3D just for Thief and after I played it, I have to disable it again.[/.] [.]This is not a showstopper but pretty inconvenient: When I start the game I see the normal 3D and iZ3D's anaglyph 3D at the same time and I have to disable it each time. [img]https://forums.geforce.com/cmd/default/download-comment-attachment/75286/[/img] [img]https://forums.geforce.com/cmd/default/download-comment-attachment/75288/[/img][/.] [/olist] That's why I would like to make Thief 1 & 2 compatible with 3D Vision without the bugs or I would like to help in the process. At the moment I have no clue where to start. The only thing that comes to mind is to dive into Bo3b's School For Shaderhackers again. I tried it years ago but without success, because I had to less time and patience. I tried to fix issues in Risen 3 from the start which was obviously too hard for a beginner. I never really hacked shaders or c++ executables before, but I'm interested in it. I know to programme in other languages like C#, Java, and Dart quite well. For a start, it would be really great to understand why iZ3D somehow toggles the 3D Vision output. Maybe the experts in this forum have an answer to that? When I'm able to get the debuggable Helix Mod dll to work with the game I could identify what is causing the other problems. But I haven't succeeded with that yet. This year I start my master's degree. I thought about making this a project if not even a thesis about shader hacking. If you would also like to see Thief 1&2 with 3D Vision natively, then let me know. I think it would motivate me even more.
Hello,

I also tried to get responses for this in the Thief Forum ttlg.com. Here is the post. Unfortunately no responses yet.

I'm a huge fan of 3D Vision and playing Thief 1 and 2 with it.

There is a thread on how to configure your computer for Thief 1 and 2 for 3D: http://www.ttlg.com/forums/showthread.php?t=138821

There is only one major drawback: It needs the iZ3D driver, which is a discontinued project and only runs with Windows 7 and below. I have a Windows 7 computer just for this purpose: Playing Thief 1 & 2 in 3D. I would like to upgrade because I have driver issues under Win 7, but I can't.

There are other problems as well:
  1. I'm not sure if this is an iZ3D problem, but when I increase the 3D depth I can see through walls from the very left and right camera angle. There is probably something wrong with the clipping. Image
  2. The overlay text for the inventory on the bottom righthand corner doesn't show up. See also the screenshot above.
  3. Enabling iZ3D breaks lot of other programs, like Chrome and a lot of games. I have to enable IZ3D just for Thief and after I played it, I have to disable it again.
  4. This is not a showstopper but pretty inconvenient: When I start the game I see the normal 3D and iZ3D's anaglyph 3D at the same time and I have to disable it each time. Image Image


That's why I would like to make Thief 1 & 2 compatible with 3D Vision without the bugs or I would like to help in the process.

At the moment I have no clue where to start. The only thing that comes to mind is to dive into Bo3b's School For Shaderhackers again. I tried it years ago but without success, because I had to less time and patience. I tried to fix issues in Risen 3 from the start which was obviously too hard for a beginner. I never really hacked shaders or c++ executables before, but I'm interested in it. I know to programme in other languages like C#, Java, and Dart quite well.

For a start, it would be really great to understand why iZ3D somehow toggles the 3D Vision output. Maybe the experts in this forum have an answer to that?
When I'm able to get the debuggable Helix Mod dll to work with the game I could identify what is causing the other problems. But I haven't succeeded with that yet.

This year I start my master's degree. I thought about making this a project if not even a thesis about shader hacking.

If you would also like to see Thief 1&2 with 3D Vision natively, then let me know. I think it would motivate me even more.

#1
Posted 06/23/2018 04:39 PM   
Added the screenshots: [img]https://forums.geforce.com/cmd/default/download-comment-attachment/75286/[/img] [img]https://forums.geforce.com/cmd/default/download-comment-attachment/75288/[/img] [img]https://forums.geforce.com/cmd/default/download-comment-attachment/75287/[/img]
Added the screenshots:

Image

Image

Image

#2
Posted 06/23/2018 04:40 PM   
Are either of these DX9 or DX11?? IF they are not at least DX9 I dont think they can be fixed for 3D vision as HelixMod is for DDX9 games and 3D Migoto is for DX11 games.. Good luck in your quest ;)
Are either of these DX9 or DX11?? IF they are not at least DX9 I dont think they can be fixed for 3D vision as HelixMod is for DDX9 games and 3D Migoto is for DX11 games..

Good luck in your quest ;)

Intel i5 7600K @ 4.8ghz / MSI Z270 SLI / Asus 1080GTX - 416.16 / Optoma HD142x Projector / 1 4'x10' Curved Screen PVC / TrackIR / HOTAS Cougar / Cougar MFD's / Track IR / NVidia 3D Vision / Win 10 64bit

#3
Posted 06/23/2018 09:31 PM   
Both are updated DX9. A mysterious entity in the web - sometimes referred to as 'the raven' - seems to have the source code and was able to update the games to DX9 for modern systems. This version is often referred to "New Dark". I hoped that it would also be possible to update it to DX11 because I heard that shader hacking would be easier then, as you can use hlsl instead of assembler code for the shader hacking.
Both are updated DX9. A mysterious entity in the web - sometimes referred to as 'the raven' - seems to have the source code and was able to update the games to DX9 for modern systems. This version is often referred to "New Dark".

I hoped that it would also be possible to update it to DX11 because I heard that shader hacking would be easier then, as you can use hlsl instead of assembler code for the shader hacking.

#4
Posted 06/24/2018 10:41 AM   
OK, I've installed it again and made it work in 3D. Assuming you have the GOG version that comes with TFix installed: 1- With Nvidia Profile Inspector, go to the Thief Gold profile and set "StereoTextureEnable" to 0x00000001. 2- Then, open "cam_ext.cfg" and comment the "use_d3d_display" line, so it's ";use_d3d_display". 3- Install dgVoodoo (you'll see how if you check for example the Star Wars Episode I Racer fix: https://helixmod.blogspot.com/2018/05/star-wars-episode-i-racer.html). That's all you need. But you won't be able to use the extra options of "cam_ext.cfg" under "D3D9 render options". I had tried to make it work in 3D in the past, but now thanks to doing it with many other games, I finally understood how to do it :). Now after this all that is left is checking if everything is correct in 3D (the HUD seems fine to me in the main menu and in training mode). If something's wrong, then it's time to install 32 bit 3Dmigoto in the game folder and fix things. With 3Dmigoto it's possible to preconfigure the StereoTextureEnable setting so people don't have to do that first step. But I've just installed the game so I can't upload anything right now. I couldn't make it work in 3D in DX9 mode. I just get a flat image, after trying multiple StereoTextureEnable settings and trying to stereoize the render target with the Helixmod dll.
OK, I've installed it again and made it work in 3D. Assuming you have the GOG version that comes with TFix installed:

1- With Nvidia Profile Inspector, go to the Thief Gold profile and set "StereoTextureEnable" to 0x00000001.
2- Then, open "cam_ext.cfg" and comment the "use_d3d_display" line, so it's ";use_d3d_display".
3- Install dgVoodoo (you'll see how if you check for example the Star Wars Episode I Racer fix: https://helixmod.blogspot.com/2018/05/star-wars-episode-i-racer.html).

That's all you need. But you won't be able to use the extra options of "cam_ext.cfg" under "D3D9 render options".

I had tried to make it work in 3D in the past, but now thanks to doing it with many other games, I finally understood how to do it :).

Now after this all that is left is checking if everything is correct in 3D (the HUD seems fine to me in the main menu and in training mode). If something's wrong, then it's time to install 32 bit 3Dmigoto in the game folder and fix things. With 3Dmigoto it's possible to preconfigure the StereoTextureEnable setting so people don't have to do that first step. But I've just installed the game so I can't upload anything right now.


I couldn't make it work in 3D in DX9 mode. I just get a flat image, after trying multiple StereoTextureEnable settings and trying to stereoize the render target with the Helixmod dll.

CPU: Intel Core i7 7700K @ 4.9GHz
Motherboard: Gigabyte Aorus GA-Z270X-Gaming 5
RAM: GSKILL Ripjaws Z 16GB 3866MHz CL18
GPU: Gainward Phoenix 1080 GLH
Monitor: Asus PG278QR
Speakers: Logitech Z506
Donations account: masterotakusuko@gmail.com

#5
Posted 06/24/2018 12:17 PM   
I see this needs a minor fix for some problem that most dgVoodoo games have ("805da9a83bcf54b0-vs_replace.txt") at high convergence levels. I've fixed that and will publish the fix soon after I check some more things. alexander.johr, this game is too simple to learn 3D fixing with it, and these old games don't represent the usual problems of broken 3D games. It may not have more things to fix than this simple thing (but I see some one-eye HUD text). I'm downloading this HD mod (https://www.moddb.com/mods/thief-gold-hd-texture-mod/downloads) in case it adds something apart from just textures. Is there any other game that you're interested in fixing that doesn't have a fix yet? Or you can practice with an existing fix and look at how things were done. DX11 games have easier to understand code (HLSL unless some specific shaders need ASM).
I see this needs a minor fix for some problem that most dgVoodoo games have ("805da9a83bcf54b0-vs_replace.txt") at high convergence levels. I've fixed that and will publish the fix soon after I check some more things.

alexander.johr, this game is too simple to learn 3D fixing with it, and these old games don't represent the usual problems of broken 3D games. It may not have more things to fix than this simple thing (but I see some one-eye HUD text). I'm downloading this HD mod (https://www.moddb.com/mods/thief-gold-hd-texture-mod/downloads) in case it adds something apart from just textures.

Is there any other game that you're interested in fixing that doesn't have a fix yet? Or you can practice with an existing fix and look at how things were done. DX11 games have easier to understand code (HLSL unless some specific shaders need ASM).

CPU: Intel Core i7 7700K @ 4.9GHz
Motherboard: Gigabyte Aorus GA-Z270X-Gaming 5
RAM: GSKILL Ripjaws Z 16GB 3866MHz CL18
GPU: Gainward Phoenix 1080 GLH
Monitor: Asus PG278QR
Speakers: Logitech Z506
Donations account: masterotakusuko@gmail.com

#6
Posted 06/24/2018 01:59 PM   
Here you go, after a few hours of tweaking it and checking all missions: https://helixmod.blogspot.com/2018/06/thief-gold.html Be careful with the default F1 and right mouse button convergence hotkeys I made. You may drink some potion accidentally. You can change them if you want. Edit: I guess I will have to fix Thief 2 and 3 too :p
Here you go, after a few hours of tweaking it and checking all missions: https://helixmod.blogspot.com/2018/06/thief-gold.html

Be careful with the default F1 and right mouse button convergence hotkeys I made. You may drink some potion accidentally. You can change them if you want.

Edit: I guess I will have to fix Thief 2 and 3 too :p

CPU: Intel Core i7 7700K @ 4.9GHz
Motherboard: Gigabyte Aorus GA-Z270X-Gaming 5
RAM: GSKILL Ripjaws Z 16GB 3866MHz CL18
GPU: Gainward Phoenix 1080 GLH
Monitor: Asus PG278QR
Speakers: Logitech Z506
Donations account: masterotakusuko@gmail.com

#7
Posted 06/24/2018 09:25 PM   
Thank You Masterotaku ;)
Thank You Masterotaku ;)

Intel i5 7600K @ 4.8ghz / MSI Z270 SLI / Asus 1080GTX - 416.16 / Optoma HD142x Projector / 1 4'x10' Curved Screen PVC / TrackIR / HOTAS Cougar / Cougar MFD's / Track IR / NVidia 3D Vision / Win 10 64bit

#8
Posted 06/25/2018 02:12 AM   
[quote="masterotaku"]Here you go, after a few hours of tweaking it and checking all missions: https://helixmod.blogspot.com/2018/06/thief-gold.html Be careful with the default F1 and right mouse button convergence hotkeys I made. You may drink some potion accidentally. You can change them if you want. Edit: I guess I will have to fix Thief 2 and 3 too :p [/quote] I agree with you that these games are not ideal for learning shader hacking, but since you cracked the fundamental problem of the iz3d driver, this would still be good example for alexander.johr to extend to the Thief2 and 3. My recommendation would be to let him finish off those two, because he'll still learn a lot of the fundamentals using your Thief 1 fix as a template.
masterotaku said:Here you go, after a few hours of tweaking it and checking all missions: https://helixmod.blogspot.com/2018/06/thief-gold.html


Be careful with the default F1 and right mouse button convergence hotkeys I made. You may drink some potion accidentally. You can change them if you want.

Edit: I guess I will have to fix Thief 2 and 3 too :p

I agree with you that these games are not ideal for learning shader hacking, but since you cracked the fundamental problem of the iz3d driver, this would still be good example for alexander.johr to extend to the Thief2 and 3.

My recommendation would be to let him finish off those two, because he'll still learn a lot of the fundamentals using your Thief 1 fix as a template.

Acer H5360 (1280x720@120Hz) - ASUS VG248QE with GSync mod - 3D Vision 1&2 - Driver 372.54
GTX 970 - i5-4670K@4.2GHz - 12GB RAM - Win7x64+evilKB2670838 - 4 Disk X25 RAID
SAGER NP9870-S - GTX 980 - i7-6700K - Win10 Pro 1607
Latest 3Dmigoto Release
Bo3b's School for ShaderHackers

#9
Posted 06/25/2018 09:47 AM   
dgVoodoo games are good for practicing texture overrides, shader overrides, iniparams, and some ASM usage (sometimes shaders need to be in ASM). But haloing problems are very rare. And shadows problems are rare too. My plan was quickly fixing Thief 2 and 3 today, but I still have lots of things to do with other games (I'm going to download Star Ocean 4 tomorrow), so alexander.johr can have time to experiment with Thief 2 and 3 and ask questions if he wants. Btw, I didn't do anything about iz3d. I just avoided the dx9 conversion to use dgVoodoo instead for dx11.
dgVoodoo games are good for practicing texture overrides, shader overrides, iniparams, and some ASM usage (sometimes shaders need to be in ASM). But haloing problems are very rare. And shadows problems are rare too.

My plan was quickly fixing Thief 2 and 3 today, but I still have lots of things to do with other games (I'm going to download Star Ocean 4 tomorrow), so alexander.johr can have time to experiment with Thief 2 and 3 and ask questions if he wants.

Btw, I didn't do anything about iz3d. I just avoided the dx9 conversion to use dgVoodoo instead for dx11.

CPU: Intel Core i7 7700K @ 4.9GHz
Motherboard: Gigabyte Aorus GA-Z270X-Gaming 5
RAM: GSKILL Ripjaws Z 16GB 3866MHz CL18
GPU: Gainward Phoenix 1080 GLH
Monitor: Asus PG278QR
Speakers: Logitech Z506
Donations account: masterotakusuko@gmail.com

#10
Posted 06/25/2018 10:13 AM   
@ masterotaku: Currently 3D Fix Manager doesn't install dgVoodoo automatically (I didn't try that tool yet). Is it easy for set up? Btw sorry for the very stupid question - but what is ASM? SM = Shader Model mabybe? And A? @bo3b: nice to see you! :) Haven't seen you in this forum for a while. Maybe you've already read: 3dVisionlive.com will be shut down in a few weeks and all the 3D screenshots on helixblog, too. Are there any possibilities to easily save / migrate all pics to the new plattform Nvidia suggested?
@ masterotaku:
Currently 3D Fix Manager doesn't install dgVoodoo automatically (I didn't try that tool yet). Is it easy for set up? Btw sorry for the very stupid question - but what is ASM? SM = Shader Model mabybe? And A?

@bo3b: nice to see you! :) Haven't seen you in this forum for a while. Maybe you've already read: 3dVisionlive.com will be shut down in a few weeks and all the 3D screenshots on helixblog, too. Are there any possibilities to easily save / migrate all pics to the new plattform Nvidia suggested?

ASUS ROG Strix GeForce GTX 1080 | Core I7-7700K | 16GB RAM | Win10 Pro x64
Asus ROG Swift PG278Q 3D Vision Monitor
Optoma UHD 40 3D Vision Projector
Paypal donations for 3D Fix Manager: duselpaul86@gmx.de

#11
Posted 06/25/2018 06:14 PM   
[quote="Pauldusler"]@ masterotaku: Currently 3D Fix Manager doesn't install dgVoodoo automatically (I didn't try that tool yet). Is it easy for set up?[/quote] What you have to do (as the blog post instructs) is copying the Microsoft dll files (maybe not all are needed, I haven't tried one by one), and then use the program to configure your dgVoodoo settings. When you save your settings, dgVoodoo places a "dgVoodoo.conf" in the game folder, and it has some hidden extra settings apart from the normal ones. This file can change with newer dgVoodoo versions. [quote="Pauldusler"]Btw sorry for the very stupid question - but what is ASM? SM = Shader Model mabybe? And A?[/quote] It's the assembly programming language (https://docs.microsoft.com/en-us/windows/desktop/direct3dhlsl/dx9-graphics-reference-asm). It's always used in the DX9 Helixmod fixes, and sometimes (more so lately) in DX11 3Dmigoto fixes when shaders written in HLSL have bugs or have been only partially translated (decompiled?). For example, when I dumped the "d65c3f9030af3983" vertex shader in Thief, it instantly made all geometry flat until I used it in ASM. When you dump a shader, it has both the HLSL code (above) and the ASM code (below). To use a shader in ASM, you have to delete/comment all the HLSL part (right?) and delete the "_replace" part from the filename.
Pauldusler said:@ masterotaku:
Currently 3D Fix Manager doesn't install dgVoodoo automatically (I didn't try that tool yet). Is it easy for set up?


What you have to do (as the blog post instructs) is copying the Microsoft dll files (maybe not all are needed, I haven't tried one by one), and then use the program to configure your dgVoodoo settings. When you save your settings, dgVoodoo places a "dgVoodoo.conf" in the game folder, and it has some hidden extra settings apart from the normal ones. This file can change with newer dgVoodoo versions.

Pauldusler said:Btw sorry for the very stupid question - but what is ASM? SM = Shader Model mabybe? And A?


It's the assembly programming language (https://docs.microsoft.com/en-us/windows/desktop/direct3dhlsl/dx9-graphics-reference-asm). It's always used in the DX9 Helixmod fixes, and sometimes (more so lately) in DX11 3Dmigoto fixes when shaders written in HLSL have bugs or have been only partially translated (decompiled?). For example, when I dumped the "d65c3f9030af3983" vertex shader in Thief, it instantly made all geometry flat until I used it in ASM.

When you dump a shader, it has both the HLSL code (above) and the ASM code (below). To use a shader in ASM, you have to delete/comment all the HLSL part (right?) and delete the "_replace" part from the filename.

CPU: Intel Core i7 7700K @ 4.9GHz
Motherboard: Gigabyte Aorus GA-Z270X-Gaming 5
RAM: GSKILL Ripjaws Z 16GB 3866MHz CL18
GPU: Gainward Phoenix 1080 GLH
Monitor: Asus PG278QR
Speakers: Logitech Z506
Donations account: masterotakusuko@gmail.com

#12
Posted 06/25/2018 08:06 PM   
Ok doesn't sound too complicated to install DgVodoo :). I'll give it a try and look what I can automate. At least the conf file includes some key value-pairs which can be already edited by 3D Fix Manager. So I could automatically add the settings you showed on the screenshots. Also copying the Microsoft dll files to the game folder would be no problem. Do you know if DgVodoo supports arguments when launching it via console? By this I could maybe trigger the creation of the conf file on first start. Thx for your explanation about ASM. Is ASM code harder to read and fix for 3D as it's a low-level language?
Ok doesn't sound too complicated to install DgVodoo :). I'll give it a try and look what I can automate. At least the conf file includes some key value-pairs which can be already edited by 3D Fix Manager. So I could automatically add the settings you showed on the screenshots. Also copying the Microsoft dll files to the game folder would be no problem.

Do you know if DgVodoo supports arguments when launching it via console? By this I could maybe trigger the creation of the conf file on first start.

Thx for your explanation about ASM. Is ASM code harder to read and fix for 3D as it's a low-level language?

ASUS ROG Strix GeForce GTX 1080 | Core I7-7700K | 16GB RAM | Win10 Pro x64
Asus ROG Swift PG278Q 3D Vision Monitor
Optoma UHD 40 3D Vision Projector
Paypal donations for 3D Fix Manager: duselpaul86@gmx.de

#13
Posted 06/25/2018 09:36 PM   
I don't know if dgVoodoo supports that. Ask here: https://www.vogons.org/viewtopic.php?t=34931 About ASM, it's harder to understand at first glance, but you can get used to it after some time.
I don't know if dgVoodoo supports that. Ask here: https://www.vogons.org/viewtopic.php?t=34931


About ASM, it's harder to understand at first glance, but you can get used to it after some time.

CPU: Intel Core i7 7700K @ 4.9GHz
Motherboard: Gigabyte Aorus GA-Z270X-Gaming 5
RAM: GSKILL Ripjaws Z 16GB 3866MHz CL18
GPU: Gainward Phoenix 1080 GLH
Monitor: Asus PG278QR
Speakers: Logitech Z506
Donations account: masterotakusuko@gmail.com

#14
Posted 06/25/2018 10:29 PM   
Wow, thank you very much @masterotaku! I didn't expect much responses let alone someone who fixes at least one game. It will take me some time to understand what you did and how to reuse it for Thief 2, but now that I know it's possible it motivates me! I will definitely ask questions on how you did it. I searched a lot in the web for something that wraps DX9 in DX11, but I had no luck. That is exactly what dgVoodoo does right? Maybe I stumbled upon it, but I always thought it is just for the old 3dfx games. That means any other old game could be wrapped in DX11 and then fixed with 3dmigoto, right? Thanks again!!!
Wow, thank you very much @masterotaku! I didn't expect much responses let alone someone who fixes at least one game. It will take me some time to understand what you did and how to reuse it for Thief 2, but now that I know it's possible it motivates me! I will definitely ask questions on how you did it.

I searched a lot in the web for something that wraps DX9 in DX11, but I had no luck. That is exactly what dgVoodoo does right? Maybe I stumbled upon it, but I always thought it is just for the old 3dfx games. That means any other old game could be wrapped in DX11 and then fixed with 3dmigoto, right?

Thanks again!!!

#15
Posted 07/04/2018 08:05 PM   
  1 / 2    
Scroll To Top