Depth buffer detection modifications

  • Posts: 581
2 years 5 months ago #21 by thalixte
Hmmm.... I have to get the game to check. Have you tested another retrieval mode ?

Please Log in or Create an account to join the conversation.

  • Posts: 581
2 years 5 months ago - 2 years 5 months ago #22 by thalixte
I don't know if Bioshock 2 remastered is a d3d11 game.

Please Log in or Create an account to join the conversation.

  • Posts: 532
2 years 5 months ago #23 by lowenz

thalixte wrote: Hmmm.... I have to get the game to check. Have you tested another retrieval mode ?

Only "first" and "second" are working.
Some levels work with second, some with first (Sarif building), some.....mixed (LOL).

Please Log in or Create an account to join the conversation.

  • Posts: 532
2 years 5 months ago #24 by lowenz

robgrab wrote: Can't wait to try this with Bioshock 2 Remastered.

UPDATE: Didn't work. :(

Unreal Engine games seem to destroy every information about the depth, player's arm+weapon apart.....

Please Log in or Create an account to join the conversation.

  • Posts: 581
2 years 5 months ago #25 by thalixte

lowenz wrote:

thalixte wrote: Hmmm.... I have to get the game to check. Have you tested another retrieval mode ?

Only "first" and "second" are working.
Some levels work with second, some with first (Sarif building), some.....mixed (LOL).


Ok, but what if you use the "at_output_merger_state" mode ?

Please Log in or Create an account to join the conversation.

  • Posts: 581
2 years 5 months ago - 2 years 5 months ago #26 by thalixte

lowenz wrote:

robgrab wrote: Can't wait to try this with Bioshock 2 Remastered.

UPDATE: Didn't work. :(

Unreal Engine games seem to destroy every information about the depth, player's arm+weapon apart.....


Many game engines destroy the depth buffer before the final rendering, that's why i try to retrieve it before. If it exists, i should see it. But when i make some researches in the web, it seems that this game is still a d3d9c or a directx10 game.
The modifications i made to the reshade code only take place in the d3d11portion of the library. So, it will not affect opengl, d3d9 or d3d10 games.
Maybe port that changes to d3d10 will not be too hard to do, but i haven't got much time to do it.

Please Log in or Create an account to join the conversation.

  • Posts: 228
2 years 5 months ago - 2 years 5 months ago #27 by Uncle Crassius
Just noticed that the regular 3.1.1 has depth buffer access in Tomb Raider (2013), probably one game that benefits from the recent changes. Apparently only with AA turned on, strangely.

Please Log in or Create an account to join the conversation.

  • Posts: 581
2 years 5 months ago - 2 years 5 months ago #28 by thalixte

Uncle Crassius wrote: Just noticed that the regular 3.1.1 has depth buffer access in Tomb Raider (2013), probably one game that benefits from the recent changes. Apparently only with AA turned on, strangely.


Have you tried this game with the dll i brought to you yesterday ?

Please Log in or Create an account to join the conversation.

  • Posts: 228
2 years 5 months ago - 2 years 5 months ago #29 by Uncle Crassius

thalixte wrote:

Uncle Crassius wrote: Just noticed that the regular 3.1.1 has depth buffer access in Tomb Raider (2013), probably one game that benefits from the recent changes. Apparently only with AA turned on, strangely.


Have you tried this game with the dll i brought to you yesterday ?


Nope, that's what I meant with "regular 3.1.1". Should've put an "OT" before or something, sorry.

Please Log in or Create an account to join the conversation.

  • Posts: 532
2 years 5 months ago - 2 years 5 months ago #30 by lowenz
Yes, probably the DX10 porting can give good results!
Why is it impossible to do with d3d9?

Please Log in or Create an account to join the conversation.

  • Posts: 532
2 years 5 months ago - 2 years 5 months ago #31 by lowenz

thalixte wrote:

lowenz wrote:

thalixte wrote: Hmmm.... I have to get the game to check. Have you tested another retrieval mode ?

Only "first" and "second" are working.
Some levels work with second, some with first (Sarif building), some.....mixed (LOL).


Ok, but what if you use the "at_output_merger_state" mode ?

No results (in DXHR DC)

Please Log in or Create an account to join the conversation.

  • Posts: 581
2 years 5 months ago #32 by thalixte

lowenz wrote: Yes, probably the DX10 porting can give good results!
Why is it impossible to do with d3d9?


Not impossible to do, just more difficult...

Please Log in or Create an account to join the conversation.

  • Posts: 581
2 years 5 months ago #33 by thalixte

Uncle Crassius wrote:

thalixte wrote:

Uncle Crassius wrote: Just noticed that the regular 3.1.1 has depth buffer access in Tomb Raider (2013), probably one game that benefits from the recent changes. Apparently only with AA turned on, strangely.


Have you tried this game with the dll i brought to you yesterday ?


Nope, that's what I meant with "regular 3.1.1". Should've put an "OT" before or something, sorry.


So, it means the dll i brought to you does not have depth buffer access, even in "post process" mode, which corresponds to the current 3.1.1 detection mode ?

Please Log in or Create an account to join the conversation.

  • Posts: 228
2 years 5 months ago #34 by Uncle Crassius

thalixte wrote:

Uncle Crassius wrote: Just noticed that the regular 3.1.1 has depth buffer access in Tomb Raider (2013), probably one game that benefits from the recent changes. Apparently only with AA turned on, strangely.


Have you tried this game with the dll i brought to you yesterday ?


Just tried it out. Had to rename the 32-bit one to dxgi.dll in order to make it work. The other one wouldn't load. With setting set to "before depth buffer clearing" I got depth buffer access even without AA applied. Looks like it does the trick.

Please Log in or Create an account to join the conversation.

  • Posts: 581
2 years 5 months ago - 2 years 5 months ago #35 by thalixte

Uncle Crassius wrote:

thalixte wrote:

Uncle Crassius wrote: Just noticed that the regular 3.1.1 has depth buffer access in Tomb Raider (2013), probably one game that benefits from the recent changes. Apparently only with AA turned on, strangely.


Have you tried this game with the dll i brought to you yesterday ?


Just tried it out. Had to rename the 32-bit one to dxgi.dll in order to make it work. The other one wouldn't load. With setting set to "before depth buffer clearing" I got depth buffer access even without AA applied. Looks like it does the trick.


Good to know :) Yes, i'm sorry, didn't brought to you the reshade install exe to ease the process. It is necessary to rename the 32bits dll to make it work.

Please Log in or Create an account to join the conversation.

  • Posts: 272
2 years 5 months ago - 2 years 5 months ago #36 by robgrab

thalixte wrote:

lowenz wrote:

robgrab wrote: Can't wait to try this with Bioshock 2 Remastered.

UPDATE: Didn't work. :(

Unreal Engine games seem to destroy every information about the depth, player's arm+weapon apart.....


Many game engines destroy the depth buffer before the final rendering, that's why i try to retrieve it before. If it exists, i should see it. But when i make some researches in the web, it seems that this game is still a d3d9c or a directx10 game.
The modifications i made to the reshade code only take place in the d3d11portion of the library. So, it will not affect opengl, d3d9 or d3d10 games.
Maybe port that changes to d3d10 will not be too hard to do, but i haven't got much time to do it.


The original Bioshock games used DX9 with an optional DX10 mode which gave a few more water effects but killed performance. Both of those used the Unreal 2.5 engine. Bioshock Infinite and the Remasters are DX11 using the Unreal 3 engine. I assume Bioshock 2 Remastered uses DX11 because it's using dxgi.dll. Man, I was really looking forward to adding DoF and AO to the Bioshock Remastered games. You used to be able to force AO by changing the flag in NVIDIA Inspector but I've never been able to get DoF. The search continues.

Please Log in or Create an account to join the conversation.

  • Posts: 581
2 years 5 months ago - 2 years 5 months ago #37 by thalixte

robgrab wrote:

thalixte wrote:

lowenz wrote:

robgrab wrote: Can't wait to try this with Bioshock 2 Remastered.

UPDATE: Didn't work. :(

Unreal Engine games seem to destroy every information about the depth, player's arm+weapon apart.....


Many game engines destroy the depth buffer before the final rendering, that's why i try to retrieve it before. If it exists, i should see it. But when i make some researches in the web, it seems that this game is still a d3d9c or a directx10 game.
The modifications i made to the reshade code only take place in the d3d11portion of the library. So, it will not affect opengl, d3d9 or d3d10 games.
Maybe port that changes to d3d10 will not be too hard to do, but i haven't got much time to do it.


The original Bioshock games used DX9 with an optional DX10 mode which gave a few more water effects but killed performance. Both of those used the Unreal 2.5 engine. Bioshock Infinite and the Remasters are DX11 using the Unreal 3 engine. I assume Bioshock 2 Remastered uses DX11 because it's using dxgi.dll. Man, I was really looking forward to adding DoF and AO to the Bioshock Remastered games. You used to be able to force AO by changing the flag in NVIDIA Inspector but I've never been able to get DoF. The search continues.


Not sure dxgi.dll means that the game engine uses d3d11. It looks like a proxy dll which can work with d3d10 games. What do you see in the logs ?

Please Log in or Create an account to join the conversation.

  • Posts: 272
2 years 5 months ago #38 by robgrab
I'll check when I get home.

Please Log in or Create an account to join the conversation.

  • Posts: 581
2 years 5 months ago - 2 years 5 months ago #39 by thalixte

robgrab wrote: I'll check when I get home.


Not necessary, Bioshock 2 remastered uses dxd11, you are right.

Unfortunately, it uses a special texture format for the depth buffer. I can retrieve it :
File Attachment:


The problem is, this texture alternates with blank ones, and i do not see the difference in the texture descriptions between the good one and the blank one.
Will further investigate when i have some times...

Please Log in or Create an account to join the conversation.

  • Posts: 272
2 years 5 months ago - 2 years 5 months ago #40 by robgrab
Wow, thanks! Besides the Bioshock games I’d love to see Resident Evil 4 get depth buffer access. You used to be able to fake it using GeDoSaTo but it was very hit and miss.

COMPARISON

thalixte wrote: The problem is, this texture alternates with blank ones, and i do not see the difference in the texture descriptions between the good one and the blank one.
Will further investigate when i have some times...

Not understanding how this works would it be possible to skip that "blank" frame and replace it with a duplicate of the good frame? Like frame interpolation.

This might not affect it but I know that sometimes the HUD can also cause interference. For Bioshock 2 Remastered the HUD can be disabled by selecting the game in Steam by selecting Properties and under Set Launch Options type -allowconsole
The console command in game is togglehud
I know that sometimes HUDs can interfere with the depth buffer. For instance in System Shock 2 whenever you draw your weapon it screws it up. Here is what I mean.

Warning: Spoiler! [ Click to expand ]

Please Log in or Create an account to join the conversation.