Some wip projects

AndreasFSC

Too much going on...
battle1989.jpg
 
Looong day, but this is 5% standard color rendering and 95% rendered depth texture.
Still a long way to go, but at least one step closer...
Need to exclude transparent pixels from depthmap and find a way to optimize the code (it is too slow right now).
I had to render most objects 2 times to get color and depth data.
And for shadowmap I need a 3rd time... I don't think that will be possible (and also maintain acceptable framerate), so maybe have to choose between depth and shadows (if it's even possible to add those)

tta11.jpg
 
Perhaps hard to see here, but this is what the "depth of field" effect look like.
There is a small amount of blur on far objects and it increases with distance.

For the moment I let the game do a depth texture update every 4rd frame, perhaps I can increase the delay further. Maybe it is possible to do something similar with shadowmap, don't know yet. Also working on a simple config file to turn things on/off.

The config file plan for now:
* Bloom: turn on/off, set amount
* Far distance blur: turn on/off, set amount
* Postprocess update delay
* Anisotropic filtering: number samples or 0 for off
* maybe shadowmap

Now it is time for optimization research, to see if it is possible to render less meshes in second render pass to save some performance.


tta12.jpg
 
Andreas - this is impressive progress. Your success made me inspired to work on improving Reshade integration with GTR2. Out of curiosity, did you find a way to use depth buffer in your shaders with MSAA enabled (that's biggest issue with Reshade, some shaders don't work with MSAA on)? Good luck with your effort!
The only solution that have worked so far is to render the scene again outputing depth as color to a color texture. It seems the only way to read depthbuffer is using INTZ format, but it is not supported in d3d9 but d3d9.0c. It took me several days to find out. There are not much documentation available any more for beginners like me.
 
Last edited:
The only solution that have worked so far is to render the scene again outputing depth as color to a color texture. It seems the only way to read depthbuffer is using INTZ format, but it is not supported in d3d9 but d3d9.0c. It took me several days to find out. There are not much documentation available any more for beginners like me.
But does it work well for you with MSAA on? Are you running MSAA? I am hobbyist as well, and I am very consued why Reshade effects that need depth do not work with MSAA. What I understood I think is that with MSAA, depth buffer won't match visible image precisely, which could cause some artifacts, but I am just theorizing.

Edit: I think I vaguely understand that your approach would work as you effectively doing something called "resolve depth" and should work with MSAA, nice! How is the FPS impact?
 
Last edited:
But does it work well for you with MSAA on? Are you running MSAA? I am hobbyist as well, and I am very consued why Reshade effects that need depth do not work with MSAA. What I understood I think is that with MSAA, depth buffer won't match visible image precisely, which could cause some artifacts, but I am just theorizing.
Yes I use the AA setting in the game and also nvidia multisampling (but I am no expert knowing all different specs and versions). I work in a proxy d3d9.dll so I added a new rendertarget and repeat the rendering with different settings, render the new depthmap and then use it in my postprocessing to apply blur.
Pixel perfect matching is not that important in this case, because nearby pixels have similar values here.
(Hopefully it is possible to also output a new shadowmap from the same render with some shader and lightprojection matrix addons...)
 
Last edited:
Edit: I think I vaguely understand that your approach would work as you effectively doing something called "resolve depth" and should work with MSAA, nice! How is the FPS impact?
I haven't measured, but it works well so far unless I render depth on very frame.
Just updating it every 4th or 5th frame doesn't cause any problems as far as I can see, but I think adding AO shadows and other complex precision effects would need more updates.
There is an included config setting for how many frames to skip, to find the best setting.
 
Shadowmaps is on pause for the moment, instead I have focused on other things.
There are 3 depth of field settings, this is the highest setting (probably too much for most people):

tta15.jpg


This is the lowest setting, hardly noticeable, but helps smoothing out far away objects:

tta16.jpg


There is also a simple AO effect, but it is difficult to demonstrate the difference

tta17.jpg


The AO effect can be seen here through the menu element (maybe I can find a way to insert post processing before UI and other onscreen elements, the tricky thing is to find a combination of game and rendering states that always are true for these):

tta18.jpg


And this is max bloom setting (I would like the effect to bleed more, maybe it is possible...):

tta19.jpg
 
I think the post processing is finished now unless I find any new errors.
I think Race Remaster will be updated in a few days, including:

* New post processing and effects
Depth of field (simple)
Ambient occlusion (simple)
Bloom (simple)
Native Anisotropic Filtering (experimental, unknown support level)
d3d9 On 12 (no noticeable performance gains, but can be useful for more effects)
Post processing can be turned off.
* No more known car selection freezes (but also no more full screen alt + tab support, maybe next update)
* Minor shaders and track material updates

The main reason for keeping the effects as simple as possible is game performance.
I still hope to be able to add screen space shadows in the future.
 
Not the prettiest screenshot, but it illustrate the last updates.
I have created a new shader for the 3d grass that Simbin uses on most tracks.
The main difference is that now it fades out with the increased distance.
It looks better and some pixel shader calculations are saved.
Also remade and simplified fog calculations. The previous ones (I borrowed the calculations) have been there from when I started shader work, and they tried to use a view matrix that at least most of the times were not there.

The post processing works quite well, the focus is now on optimizing and improving performance and also to tweak the material shaders.
I think the latest material shaders changes went a little bit too far (decreased diffuse effect to get more detail on backside/shadowed areas), so I try to make it look "better" again.

1.jpg
 
ok. I remember a long ago was about to tell you some like: everything needs to have spec/bump maps, otherwise you will not achieve realistic lighting effects.

Now, Spec map textures are never proper (actually no texture is. As now I have the know-how)
But Specularity has always been the most lack off.
So I use "Crazybump" and see a lot can be achieved with this tool, but I early stop as shaders were never proper in GTR2. (i.e: specularity always "goes through" faces)

Then I learn if I decreased the "Specular RGB" color value (3Dsimed, less white) it "went through" a lot less and kinda still look nice (with the proper map).
So I could see that proper spec maps and values, were looking actually more realistic than just bloom (reshade), but I had to keep it very low spec values (not realistic).

Also learn how "Specualr Power" value change the sun incidence reflection (like for concrete, metal, glass, etc) and I make "some preset" values for this.
Because this I still cant think how the PBR was actually needed.
Then you start with HDR. And since the day I could test Race07/Remaster (plus all your screenshots) I confirm that it was looking washed out/cold, like in a "fixed" way, wich is something that gtr2 never been issue.
have you notice that?

So I say, gtr2 is looking nice/warm than Race07 and actually super crispier at the distance (with most your shaders of course). So I think there is some to check on that. I am willing to post what is neccesary.

I even stop my other posting stuff as we never seem to couple on same direction. makes no sense to me. As I have lot feedback, even on AI.

This track has no spec/bump map. And is ALL with "Specular T1" shader with "proper/low values" on everything except trees.

Do you see the difference that exist with gtr2?
And I remember I tried same track with "all my stuff" in RR. And still washed out/cold looking.
I think is something to check.
 

Attachments

  • 13.jpg
    13.jpg
    806.8 KB · Views: 66
Last edited:
Well, I am quite happy with the over all look, but people have different opinions (different taste, eyes?? screens...)
No offence, but if you think GTR2 looks better, I think you should stick with that and learn how to create your own shaders that will do exactly what you want as far as it is technically possible.

3.jpg
 
Back
Top