And in some cases, like the OP, you have no real way to avoid fans without introducing extra vertices. (You can optimize it to have two fans instead of one, but that's all the non-colinear vertices you have to play with.)
-
-
(Please note I am being very explicit in contradicting you as an invitation for you to tell me about stuff I don't know if there are problems I'm not aware of, and I should have phrased that differently to be clear I'm not ACTUALLY calling you wrong, just a bad habit.)
1 reply 0 retweets 1 like -
Replying to @nothings
Clarification appreciated! You probably know more than me TBH :p Mostly fans seem like a great way to end up with death by triangle overdraw?
3 replies 0 retweets 1 like -
The problem with T-junctions are that triangles that have a common edge (but not common vertex positions) aren't guaranteed to yield watertight rasterization due to differences in grid snapping
1 reply 0 retweets 2 likes -
Yeah ... T junctions are straight-up incorrect. They will cause actual visible rendering artifacts (which get even worse under e.g. global illumination). Compared to that, a triangle fan is no big deal. Rasterizers used to have problems with thin triangles like 20 years ago,
1 reply 0 retweets 2 likes -
Replying to @Jonathan_Blow @won3d and
but my understanding is that this has been solid now for a long time. Even if you are doing your own clipping or something, the kind of “thin triangle” that would cause problems would be much thinner than these.
2 replies 0 retweets 3 likes -
Yeah the downside with fans (or thin tris in general) is that you end up with overshading because of tile shading granularity. But maybe this is less of an issue now?
1 reply 0 retweets 0 likes -
Replying to @won3d @Jonathan_Blow and
This is still a significant efficiency problem. You can't shade smaller than a 2x2 block, and packing blocks from multiple triangles together in a single wavefront has a bunch of extra inefficiency.
1 reply 0 retweets 5 likes -
-
Replying to @ThatcherUlrich @won3d and
It would be interesting to have a fan primitive where three of the vertices are designated as the ones that cause shading (negative indices?). All the other verts just affect rasterisation. Then you could combine all the fragments together in PS waves.
1 reply 0 retweets 3 likes
If you don't have vertex-interpolated values that you want to match up ... which most games would. It's just not worth the complexity.
-
-
Replying to @Jonathan_Blow @ThatcherUlrich and
I said "interesting" not "practical" :-)
0 replies 0 retweets 4 likesThanks. Twitter will use this to make your timeline better. UndoUndo
-
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.