Optimizations of PC Titles *spawn*

But as I mentioned before, defining game performance in the short term through how fast the gpu is at accelerating incoherent rays would mean devs starting to put unnecessary mirrors and mirrored surfaces that needlessly bounce entire scenes 3 times before reaching the player's POV.
lol, no, that's not how games work, neither coherent secondary mirror reflections will provide any benefit to somebody.
Reflections rays can be heavy not because they are simply secondary or whatever, that's not important.
Glossy reflections are heavy because the more diffuse material is - the larger rays dispersion is and such reflections are the largest portion of reflections in real world since glossy materials are everywhere.
In modern games, there are PBR materials for every object, reflections are applied for all PBR materials, roughness texture defines the roughness of any surface in game.
Instead of fetching reflections data from cube maps, RT reflections can be used for any surface in a game scene, no need for any mirrors:rolleyes:
Hence the roughness cutoff parameter in config files, this parameter defines for which surfaces RT will be used.
Actually, specular occlusion on rough surfaces provides the most visual benefit in most scenes because otherwise there are tons of light/reflections leaks, glowing objects everywhere and other artifacts which make modern games look so "gamey".
Take a look at these screens for reference:
https://screenshotcomparison.com/comparison/8300
https://screenshotcomparison.com/comparison/8294
https://screenshotcomparison.com/comparison/8299
https://screenshotcomparison.com/comparison/8295
https://screenshotcomparison.com/comparison/8296
https://screenshotcomparison.com/comparison/8297
https://screenshotcomparison.com/comparison/8298
https://screenshotcomparison.com/comparison/8293
https://screenshotcomparison.com/comparison/8292
https://screenshotcomparison.com/comparison/8288
https://screenshotcomparison.com/comparison/8289
https://screenshotcomparison.com/comparison/8290
https://screenshotcomparison.com/comparison/8291
 
Kepler didn't have shared memory atomics?
Yes, they were emulated via slow global memory atomics

Exactly. UE5's goal is to have 1 pixel = 1 triangle
This doesn't matter, there obviously will be triangles in between pixels, lots of them actually since pixels can't be perfectly aligned with raster pixel grid.
GCN simply lacked subpixel culling units before Polaris and that's the main reason why it was bad at subpixel triangles.

Neither of those games is rendering subpixel triangles.
How can you prove that there are subpixel triangles with hairworks?
Played Metro Exodus recently, have not seen anything subpixel unfortunately, there were just quite visible triangles:(

In fact, it's a bit ironic that you mention UE5 whose greatest achievement is to implement triangle culling
Yet, they still use traditional HW path on PS5 instead of compute shaders for subpixel rasterization, so I guess it all comes down to subpixel triangles culling rates in the end, on some platforms it might be cheaper to do in HW, on others in SW.
 
Last edited by a moderator:
@OlegSH would you please use the multi-quote system instead of posting 4 times in a row?
There'd be less useless screen space that way, which would improve reading conditions for forum users.


Reflections rays can be heavy not because they are simply secondary or whatever, that's not important.
Glossy reflections are heavy because the more diffuse material is (...)
I'm not sure why you felt the need to make a general description on what raytracing can be used for, followed by a battery of screenshots of watch dog legions..

I was specifically referring to @Dictator 's statements about developers telling him AMD's RT implementation is 4x slower than nvidia's on processing incoherent rays.
Incoherent rays have very low performance on all architectures, difference being it's even lower on AMD cards.


How can you prove that there are subpixel triangles with hairworks?
By halving the tessellation factor and the screen showing the exact same pixels on the hair.
See the Witcher 3 explanation above, on Robert Hallock's video.


Yet, they still use traditional HW path on PS5 instead of compute shaders for subpixel rasterization
UE5 developers, regarding the PS5 demo, very specifically said they're using the console's geometry engine together with primitive shaders.
I'm not sure what you mean by "subpixel rasterization" as there is no such thing. There's subpixel accuracy but at this point I wonder if you know what it means.
 
I'm not sure why you felt the need to make a general description on what raytracing can be used for
"incoherent rays would mean devs starting to put unnecessary mirrors and mirrored surfaces" is an utter nonsense, that's why I provided a general description for you on what RT reflections are actually used for in reply on the nonsense with mirrors.
Incoherent rays are simply glossy reflections on surfaces with high roughness, once again - no need to put the ridiculous unnecessary mirrors and mirrored surfaces.
The most incoherent rays are AO and GI ones since ray's direction is selected in a random fashion in a hemisphere centered around normal vector in a screen pixel.
Yet, RX 6800 XT performance in Metro Exodus is bad, but not as bad as in games with multiple RT effects.

By halving the tessellation factor and the screen showing the exact same pixels on the hair.
Thanks, but rather than watching 15 minutes video, I would rather prefer looking at high resolution screenshots with different tesselation factors.
Then you should explain how that's different to Tress FX, open sourcing it won't magically fix any issues and give access to developer's code, unless developers and their contracts allow to do so.
Other than that, I don't see why this argument is used as an excuse for recent AMD games being slow on nvidia gpus for no visible reason.

GCN and RDNA primitive shaders are SW based culling and shader merging wrapper for standard pipeline, it can replace HW based subpixel triangles culling when it makes sense, but it obviously doesn't replace HW rasterization.

I'm not sure what you mean by "subpixel rasterization" as there is no such thing. There's subpixel accuracy but at this point I wonder if you know what it means.
Now you are being picky about words after the nonsence with mirrors? How clever, but it's too late pretending to be an expert for you:LOL:
I talked about rasterization of subpixel triangles, obviously:rolleyes: And subpixel rasterization exists, have you heard about MSAA?:rolleyes:
 
Last edited:
"incoherent rays would mean devs starting to put unnecessary mirrors and mirrored surfaces" is an utter nonsense, that's why I provided a general description for you on what RT reflections are actually used for in reply on the nonsense with mirrors.
Incoherent rays are simply glossy reflections on surfaces with high roughness, once again - no need to put the ridiculous unnecessary mirrors and mirrored surfaces.
The most incoherent rays are AO and GI ones since ray's direction is selected in a random fashion in a hemisphere centered around normal vector in a screen pixel.
Yet, RX 6800 XT performance in Metro Exodus is bad, but not as bad as in games with multiple RT effects.


Thanks, but rather than watching 15 minutes video, I would rather prefer looking at high resolution screenshots with different tesselation factors.
Then you should explain how that's different to Tress FX, open sourcing it won't magically fix any issues and give access to developer's code, unless developers and their contracts allow to do so.
Other than that, I don't see why this argument is used as an excuse for recent AMD games being slow on nvidia gpus for no visible reason.


GCN and RDNA primitive shaders are SW based culling and shader merging wrapper for standard pipeline, it can replace HW based subpixel triangles culling when it makes sense, but it obviously doesn't replace HW rasterization.


Now you are being picky about words after the nonsence with mirrors? How clever, but it's too late pretending to be an expert for you:LOL:
I talked about rasterization of subpixel triangles, obviously:rolleyes: And subpixel rasterization exists, have you heard about MSAA?:rolleyes:

They use the Geometry engine and primitive shader for bigger triangle when they have small triangle they use compute and a software based rasterizer.
 
https://www.nvidia.com/it-it/geforce/games/

This is the VERY LONG list of Nvidia sponsored titles, the vast majority of them ran quite badly on AMD hardware at the beginning. And some still run quite better on Nvidia cards, without any reason, as you say. Just look at TPU reviews. So again, why is this OK for you but not the opposite?
I truly wish, someone would have the time to re-test those titles on RX6800 XT vs. 3080.
 
Thanks, but rather than watching 15 minutes video, (...)
You mean instead of watching the proof you specifically asked for and were presented with, you prefer to be kept in willful ignorance so that you can keep your fake feeling of righteousness.


Now you are being picky about words after the nonsence with mirrors?
No, I was simply highlighting your blatant use of made-up words (subpixel rasterization :love:) as factual proof that you know a crap ton of nothing you're talking about.
 
You mean instead of watching the proof you specifically asked for and were presented with, you prefer to be kept in willful ignorance so that you can keep your fake feeling of righteousness.
There is no proof in this video. I already said what I would consider to be a proof and that's not babbling about something, but real evidences such as high quality images.

No, I was simply highlighting your blatant use of made-up words (subpixel rasterization ) as factual proof that you know a crap ton of nothing you're talking about.
I already said what I meant. Not going to repeat. Being picky about the obvious typo just shows how desperate you are in trying to find any arguments, which would make any sense, highlighting a typo is not an argument. You failed this.
Judging by your "overexerting RT functionalities in Cyberpunk was coming over a mile away" and the mirrors you mentioned you have no clue on how RT is being done, so please go and learn something. That silly "made-up words" stuff won't help you.
 
There is no proof in this video.
There will never be proof of anything to you, at the rate you change your goalposts.
If you're talking about proof of subpixel triangles in the Witcher 3's Hairworks, then unless you also don't know what a pixel is, you'll find lots of examples showing x64 tessellation showing the exact same detail at pixel level as 16x tessellation (i.e. 1/4th of the geometry showing the same pixels).
But then again, your goalpost will probably change to something more ridiculous next time.



I already said what I meant. Not going to repeat.
Oh yes you wrote "subpixel rasterization" but you actually meant subpixel triangles in Unreal Engine 5, right?

I talked about rasterization of subpixel triangles, obviously:rolleyes:
Which is again wrong because the UE5's Nanite pipeline is engineered to avoid subpixel triangles and the target is to never go below 1 triangle per pixel.
You actually managed to correct one ignorant mistake with another ignorant mistake on top of it.


But yeah, feel free to continue dumping tens of subject-unrelated pretty screenshots to try to make across a completely invalid point.
I'll just get my popcorn ready.
 
There will never be proof of anything to you, at the rate you change your goalposts.
I don't change anything. 3D graphics is all about visuals, so if you want to prove there is no IQ difference -- bring on high res screenshots.
I don't have time to waste on someone's blabbing because it won't prove anything regarding the image quality.

But then again, your goalpost will probably change to something more ridiculous next time.
Of cause I've seen these screenshots, but unless you are blind there is quite a large difference between 8x and 16x even on these overcompressed screenshots.
Now, let's imagine for a second, that in the story driven game there are tons of scenes where the character stands not away from the camera, but rather up front to it.
Now, let's imagine somebody would want to play the game in 4K, can you gurantee there won't be any difference between 16x and 64x?
That's why I am asking for High Res screenshots.

Oh yes you wrote "subpixel rasterization" but you actually meant subpixel triangles in Unreal Engine 5, right?
This doesn't matter, there obviously will be triangles in between pixels, lots of them actually since triangles can't be perfectly aligned with raster pixel grid.

Which is again wrong because the UE5's Nanite pipeline is engineered to avoid subpixel triangles and the target is to never go below 1 triangle per pixel.
Even in modern games there are tons of subpixel triangles in many cases and it can be only worse with Nanite.
Nanite doesn't use tessellation, so you can't adjust the number of triangles per pixel on the fly as with adaptive tessellation.
Do you imagine they are doing perfect LODs for every possible distance to camera and perfectly aligning triangles with centroids so that there are no triangles in-between pixels? How naive :LOL:

You actually managed to correct one ignorant mistake with another ignorant mistake on top of it.
The only thing you've managed so far is to write some nonsense on the stuff you clearly don't understand.

But yeah, feel free to continue dumping tens of subject-unrelated pretty screenshots to try to make across a completely invalid point.
Instead of writing bullshit like this - "mean devs starting to put unnecessary mirrors and mirrored surfaces that needlessly bounce entire scenes 3 times before reaching the player's POV", try harder next time.
 
There will never be proof of anything to you, at the rate you change your goalposts.
I don't change anything.
Next paragraph:
Of cause I've seen these screenshots, but unless you are blind there is quite a large difference between 8x and 16x even on these overcompressed screenshots.

OMG nvidia's default isn't 8x or 16x, it's 64x! You can't see the difference between 64x and 16x, but here you go changing the goalposts to "b-but I can see difference between 16x and 8x!", both of which are well below the Hairworks default of x64. You didn't even bother to read the article (not that I expected it, to be honest).

This couldn't get any more hilarious!
*Popcorn was a good idea.


Even in modern games there are tons of subpixel triangles in many cases and it can be only worse with Nanite.
Still making stuff up?
Quotation needed.

You stated Nanite does subpixel rasterization.. oh sorry it was Nanite does subpixel triangle rasterization. Do provide proof of your (completely made up and ignorant) claims.




The only thing you've managed so far is to write some nonsense on the stuff you clearly don't understand.
Nonsense stuff like subpixel rasterization? :love:
 
OMG nvidia's default isn't 8x or 16x, it's 64x! You can't see the difference between 64x and 16x, but here you go changing the goalposts to "b-but I can see difference between 16x and 8x!", both of which are well below the Hairworks default of x64. You didn't even bother to read the article (not that I expected it, to be honest).

This couldn't get any more hilarious!
*Popcorn was a good idea.

You know that the tessellation factor is responsible for the numbers of strands created from the base geometry? Using 64x means less base geometry (less vertics, less vertex shader calculations, better culling etc.) and more on chip geometry creation.
 
It's easier if interpret if you were actively involved in the "trade".
Oh no problem. So, currently the buffer is filled with 3 elements per pixel. So the first three elements are R, G, and B for a single pixel. Without subpixel rasterization, it will output one element per pixel. Basically, you'll need to take this vector and create a new vector with each element repeated 3 times. Just as an example, something like this would do the trick:
Font not rendering smoothly like screenshot · Issue #101 · alacritty/alacritty · GitHub

Auto-stereoscopic displays using slanted optical plates have inherent subpixel rasterization compared to the normal 2D displays, and mappings between subpixel positions and multi-view indices even vary according to the number of views and angles of slanted optical plates.
A generalized sub-pixel mapping algorithm for auto-stereoscopic displays using slanted optical plates | Semantic Scholar

Etc, etc, etc .....
 
OMG nvidia's default isn't 8x or 16x, it's 64x! You can't see the difference between 64x and 16x
Blah, blah
https://imgsli.com/MzI4ODE
https://i.imgsli.com/images/b6d7dbc5-feff-4820-802f-0f3ecafda563.png
Here is the example I was asking you for, did it for you, no need to thank.
Hopefully, at least you will be able to spot the triangular edges on his hair, so apperently making these edges 4x longer clearly won't have any IQ impact during cut scenes, right?:rolleyes:

Do provide proof of your (completely made up and ignorant) claims.
Why should I educate you? It's not my job, sorry
 
Blah, blah
https://imgsli.com/MzI4ODE
https://i.imgsli.com/images/b6d7dbc5-feff-4820-802f-0f3ecafda563.png
Here is the example I was asking you for, did it for you, no need to thank.
Hopefully, at least you will be able to spot the triangular edges on his hair, so apperently making these edges 4x longer clearly won't have any IQ impact during cut scenes, right?:rolleyes:
You're comparing no tessellation to 64x tessellation. ToTTenTranz point was that you can go down to 16x with no effect on image quality (in Witcher 3), but vastly better performance. Going down to 8x starts to affect results.

1465068735012.png
 
Where is my facepalm emoji?
How can you go down to 16x with no effect on image quality when you can clearly see long edges up close to camera even with 64x tessellation factor in 1440p?

As troyan has already explained, the base mesh is quite coarse, so reducing the tessellation by a factor of 4 would make these already quite visible edges in 1440p way more visible.
 
Last edited:
Back
Top