ATI's Z-range is shorter than nvidia's.

Madcatatlas

Golden Member
Feb 22, 2010
1,155
0
0
Hi, my name is average joe and i have no clue what a z buffer is. I have however noticed, after using both brands of GPUs, that the image quality is the same or differs slightly on per title basis. Sometimes better on AMD, sometimes better on Nvidia.

This has led me to conclude that: I dont give an F how they do it, as long as the image quality is the same. Im happy with the game itself having a different look and not interested in what a shorter zbuffer ybuffer or xbuffer means.



/Average Joe out

/Madcat in
Ye, what exactly does a Z buffer do? I think we`ve had the topic covered serveral times, but i didnt get the major point. Waiting for BFG or someone else with tech insight regarding the matter to chime in!
 

brandonb

Diamond Member
Oct 17, 2006
3,731
2
0
/Madcat in
Ye, what exactly does a Z buffer do? I think we`ve had the topic covered serveral times, but i didnt get the major point. Waiting for BFG or someone else with tech insight regarding the matter to chime in!

Zbuffer is the depth buffer. If there is a scene, all pixels are stored in the Zbuffer (in most software) and it indicates the range of the pixel from the camera. It's typicall 24 bits (16.7 million). For example: You have a camera which sees betwen depth of 1 to 1000 (if you notice in some games as you get close to a polygon you can see through it as if its being clipped) and a "foggy" polygon in the distance at 1000, each pixel gets mapped in that range to the zbuffer, a range from 0 to 16.7 million. So at the distance of 1000, it writes 16.7 million into the depth buffer. If you write something into the pixel at 500 distance from the camera, it checks the zbuffer. See's that its value is 8.5 million distance from the camera, and decides that the pixel is in front, and overlays the existing pixel in the zbuffer. If it then draws another polygon at location 750, it would go into the zbuffer in the 12 million location notices that the other pixel is at the closer distance would obscure the pixel and does not write it (saving pixel shader time, etc since it doesn't have to render the pixel).

This allows the developer to not worry about sorting the scene and draw from back to front to make sure things far away don't overwrite objects closer to the camera. It's also used to increase performance because lets say you have something immediately in front of the camera in zbuffer position 0 (like a wall blocking the entire view), and want to write out an object at the back, it can discard the entire rendering step because it already knows your view is blocked and throws away the rendering call.

So, the zbuffer is used 2 fold. Makes sure objects draw at a distance doesnt draw ontop of objects close, and if the developer chooses to sort, and does so front to back, it will increase performance.

If you don't use a zbuffer you have to sort back to front and you have to draw every object (hitting the same pixel potentially, calling its pixel shader multiple times, and that slows things down.)

You may have heard the term "zfighting" before. That's usually caused by multiple objects in the distance that have a similar if not the same zbuffer location, and one time it draws from the first object, other times the 2nd object, which cause rendering artifacts.
 
Last edited:

Keysplayr

Elite Member
Jan 16, 2003
21,209
50
91
Hi, my name is average joe and i have no clue what a z buffer is. I have however noticed, after using both brands of GPUs, that the image quality is the same or differs slightly on per title basis. Sometimes better on AMD, sometimes better on Nvidia.

This has led me to conclude that: I dont give an F how they do it, as long as the image quality is the same. Im happy with the game itself having a different look and not interested in what a shorter zbuffer ybuffer or xbuffer means.



/Average Joe out

/Madcat in
Ye, what exactly does a Z buffer do? I think we`ve had the topic covered serveral times, but i didnt get the major point. Waiting for BFG or someone else with tech insight regarding the matter to chime in!

Purpose of the first paragraph in a technical question thread? Did you not want the question asked, or a pre-emptive helping of Joe public doesn't care, why should you?
 
Dec 30, 2004
12,554
2
76
Purpose of the first paragraph in a technical question thread? Did you not want the question asked, or a pre-emptive helping of Joe public doesn't care, why should you?

I'm sorry, I thought this was a forum where people were allowed to offer their opinions.
I found his post interesting and mildly humorous.
 

BFG10K

Lifer
Aug 14, 2000
22,709
2,971
126
ATI's Z-range is shorter than nvidia's.
Do you have any documented evidence of this? Last I checked, both vendors use 24:8.

Also, I was wondering if BFG10k could tell me the games he knows works with AA on nvidia, but not ATi.

From personal experience:
  • X-Ray (Stalker) games under DX9.
  • Deus Ex Invisible War & Thief 3 (with bloom).
  • Brothers in Arms EiB & Hill 400.
  • Soldier of Fortune Payback.
  • Call of Juarez 2.
  • Wolfenstein SP.
Also while Jericho allows in-game AA, nVidia also has a driver implementation that looks better and also runs faster than the in-game version.

There are probably more, but I've forgotten them.
 

Madcatatlas

Golden Member
Feb 22, 2010
1,155
0
0
Thanx a bunch brandonb for making it that easy to understand :)




Purpose of the first paragraph in a technical question thread? Did you not want the question asked, or a pre-emptive helping of Joe public doesn't care, why should you?


I tried PMing you, but didnt work. ill say it here:

Get off my back and stay ontopic.
 

Madcatatlas

Golden Member
Feb 22, 2010
1,155
0
0
Really keys, you can argue that you do, but you dont. The topic is zbuffer. your focus is on me. Im clearly not going to report you since your a mod aswell, but this is childish.


AT forums has a zero-tolerance policy regarding mod-callouts.

You simply never, ever, inject anything regarding a fellow members status as being a moderator into your commentary regarding said fellow forum member.

Furthermore in a technical forum such as the VC&G you should not find yourself posting negative commentary regarding a fellow forum member in any event.

Keysplayr is clearly posting here as a member and not a mod, if you don't know the difference or are unaware that there is a difference then you should take some time to lurk instead of posting because your actions - be they out of ignorance or with intent - result in the same penalty when they violate the TOS.

These are the rules to play here when you voluntarily visit the AT forums...if you can't or won't abide by the rules then we will kindly ask you to stop visiting. It is just that simple.

Moderator Idontcare
 
Last edited by a moderator:

Keysplayr

Elite Member
Jan 16, 2003
21,209
50
91
Really keys, you can argue that you do, but you dont. The topic is zbuffer. your focus is on me. Im clearly not going to report you since your a mod aswell, but this is childish.

Dude, if you can't see that I SIMPLY asked you something about YOUR post, and why, I can't help it. You posted, I asked what it has to do with it, "IT" being the topic of Z-buffer.
YES my focus is on YOUR COMMENT, not YOU specifically. Difference. Learn the difference please, and report whatever you want.
 

sandorski

No Lifer
Oct 10, 1999
70,101
5,640
126
Dude, if you can't see that I SIMPLY asked you something about YOUR post, and why, I can't help it. You posted, I asked what it has to do with it, "IT" being the topic of Z-buffer.
YES my focus is on YOUR COMMENT, not YOU specifically. Difference. Learn the difference please, and report whatever you want.

It was joke. If you knew anything about the OP's Posting history, you'd understand.
 

Anarchist420

Diamond Member
Feb 13, 2010
8,645
0
76
www.facebook.com
Do you have any documented evidence of this? Last I checked, both vendors use 24:8.
Thanks for answering my question BFG:)

Anyway, I could tell from the games I played when I had a 4850 and a 5770 after that.

I was thinking maybe ATi used lossy z-compression by default. I remember ATI tray tools had 3 z-compression options, but I never tried either of the non-default modes.