From 08cf8785b85bcdfbe09843c24beafd9554ad95e1 Mon Sep 17 00:00:00 2001 From: TimothyLottes Date: Thu, 10 Nov 2016 21:52:50 -0500 Subject: [PATCH] Add files via upload --- 20140814.html | 61 +++++++++++++++++++++++++++++++++++++++++++++++++++ index.html | 1 + 2 files changed, 62 insertions(+) create mode 100644 20140814.html diff --git a/20140814.html b/20140814.html new file mode 100644 index 0000000..d435dee --- /dev/null +++ b/20140814.html @@ -0,0 +1,61 @@ +
+

20140814 - HRAA And Coverage and Related Topics

+
+ +Michal Drobot's HRAA Slides, great talk, I've read it a few times now. Really good seeing people get serious about solving the aliasing problem.
+
+Coverage Fail Case? +
+Start with a simple example of two color and depth samples {N,S} (with associated coverage samples). And two extra coverage samples {w,e}. In the following pattern,
+
+.N..
+...e
+w...
+..S.

+
+Starting with all cleared (unknown) case,
+
+._..
+..._
+_...
+.._.

+
+Render a triangle in the foreground which covers {S,w,e},
+
+._..
+...s
+s...
+..S.

+
+Now render a triangle in the background which covers {N,S,w,e}, this for instance could be a skybox. +The N sample passes the depth test, the S sample fails the depth test, +and the {w,e} coverage samples get set to unknown +(coverage samples have no depth, raster unit does not know which triangle is in front, +because a coverage sample's associated depth sample won't work in sloped cases). +The result being the same as if there are no coverage samples,
+
+.N..
+..._
+_...
+..S.

+
+Front-to-back drawing order (the best order for performance) clears out coverage information. +Only back-to-front draw order (the worst for overdraw) builds coverage as front triangles evict and optional replace coverage sample association.
+
+This is ultimately why I abandoned the idea of using coverage samples for reconstruction.
+
+Since then I've learned that coverage might work if there is a front-to-back full z-pre-pass, followed by rendering back-to-front with depth test passing if depth is nearer or equal. This process would likely re-restore coverage. This likely explains why EQAA and CSAA actually seemed to work when they were first introduced, because engines did do z-pre-passes at that time. Back when I tried coverage based reconstruction I never did a z-pre-pass (couldn't afford to submit the geometry again).
+
+The CRAA LUT in Michal Drobot's paper is a great idea for a z-pre-passing engine working on a platform which provides coverage information.
+
+FLIPQUAD +
+For any hardware which provides programmable sample locations in a granularity of 2x2 pixels (or beyond), one can do better than the flipquad setup. On slide 70, notice blue samples of two pixels {0,2} and {1,3} align on vertical lines.
+
+BFCEE +
+Tried before a few times, never found it to work well as just blending in more of the source as a function of approaching full pixel offset, perhaps I did something wrong, going to need to try this again!
+ +
+ + diff --git a/index.html b/index.html index f106569..d9e8888 100644 --- a/index.html +++ b/index.html @@ -150,6 +150,7 @@ Below this is active random migration (373 prior posts still to filter through) 20140823 - MinWM
20140819 - Scanlines
20140816 - Vintage Programming
+20140814 - HRAA And Coverage and Related Topics

20140723 - Body Hacking Running on Oil
20140715 - Infinte Projection Matrix Notes