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

Jon Watte <[email protected]> Thu, 8 May 2014 11:08:04 -0700
Newsgroups gmane.games.devel.algorithms
Message-ID <CAJgyHGNDEmQt=u+UiCwjd0ES+BVMD5raO6LFA9NpXt5E3mA=ig@mail.gmail.com>
--===============1982002346538952223==
Content-Type: multipart/alternative; boundary=001a11349750cb8fe004f8e75c03

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

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

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

<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>

--001a11349750cb8fe004f8e75c03--


--===============1982002346538952223==
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
--===============1982002346538952223==
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
--===============1982002346538952223==--