Wednesday, 11 May 2011

Building a 3D model or Rapid Prototype from Zbrush

Zbrush has taken the design industry by storm. A digital sculpting and painting program, Zbrush has revolutionized the 3D industry with its powerful features and intuitive workflows. Used by animators, studios, artists and designers, a 3D model is easily created on screen. However, these can also be built, or printed, using rapid prototyping technology.

Building a physical 3D model is different to creating a 3D image on screen. On screen it doesn't matter if parts do not actually touch. When building a physical model, this is paramount. All items must touch, they must be able to be physically built and weighted to stand (if necessary).

An excllent article about this can be found at Zbrushcentral.com

Josh Harker, in an article at Zbrush Central, suggests 10 key factors when using Zbrush to create models for 3D printing:

1. Avoid extreme “wrinkles” in your mesh that overlap into a mess of polygons. Your surface does not need to be smooth but take care not to compromise the skin into a crumpled mess. This does not translate well into 3D and can render the file useless for printing.

2. All parts need to be “closed”. There can be no open holes or gaps in meshes. The .ZTL “Demo Head” for instance is not buildable as is. The bottom is completely open and the printers cannot read a zero thickness open skin. I had to close the bottom in another program and create an .STL from that.

3. When working with subtools you must combine all subtools before exporting. In a nutshell: “Make Polymesh 3D” of each subtool, then insert those PM3D’s (see “insert mesh” under “Geometry”) into a single tool & save the .ZTL or export as an .OBJ using the Quads setting. Subtools or components that can be separated from the model and attached physically after the build (swords, bases, guns, extended arms, hair, etc.) can all lower the models poly count by spreading it out over a few parts. This can also decrease the dimensional extents of the model which directly effects the printing costs.

4. Subtools need to overlap. If they are “line to line” or floating, they will lift off the model when its printed. This has not been a problem as far as overlapping meshes and multiple shells regarding file corruption since the intersections are clean and make sense as opposed to a wrinkled or crumpled mess of polygons. This is very apparent in the DemoSoldier file (see picture). If you take a close look at the .ZTL file you can see where the shoulder pads, goggles, backpack straps, etc are not well attached or are floating. The picture shows how those features ended up lifting off or breaking in the printed part. Image courtesy Josh Harker and ZbrushCentral.com

5. An exception to overlapping subtools is when you want the parts to be “attached” but not cohesive (i.e. chain links or other interlocked assemblies).

6. The lower the poly count the better. 2 million polys has proved to be nearly the maximum workable amount. Again, less is better. Model sizes should be 250MB MAX. There are a few ways to keep the file size (poly counts) under control:
- Decimate the poylgons/triangles data using Softimage XSI, Geomagic Studio or similar. We use Magics & MeshLab. MeshLab imports & exports .OBJ & .STL, effectively decimates the data, & is free! Unfortunately it likes to crash with larger files which kind of defeats the purpose but you can't really complain when it's free.

7. Try to foresee areas that may not need the mesh density of highly detailed areas & avoid dividing them. Technically speaking, the poly count or mesh density makes no difference to the machine as far as ability to build but the file sizes & processing times like to crash even the most robust workstations.

8. There is a point where, even when printing on a high resolution Objet Polyjet printer, the extreme detail of a highly subdivided model will never be reproduceable unless you were to create a monumentally large part from the file. You can always lower the resolution slider of highly subdivided models to a level appropriate for printing. A SDiv level of 4 or 5 seems to be plenty for even finely detailed models. Much lower SDiv levels (2 or 3) can be fine for simpler shapes.

9. What seems like a perfect fix is to create a new topology of the model without losing any details. I believe that is what Plakkie covers in his thread Topology & Flow Lab but I have had difficulty making use of this in any kind of reasonable time frame. Hopefully I’m simply missing the crux of how to effectively apply it. Anyone who is adept at this please post your secrets! It could help make the final prepped file infinitely better.

10. From there, import your OBJ into whatever software you may have and convert to an .STL. ready to be built using a RP processes.

If you have a project you would like to discuss, if you need further help converting files or you have a project ready for rapid prototyping, contact RapidPro at enquiries@rapidpro.com.au or call us on 1300 559 454.