RE: [Algorithms] Yet another stencil shadow question
Brought to you by:
vexxed72
From: Guillaume P. <Gui...@ps...> - 2002-12-20 22:44:35
|
Sim, That seems correct to me. In fact, the curvature of an edge is likely to change drastically on the portions of your shadows which are the most noticeable: the limb transitions. Now its not like I've actually tried mixing the methods myself, so I may be talking over my head, but I have tried a shadow "LOD" method that pops to the vertex shadow method given a certain distance threshold, and I had to roll it back because it proved too noticeable a change. However, I agree with Tom that there has to be a heuristic that can save you a few polys. If a vert lies within a low curvature portion of your mesh that shares the same (rigid) transform properties then I don't see why you would actually need to split the quads. Guillaume. -----Original Message----- From: gda...@li... [mailto:gda...@li...]On Behalf Of Sim Dietrich Sent: Friday, December 20, 2002 3:40 PM To: 'gda...@li...' Subject: RE: [Algorithms] Yet another stencil shadow question OK, I haven't thought about this too much, but couldn't an edge be 'smooth' in one animation pose, and 'sharp' in another pose? Not sure how you'd detect this, forcing you to do degenerate quads for every animating edge... Especially if you're doing some sort of physics such that you can't just go through keyframes and detect problematic edges beforehand... Maybe detect edges where both tris have vertices with different bones and/or weights and give that edge a degenerate quad. If an edge is shared by two tris sharing the same bones & weights, that means both tris will use the same xform, so it won't deviate from its initial 'sharpness', so there'd be no need for a quad on that edge if it was originally smooth. -----Original Message----- From: Cass Everitt Sent: Friday, December 20, 2002 8:46 AM To: 'gda...@li...' Subject: RE: [Algorithms] Yet another stencil shadow question Tom, Ok, thanks for the clarification. :-) These issues are what make shadow maps so attractive in the long term. Thanks - Cass > -----Original Message----- > From: Tom Forsyth [mailto:to...@mu...] > Sent: Friday, December 20, 2002 9:45 AM > To: gda...@li... > Subject: RE: [Algorithms] Yet another stencil shadow question > > > I was just pulling your leg there Cass :-) As you point out, > those bubbles are going to be huge. > > But I wonder if small, widely-separated strips would help > reduce some of the bubbles. One of the problems is that as > the mesh gets more tesselated, the number of non-degenerate > silhouette tris only grows O(sqrt(n)), whereas the number of > edges that aren't silhouettes (i.e. degenerate) grows O(n), > making bubbles in the pipe even worse. So you want to try to > get the big fillrate-heavy silhouette tris to be as evenly > distributed throughout the drawing sequence as you can. > > I'm not convinced that CPU silhouette edge-finding is the > answer. We've got much better things to do with the CPU. If > you only use degenerate tris where you need them, and smooth > ones where you don't, they only grow O(sqrt(n)) as well, or > maybe slower (since you tend to tesselate more on the > smoother sections). > > > Tom Forsyth - Muckyfoot bloke and Microsoft MVP. > > This email is the product of your deranged imagination, > and does not in any way imply existence of the author. > > > -----Original Message----- > > From: Cass Everitt [mailto:CEv...@nv...] > > Sent: 20 December 2002 15:13 > > To: 'gda...@li...' > > Subject: RE: [Algorithms] Yet another stencil shadow question > > > > > > > > Tom, > > > > FIFOs are certainly designed to cover some pipeline > bubbles of this > > nature, however, by introducing new independent vertexes for every > > face a vertex is part of you defeat post-T&L vertex cache, > which makes > > these bubbles pretty large. By changing the mix of cullable to > > non-cullable triangles from 1:1 (typical rendering with back-face > > culling) to 3:1 you further increase the size of the bubbles. > > > > If you consider the general GPU design, you're likely to become > > transform limited if you insert degenerate quads at every edge and > > increase the number of vertices by a factor of ~6. This is > especially > > true if you also have no fragment shading and only update > the stencil > > buffer because your rasterizer is likely running at peak rates. > > You're really counting on those extruded quads to even > everything out. > > > > In any case, you should measure the perf both ways. I'm doubtful > > that you'll find this kind of shadow volume generation strategy > > "free". Especially if you do things like vertex program skinning. > > > > > > Thanks - > > > > Cass > > > > > > > -----Original Message----- > > > From: Tom Forsyth [mailto:to...@mu...] > > > Sent: Friday, December 20, 2002 5:59 AM > > > To: gda...@li... > > > Subject: RE: [Algorithms] Yet another stencil shadow question > > > > > > > > > Are you implying your FIFOs aren't big enough to cope with > > > this sort of bubbling? :-) > > > > > > Hmmm... mad thought - maybe this is a case where you want to > > > go against the general practice and interleave small strips > > > that are as far apart on the model as possible? > > > > > > > > > Tom Forsyth - Muckyfoot bloke and Microsoft MVP. > > > > > > This email is the product of your deranged imagination, > > > and does not in any way imply existence of the author. > > > > > > > -----Original Message----- > > > > From: Cass Everitt [mailto:CEv...@nv...] > > > > Sent: 20 December 2002 06:04 > > > > To: 'gda...@li...' > > > > Subject: RE: [Algorithms] Yet another stencil shadow question > > > > > > > > > > > > > > > > Right - it's not just a given that your fill demands will > > > always cover > > > > the geometry transfer/tranform costs. Imagine if you > > rendered all > > > > "sliver quads" independent of the regular model faces. > > > Most of those > > > > triangles are going to be degenerate, so you'll spend a > > lot of time > > > > transferring and transforming vertices of degenerate > > triangles that > > > > ultimately starve the rasterizer for long periods. > > > > > > > > While this technique "works", it's really a sledgehammer > > approach. > > > > It's not particularly clever, elegant, or efficient. Doing > > > silhouette > > > > determination on the CPU is still the smart way to do it. > > > > > > > > > > > > Thanks - > > > > > > > > Cass > > > > > > > > > > > > > -----Original Message----- > > > > > From: Cem Cebenoyan > > > > > Sent: Thursday, December 19, 2002 3:32 PM > > > > > To: 'gda...@li...' > > > > > Subject: RE: [Algorithms] Yet another stencil shadow question > > > > > > > > > > > > > > > > (b) you're drawing stencil volumes, so 99% of the > time you're > > > > > > fillrate limited, not vertex limited. > > > > > > > > > > While I would agree with you that, in general, stencil shadow > > > > > volumes are fill-bound, note that certain shadow volumes > > > > > primitives will certainly be bound by something upstream of > > > > > rasterization in the rendering pipeline (likely vertex, maybe > > > > > setup). Namely, those that are back-face culled in the > > > > > traditional render front faces / increment and render > back faces > > > > > / decrement technique (or the equivalent zfail version). > > > > > > > > > > So, adding triangles would not be "free", as opposed > to a more > > > > > purely fill-bound scenario. > > > > > > > > > > -Cem > > > > > > > > > > > -----Original Message----- > > > > > > From: Tom Forsyth [mailto:to...@mu...] > > > > > > Sent: Thursday, December 19, 2002 2:39 PM > > > > > > To: gda...@li... > > > > > > Subject: RE: [Algorithms] Yet another stencil > shadow question > > > > > > > > > > > > > > > > > > True, but: > > > > > > > > > > > > (a) you only need to introduce degenerates where the mesh is > > > > > > coarse and/or sharp-edged. > > > > > > > > > > > > (b) you're drawing stencil volumes, so 99% of the > time you're > > > > > > fillrate limited, not vertex limited. > > > > > > > > > > > > > > > > > > Tom Forsyth - Muckyfoot bloke and Microsoft MVP. > > > > > > > > > > > > This email is the product of your deranged imagination, > > > and does > > > > > > not in any way imply existence of the author. > > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------- > > > > > This SF.NET email is sponsored by: Geek Gift Procrastinating? > > > > > Get the perfect geek gift now! Before the Holidays > pass you by. > > > > > T H I N K G E E K . C O M http://www.thinkgeek.com/sf/ > > > > > _______________________________________________ > > > > > GDAlgorithms-list mailing list > > > > GDA...@li... > > > > > https://lists.sourceforge.net/lists/listinfo/gdalgorithms-list > > > > > Archives: > > > http://sourceforge.net/mailarchive/forum.php?> forum_id=6188 > > > > > > > > > > > > > > > > > ------------------------------------------------------- > > > > This SF.NET email is sponsored by: Geek Gift > > > Procrastinating? Get the > > > > perfect geek gift now! Before the Holidays pass you by. > > > > T H I N K G E E K . C O M http://www.thinkgeek.com/sf/ > > > > _______________________________________________ > > > > GDAlgorithms-list mailing list > > > GDA...@li... > > > > https://lists.sourceforge.net/lists/listinfo/gdalgorithms-list > > > > Archives: > > > > http://sourceforge.net/mailarchive/forum.php?forum_id=6188 > > > > > > > > > > > > > ------------------------------------------------------- > > > This SF.NET email is sponsored by: The Best Geek Holiday Gifts! > > > Time is running out! Thinkgeek.com has the coolest gifts for > > > your favorite geek. Let your fingers do the typing. Visit Now. > > > T H I N K G E E K . C O M http://www.thinkgeek.com/sf/ > > > _______________________________________________ > > > GDAlgorithms-list mailing list > > > GDA...@li... > > > https://lists.sourceforge.net/lists/listinfo/gdalgorithms-list > > > Archives: > http://sourceforge.net/mailarchive/forum.php?> forum_id=6188 > > > > > > > > > ------------------------------------------------------- > > This SF.NET email is sponsored by: The Best Geek Holiday > Gifts! Time > > is running out! Thinkgeek.com has the coolest gifts for > > your favorite geek. Let your fingers do the typing. Visit Now. > > T H I N K G E E K . C O M http://www.thinkgeek.com/sf/ > > _______________________________________________ > > GDAlgorithms-list mailing list > GDA...@li... > > https://lists.sourceforge.net/lists/listinfo/gdalgorithms-list > > Archives: > > http://sourceforge.net/mailarchive/forum.php?forum_id=6188 > > > > > ------------------------------------------------------- > This SF.NET email is sponsored by: The Best Geek Holiday Gifts! > Time is running out! Thinkgeek.com has the coolest gifts for > your favorite geek. Let your fingers do the typing. Visit Now. > T H I N K G E E K . C O M http://www.thinkgeek.com/sf/ > _______________________________________________ > GDAlgorithms-list mailing list > GDA...@li... > https://lists.sourceforge.net/lists/listinfo/gdalgorithms-list > Archives: > http://sourceforge.net/mailarchive/forum.php?forum_id=6188 > ------------------------------------------------------- This SF.NET email is sponsored by: The Best Geek Holiday Gifts! Time is running out! Thinkgeek.com has the coolest gifts for your favorite geek. Let your fingers do the typing. Visit Now. T H I N K G E E K . C O M http://www.thinkgeek.com/sf/ _______________________________________________ GDAlgorithms-list mailing list GDA...@li... https://lists.sourceforge.net/lists/listinfo/gdalgorithms-list Archives: http://sourceforge.net/mailarchive/forum.php?forum_id=6188 ------------------------------------------------------- This SF.NET email is sponsored by: The Best Geek Holiday Gifts! Time is running out! Thinkgeek.com has the coolest gifts for your favorite geek. Let your fingers do the typing. Visit Now. T H I N K G E E K . C O M http://www.thinkgeek.com/sf/ _______________________________________________ GDAlgorithms-list mailing list GDA...@li... https://lists.sourceforge.net/lists/listinfo/gdalgorithms-list Archives: http://sourceforge.net/mailarchive/forum.php?forum_id=6188 |