Re: mesh to 3D texture?
Michael Hamlin <[email protected]> Thu, 25 Aug 2011 10:43:47 -0700
| Newsgroups | gmane.games.devel.algorithms |
|---|---|
| Message-ID | <CADDqggfQCoWkxVoUt0FgUzDav+F3hzZy-9qTk9XtQCTO5LCenw@mail.gmail.com> |
--===============0291606472977216769== Content-Type: multipart/alternative; boundary=20cf305638e39299ff04ab57f877 --20cf305638e39299ff04ab57f877 Content-Type: text/plain; charset=ISO-8859-1 I've not personally done this work but do recall a few papers I've read on the topic. The following paper should be particularly germane. It details an approach for one pass solid voxelization. It also describes a method for determining a density field from which you can derive normal data. I imagine depending on your buffer width you could record encoded normal and color samples in the first pass, though this data only really is meaningful for the isosurface itself. http://artis.imag.fr/Publications/2008/ED08a/solidvoxelizationAuthorVersion.pdf Some more reading, though I've not read this paper in depth. http://www.mpi-inf.mpg.de/~mschwarz/papers/vox-siga10.pdf -Michael On Thu, Aug 25, 2011 at 10:04 AM, Jeff Russell <[email protected]>wrote: > So, suppose that I wanted to voxelize a mesh into a regular 3D grid (a 3D > texture on the GPU, fairly low res, something like 64^3). At each point I'd > like to have access to color, a (rough) surface normal, and some kind of > indicator of whether the space is "empty" or "filled". > > Is there some clever way I can use GPU rasterization to fill it (ideally > keeping the whole process on the GPU)? I thought about rendering the mesh in > slices with very narrow front and back clip planes, once for each slice of > the 3D texture, but it seems like there could be issues with polygons > perpendicular to my z axis not showing up, creating holes... > > Any advice? > > -- > Jeff Russell > Engineer, 8monkey Labs > www.8monkeylabs.com > > > ------------------------------------------------------------------------------ > EMC VNX: the world's simplest storage, starting under $10K > The only unified storage solution that offers unified management > Up to 160% more powerful than alternatives and 25% more efficient. > Guaranteed. http://p.sf.net/sfu/emc-vnx-dev2dev > _______________________________________________ > 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 > --20cf305638e39299ff04ab57f877 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable I've not personally done this work but do recall a few papers I've = read on the topic.<br><br>The following paper should be particularly german= e. It details an approach for one pass solid voxelization. It also describe= s a method for determining a density field from which you can derive normal= data. I imagine depending on your buffer width you could record encoded no= rmal and color samples in the first pass, though this data only really is m= eaningful for the isosurface itself.<br> <a href=3D"http://artis.imag.fr/Publications/2008/ED08a/solidvoxelizationAu= thorVersion.pdf">http://artis.imag.fr/Publications/2008/ED08a/solidvoxeliza= tionAuthorVersion.pdf</a><br><br><br>Some more reading, though I've not= read this paper in depth.<br> <a href=3D"http://www.mpi-inf.mpg.de/~mschwarz/papers/vox-siga10.pdf">http:= //www.mpi-inf.mpg.de/~mschwarz/papers/vox-siga10.pdf</a><br><br>-Michael<br= ><br><div class=3D"gmail_quote">On Thu, Aug 25, 2011 at 10:04 AM, Jeff Russ= ell <span dir=3D"ltr"><<a href=3D"mailto:[email protected]">jeffdr@= 8monkeylabs.com</a>></span> wrote:<br> <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p= x #ccc solid;padding-left:1ex;">So, suppose that I wanted to voxelize a mes= h into a regular 3D grid (a 3D texture on the GPU, fairly low res, somethin= g like 64^3). At each point I'd like to have access to color, a (rough)= surface normal, and some kind of indicator of whether the space is "e= mpty" or "filled".<br> <br>Is there some clever way I can use GPU rasterization to fill it (ideall= y keeping the whole process on the GPU)? I thought about rendering the mesh= in slices with very narrow front and back clip planes, once for each slice= of the 3D texture, but it seems like there could be issues with polygons p= erpendicular to my z axis not showing up, creating holes...<br> <br>Any advice?<br clear=3D"all"><font color=3D"#888888"><br>-- <br>Jeff Ru= ssell<br>Engineer, 8monkey Labs<br><a href=3D"http://www.8monkeylabs.com" t= arget=3D"_blank">www.8monkeylabs.com</a><br> </font><br>----------------------------------------------------------------= --------------<br> EMC VNX: the world's simplest storage, starting under $10K<br> The only unified storage solution that offers unified management<br> Up to 160% more powerful than alternatives and 25% more efficient.<br> Guaranteed. <a href=3D"http://p.sf.net/sfu/emc-vnx-dev2dev" target=3D"_blan= k">http://p.sf.net/sfu/emc-vnx-dev2dev</a><br>_____________________________= __________________<br> GDAlgorithms-list mailing list<br> <a href=3D"mailto:[email protected]">GDAlgorithms-lis= [email protected]</a><br> <a href=3D"https://lists.sourceforge.net/lists/listinfo/gdalgorithms-list" = target=3D"_blank">https://lists.sourceforge.net/lists/listinfo/gdalgorithms= -list</a><br> Archives:<br> <a href=3D"http://sourceforge.net/mailarchive/forum.php?forum_name=3Dgdalgo= rithms-list" target=3D"_blank">http://sourceforge.net/mailarchive/forum.php= ?forum_name=3Dgdalgorithms-list</a><br></blockquote></div><br> --20cf305638e39299ff04ab57f877-- --===============0291606472977216769== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline ------------------------------------------------------------------------------ EMC VNX: the world's simplest storage, starting under $10K The only unified storage solution that offers unified management Up to 160% more powerful than alternatives and 25% more efficient. Guaranteed. http://p.sf.net/sfu/emc-vnx-dev2dev --===============0291606472977216769== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ 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 --===============0291606472977216769==--