<p>I'd recommend using <a href="http://www.openvdb.org" rel="nofollow noreferrer">OpenVDB</a>. It's quite battle-tested.</p>

<p>Use <code>meshToVolume</code> to voxelize the mesh. Then use <code>volumeToMesh</code> to produce a high-quality quad mesh.</p>

<p><code>meshToVolume</code> voxelizes the mesh into a <a href="https://en.wikipedia.org/wiki/Signed_distance_function" rel="nofollow noreferrer">SDF</a>. <code>volumeToMesh</code> seems to use dual contouring / SurfaceNets.</p>

CC BY-SA 4.0
2018-10-05T17:57:53.560Z
2018-10-05T17:57:53.560Z
Taylor
<p>I have a quad-based 3D mesh. I want to:</p>

<ul>
<li>remesh it while keeping the shape the same</li>
<li>the end output should be in quads</li>
<li>ideally it should have a similar number of verts / polys as the input</li>
<li>ideally the remeshing would be random, and output mesh would be distinct from the input</li>
</ul>

<p>Right now I'm remeshing with Meshlab, which outputs tris. I then use the Tris to Quads function from Blender. The problem is that that function is not perfect, and leaves many tris. </p>

<p>So ideally there'd be a quad-based random remesh tool, but if anyone knows of a better tri-to-quad tool that would also be helpful?</p>

<p>Thank you.</p>

CC BY-SA 3.0
2018-02-15T01:40:17.160Z
What does it mean to "remesh" a mesh?
Nicol Bolas
CC BY-SA 3.0
2018-02-15T04:43:53.073Z
Typically those remeshers voxelize a mesh and then use algorithms like dual contouring to recreate a polygonal mesh. @NicolBolas It's usually a way to clean up the topology in modeling. For example, if you use boolean/CSG operations to create a mesh, the resulting topology might be nasty and not work so well for subdivision surfaces and might not be so suitable for sculpting (the control points might be unevenly distributed). "Remeshing" would keep the overall shape but give you a very uniform topology that can be easier to work with for some cases.
DataMatters
CC BY-SA 3.0
2018-02-16T20:43:52.527Z
Thanks @TeamUpvote. In this case I am not looking for uniform topology (necessarily), as I just want the meshes for machine learning purposes.
ganesha123
CC BY-SA 3.0
2018-02-17T05:21:19.370Z
It's a bit tricky -- mainly the fact that the input mesh is quad-based shouldn't matter so much, at least I can't think of remeshing algorithms that would care, so to speak -- only thing important typically is the output requirements. Voxelization followed by an algorithm to turn those voxels back into a polygonal mesh tends to be one of the most straightforward ways to do it with lots of control over the resolution of the results. Is Blender's remesh inadequate in some way? I think it's using the method I proposed: https://docs.blender.org/manual/en/dev/modeling/modifiers/generate/remesh.html
DataMatters
CC BY-SA 3.0
2018-02-17T09:05:36.267Z
When I used that tool, either it would lose the quality of the mesh (shape was distorted). To avoid that it lets you increase the poly count, but to keep the shape the same you need to blow up the poly count by 10x or more.
ganesha123
<mesh>
Best way to remesh a quad 3D mesh?
ganesha123
# Best way to remesh a quad 3D mesh?

(Asked by: username_0 on 2018-02-14)

I have a quad-based 3D mesh. I want to:

* remesh it while keeping the shape the same
* the end output should be in quads
* ideally it should have a similar number of verts / polys as the input
* ideally the remeshing would be random, and output mesh would be distinct from the input

Right now I'm remeshing with Meshlab, which outputs tris. I then use the Tris to Quads function from Blender. The problem is that that function is not perfect, and leaves many tris.

So ideally there'd be a quad-based random remesh tool, but if anyone knows of a better tri-to-quad tool that would also be helpful?

Thank you.

**Tags:** mesh

> **Comments:**
> **username_1**: What does it mean to "remesh" a mesh?  
> **username_2**: Typically those remeshers voxelize a mesh and then use algorithms like dual contouring to recreate a polygonal mesh. @username_1 It's usually a way to clean up the topology in modeling. For example, if you use boolean/CSG operations to create a mesh, the resulting topology might be nasty and not work so well for subdivision surfaces and might not be so suitable for sculpting (the control points might be unevenly distributed). "Remeshing" would keep the overall shape but give you a very uniform topology that can be easier to work with for some cases.  
> **username_0**: Thanks @TeamUpvote. In this case I am not looking for uniform topology (necessarily), as I just want the meshes for machine learning purposes.  
> **username_2**: It's a bit tricky -- mainly the fact that the input mesh is quad-based shouldn't matter so much, at least I can't think of remeshing algorithms that would care, so to speak -- only thing important typically is the output requirements. Voxelization followed by an algorithm to turn those voxels back into a polygonal mesh tends to be one of the most straightforward ways to do it with lots of control over the resolution of the results. Is Blender's remesh inadequate in some way? I think it's using the method I proposed: https://docs.blender.org/manual/en/dev/modeling/modifiers/generate/remesh.html  
> **username_0**: When I used that tool, either it would lose the quality of the mesh (shape was distorted). To avoid that it lets you increase the poly count, but to keep the shape the same you need to blow up the poly count by 10x or more.  

---

## 1 answers

### Answer by username_3 on 2018-10-05. Score: 4

I'd recommend using [OpenVDB](http://www.openvdb.org). It's quite battle-tested.

Use `meshToVolume` to voxelize the mesh. Then use `volumeToMesh` to produce a high-quality quad mesh.

`meshToVolume` voxelizes the mesh into a [SDF](https://en.wikipedia.org/wiki/Signed_distance_function). `volumeToMesh` seems to use dual contouring / SurfaceNets.


---

