Re: Silhouette determination for the world's shadowvolume

"Damian Coventry" <[email protected]> Mon, 19 Apr 2010 09:45:31 +1200
Newsgroups gmane.games.devel.algorithms
Message-ID <[email protected]>
Yup, some sort of "potentially shadowed set" scheme will have to be in
place, as well as 2D scissoring in view space before constructing the
volume.  If the idea is the same for the world mesh, then how would one
build the near and far caps for the shadow volume in order to make it a
closed volume?

 

The world is essentially self shadowing itself, so I guess you'd only
need to cap far end of the volume, and ignore the near end.  You'd have
to cap it, otherwise you'd have holes in your shadows.  Would one
project every polygon in the potentially shadowed set to infinity? Or is
there some other commonly used scheme to cap the far end of the volume?

 

Damian Coventry

Senior Software Developer

M86 Security

T: +64 9 984 5725

F: +64 9 984 5720

M: +64 21 539 839

 

From: Jeff Russell [mailto:[email protected]] 
Sent: Monday, 19 April 2010 9:19 a.m.
To: Game Development Algorithms
Subject: Re: [Algorithms] Silhouette determination for the world's
shadowvolume

 

Well, the shadow volume mesh topology rules really aren't any different
for light sources inside a mesh vs outside - as long as your geometry
faces inwards (and it will), the idea is the same (find and extrude
edges that border lit & unlit faces). Sometimes world geometry is stored
in funny ways depending on your game/engine (BSP trees or what have
you), that might make finding edges trickier, but the algorithm is the
same.

A good optimization for fill rate if you are using local light sources
is to make sure and only extrude shadow volumes for the areas of the
world that intersect the light's attenuation radius.

Jeff

On Sun, Apr 18, 2010 at 3:12 PM, Damian Coventry
<[email protected]> wrote:

Morning,

WRT shadow volumes, what's a common approach for determining the
silhouette for the world mesh?  Let's say it's an indoor only game. In
this case the camera and lights are both "inside" the world mesh, and
the world mesh is concave.

For the other meshes that move around inside the world, silhouette
determination is well documented - "The set of all edges that connect a
toward-face to an away-face form the silhouette with respect to the
light source. The edges forming the silhouette are extruded away from
the light to construct the faces of the shadow volume".

What about the world mesh though? My initial thoughts are to use all
world mesh polygons that don't face the light source, and create
individual shadow volumes for each polygon.  This would get costly if
the world mesh had many back facing polygons at any given time.  How
else is it done?


~Damian();


------------------------------------------------------------------------
------
Download Intel&#174; Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
GDAlgorithms-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/gdalgorithms-list
Archives:
http://sourceforge.net/mailarchive/forum.php?forum_name=gdalgorithms-lis
t




-- 
Jeff Russell
Engineer, 8monkey Labs
www.8monkeylabs.com

------------------------------------------------------------------------------
Download Intel&#174; Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev

_______________________________________________
GDAlgorithms-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/gdalgorithms-list
Archives:
http://sourceforge.net/mailarchive/forum.php?forum_name=gdalgorithms-list