Re: CSG operations on textured meshes -- something better than CGAL?

Robin Green <[email protected]> Thu, 8 May 2014 12:08:40 -0700
Newsgroups gmane.games.devel.algorithms
Message-ID <CAKwBWcCxdsA5ZkT7KwZrdP2LqnQbUJ8Y3y+yYMh4uATVq7wKig@mail.gmail.com>
--===============2896997145520491790==
Content-Type: multipart/alternative; boundary=001a113b574288635704f8e8358b

--001a113b574288635704f8e8358b
Content-Type: text/plain; charset=UTF-8

May I suggest another route?

Implicit surfaces provide the kind of distance-field and union operations
you need quite simply, and the results can be polygonalized using extremely
robust, mature libraries.
I know implicit surfaces haven't been a hot topic at Siggraph for years,
but they are still useful for solving specific problem sets.

- Robin Green.


On Thu, May 8, 2014 at 11:08 AM, Jon Watte <[email protected]> wrote:

> I have a triangle mesh composed of many submeshes with different
> textures/materials. This mesh may not be a 2-manifold -- it may have open
> edges. Typical game art.
>
> I now want to create a 3mm thick shell of this mesh. As an approximation,
> taking each triangle, and extrude it back along the normal of each vertex,
> and union all of those generated chopped pyramids would be an approximation
> of what I want. If I do literally that, and self-union the result, then
> that should resolve the self-intersection problems I'll run into along
> narrow sharp creases etc.
>
> I can't find any library to do this, though. CGAL has some fairly robust
> functions on NEF polyhedra, but those polyhedra don't seem to allow
> parameterization (which is academic speak for texture coordinates that may
> have discontinuities across edges.)
>
> So, what are some robust CSG libraries available that work on such
> game-style meshes, preserving texture coordinates?
>
> (And actually, I don't have one such mesh; I have > 120 million such
> meshes, so a by-hand or even script-the-Max-shell-modifier solution is
> unlikely to work. I do have hundreds of Linux servers at my disposal,
> though.)
>
>
> Sincerely,
>
> Jon Watte
>
>
> --
> "I find that the harder I work, the more luck I seem to have." -- Thomas
> Jefferson
>
>
> ------------------------------------------------------------------------------
> Is your legacy SCM system holding you back? Join Perforce May 7 to find
> out:
> &#149; 3 signs your SCM is hindering your productivity
> &#149; Requirements for releasing software faster
> &#149; Expert tips and advice for migrating your SCM now
> http://p.sf.net/sfu/perforce
> _______________________________________________
> 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
>

--001a113b574288635704f8e8358b
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">May I suggest another route?<div><br></div><div>Implicit s=
urfaces provide the kind of distance-field and union operations you need qu=
ite simply, and the results can be polygonalized using extremely robust, ma=
ture libraries.</div>
<div>I know implicit surfaces haven&#39;t been a hot topic at Siggraph for =
years, but they are still useful for solving specific problem sets.</div><d=
iv><br></div><div>- Robin Green.</div></div><div class=3D"gmail_extra"><br>
<br><div class=3D"gmail_quote">On Thu, May 8, 2014 at 11:08 AM, Jon Watte <=
span dir=3D"ltr">&lt;<a href=3D"mailto:[email protected]" target=3D"_blank">=
[email protected]</a>&gt;</span> wrote:<br><blockquote class=3D"gmail_quote"=
 style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir=3D"ltr">I have a triangle mesh composed of many submeshes with dif=
ferent textures/materials. This mesh may not be a 2-manifold -- it may have=
 open edges. Typical game art.<div><br></div><div>I now want to create a 3m=
m thick shell of this mesh. As an approximation, taking each triangle, and =
extrude it back along the normal of each vertex, and union all of those gen=
erated chopped pyramids would be an approximation of what I want. If I do l=
iterally that, and self-union the result, then that should resolve the self=
-intersection problems I&#39;ll run into along narrow sharp creases etc.</d=
iv>

<div><br></div><div>I can&#39;t find any library to do this, though. CGAL h=
as some fairly robust functions on NEF polyhedra, but those polyhedra don&#=
39;t seem to allow parameterization (which is academic speak for texture co=
ordinates that may have discontinuities across edges.)</div>

<div><br></div><div>So, what are some robust CSG libraries available that w=
ork on such game-style meshes, preserving texture coordinates?</div><div><b=
r></div><div>(And actually, I don&#39;t have one such mesh; I have &gt; 120=
 million such meshes, so a by-hand or even script-the-Max-shell-modifier so=
lution is unlikely to work. I do have hundreds of Linux servers at my dispo=
sal, though.)<br clear=3D"all">

<div><div dir=3D"ltr"><font face=3D"courier new, monospace"><br><br><font>S=
incerely,</font><br><br><font>Jon Watte</font><br><br><br>--<br>&quot;<span=
 style=3D"color:rgb(0,0,0)">I find that the harder I work, the more luck I =
seem to have.&quot; -- Thomas Jefferson</span></font></div>

</div>
</div></div>
<br>-----------------------------------------------------------------------=
-------<br>
Is your legacy SCM system holding you back? Join Perforce May 7 to find out=
:<br>
&amp;#149; 3 signs your SCM is hindering your productivity<br>
&amp;#149; Requirements for releasing software faster<br>
&amp;#149; Expert tips and advice for migrating your SCM now<br>
<a href=3D"http://p.sf.net/sfu/perforce" target=3D"_blank">http://p.sf.net/=
sfu/perforce</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></div>

--001a113b574288635704f8e8358b--


--===============2896997145520491790==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

------------------------------------------------------------------------------
Is your legacy SCM system holding you back? Join Perforce May 7 to find out:
&#149; 3 signs your SCM is hindering your productivity
&#149; Requirements for releasing software faster
&#149; Expert tips and advice for migrating your SCM now
http://p.sf.net/sfu/perforce
--===============2896997145520491790==
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
--===============2896997145520491790==--