Forum

Author Topic: how to split a mesh into multiple pieces and export them into multiple files?  (Read 6686 times)

yowich

  • Newbie
  • *
  • Posts: 46
    • View Profile
Hi,
I wonder if there is a way that I can split a mesh into multiple pieces and export them into multiple 3d model files. I have a mesh with more than 58 million of which OBJ sizes about 8 GB and PLY sizes about 3 GB. I have tried to import the model into Blender, MeshLab, or 3d Coat, but they failed to import it due to an insufficient memory. If I can split the model and export the pieces into the multiple 3d model files, then I can perform a retopology separately and merge them again.

Best,

yowich

  • Newbie
  • *
  • Posts: 46
    • View Profile
Yes, I know that I can duplicate a chunk and then use the bounding box to clip. But splitting it using my hand does not provide a seamless boundary but rather may give a duplicate area. What I want to do is to create pieces of a model with a seamless boundary.

FredR

  • Guest
Maybe decimate the mesh ?

cyrilp

  • Jr. Member
  • **
  • Posts: 86
    • View Profile
still no answer for that question ?

3create

  • Newbie
  • *
  • Posts: 36
    • View Profile
    • 3create
There's the script "split in chunks.py" on Github for not manually having to split the scene into chunks.

But dealing with highres meshes is a general pain point. Is there an advantage for retopolgy (with more animatable/UV-editable quad-layout) of your scene, or would a mesh decimation in Agisoft be enough (or better, due to curverture based reduction)?

Guy

Bzuco

  • Full Member
  • ***
  • Posts: 213
    • View Profile
It is old topic, but with recent Meshlab version it should be no problem.
I tried import 47M poly object from 1.1GB PLY file, and it loaded in few seconds. RAM increases from 1.9GB to 7.4GB and VRAM from 300MB to 1380MB...so plenty of headroom for larger meshes.
Be sure to use only binary formats like PLY, FBX,... Do not use text based formats like OBJ,STL,...because parse position/rotation/vertexColor/normal... values from text based representation costs much more time and RAM memory.
For smooth orbiting around object it is necessary to change default option(MaxGpuMemDedicatedToGeometry) from 350MB to something 7500MB (on 8GB VRAM GPU).
Then for splitting mesh is good to use function from menu - Filters - Selection - Conditional face selection - and type condition e.g. "(z0<1000 && z0>300)"  to select faces between 300-1000 z position. Then invert selection, delete and export mesh...  OR  Filters - Mesh Layer - Move selected faces to another layer - and export only that layer.