« Make a SNES Cartridge Reprogrammable | Main | Final Fantasy Generations »
Dear Girlfriends
By Daniel Yerelian | June 15, 2012
Topics: Humor, Image | 4 Comments »
Amanita Design art bioware blizzard comedy DDPDOJ diablo Dodonpachi Dai Jou Black Label Drake's dungeons and dragons evercrack everquest Final Boss Final Fantasy Fortune funny image links Machinarium mario Microsoft surface MMO MMO addicition mod nintendo one life pac man Preview PS3 Sarien.net Sierra snes solar power ds star wars Uncharted video video game video game addiction videogame collection video game collection video game demo videogames videos XBox 360 Games zelda
WP Cumulus Flash tag cloud by Roy Tanck and Luke Morton requires Flash Player 9 or better.
« Make a SNES Cartridge Reprogrammable | Main | Final Fantasy Generations »
By Daniel Yerelian | June 15, 2012
Topics: Humor, Image | 4 Comments »
December 16th, 2015 at 7:17 pm
“Given that the gradient is conastnt across the primitive it’s also relatively easy to compute the exact depth range within a tile for Hi-Z culling” – I don’t think this is true at all, Hi-Z gets quads as inputs as everything really past the rasterizer, quads do know all their interpolated attributes, the gradients are indeed computed by finite differences on the quads values, so I don’t think the linearity of Z/W in screenspace comes into play.”Assume for instance that you want to do edge detection on the depth buffer, perhaps for antialiasing by blurring edges. This is easily done by comparing a pixel’s depth with its neighbors’ depths. With Z values you have conastnt pixel-to-pixel deltas, except for across edges of course. This is easy to detect by comparing the delta to the left and to the right, and if they don’t match (with some epsilon) you crossed an edge. And then of course the same with up-down and diagonally as well” – This sounds like a lot of processing, and it does not sound like a smart idea. The gradient will be conastnt across a primitive, but in such algorithms you’re not interested at all at primitive to primitive edges (i.e. wireframe) but you want object to object ones, so you’ll have to use a fairly large threshold anyways and you gain nothing from the linearity. Actually you loose something, because you have to be sure you either scale your threshold with your projection, or convert to view space everything, or yes, do the gradient thing that is expensive.So in the end? Is this “trick” useful? Most of the times no, and it has some pretty nasty problems too. But in some situations you can be handy indeed, and could let you express your algorithms in clip-space without having to transform from the z-buffer values to some other space.
March 29th, 2016 at 7:21 am
It’s a pleasure to find someone who can think so clearly
April 6th, 2016 at 8:03 am
I really couldn’t ask for more from this article.