How Accurate is 3D Software?

titleimage

Time for some concept building! Sometimes people ask me “What’s the most accurate CAD software?” or “How precise is [software package]?”. The real answer is a little longer than I can give in person, so I wanted to write it out here to really explain it to people.

Accuracy vs. Precision

Accuracy refers to the closeness of a measured value to a standard or known value. Precision refers to the closeness of two or more measurements to each other. So for instance, if I created a 3D extrusion of a hollow tube that was 20 feet long in real life. If I made it 10 feet, I would be inaccurate, but if I produced that same extrusion over and over again, all of which were 10 feet long, then I would be very precise. If I were to make it 20 feet long and do it over and over again, I would be both accurate, and precise.

For a more visual explanation, check out this graphic;

Accuracy vs. Precision. Image from “Mr. Evans’ Science Website”.

 

Virtually all 3D modeling applications, regardless of their intended use, are capable of this degree of accuracy and precision. They are computer programs, after all, and most will let you type in a numeric value for a modeling operation.

solidworksmeasurement

SolidWorks has an interface and modeling technique that is centered around building models based on real-world measurements.

All 3D software is accurate and precise. The questions of “How precise is it?” or “How accurate is it?” are really the wrong question to be asking when you’re trying to learn more about a piece of software, because a modern piece of software will be as accurate as you need it to be – for what you’re doing. What you should be asking is “What is it good at building?”. A follow up question could be “Does it have direct or parametric modeling?”

All things are the same, all things are different

All 3D software can build all things. You don’t need a special type of software to design and build a water bottle, for instance. You can use any software you have on hand. What it comes down to, typically is degrees of difficulty.

For example; making a curved organic mesh in SolidWorks or Sketchup takes an extra level of familiarity and skill with the software than it would take in a package like ZBrush or Maya.

From the other side of things, keeping track of the dimensions, tolerances, and drafts required for production is more difficult in the latter two packages than in the former two.

3D models are 3D models, no matter what package they’re built in. However, different packages offer different advantages in workflow over others for different applications.

Software that is based on direct modeling emphasizes speed over precisely inputting numeric values, and so these modelers typically have handles that you can grab and pull around. Some examples include Maya, modo, and Fusion 360.

Software that is based on parametric modeling emphasizes numeric measurement entry and the ease of modifying previously built models. Some examples include SolidWorks, OnShape, and Inventor.

 

Why do Designers & Engineers use Engineering Software?

When designing a real-world object, one must have accurate knowledge of its size and the relationships between different components. While most 3D software offers the knowledge of how big an object is, its dimensions, etc, engineering tools allow for finer-grain analysis of objects – from how long an edge is, to the volume of a body, even to how producible the part is.

As an example, when an object is to be produced in a mold, the sides of it must be angled by what is called the “draft angle“. This allows the part to be removed from the mold (called the “tool”). Engineering software like SolidWorks and Rhino will actually color-code different surfaces to show whether or not they meet the required draft angle. Capabilities like this allow engineers and designers to visually see whether or not their part can actually be made, and are critical to the design process.
One of the other key advantages to engineering software is that they are typically designed to work with NURBS or Parasolids to create their geometry. The main advantage of this is precision; edges and boundaries between surfaces can be precisely defined and controlled. With NURBS and Parasolids, it’s easy to create a line that’s exactly 3 inches long and then extrude that curve into a surface that’s exactly 5″ wide. It’s not impossible to do this with polygons or subdivision surfaces – it’s just a bit harder sometimes.
 

Parasolid and NURBS based models have much greater control over surface blending and fidelity - critical in mass-produced parts.

Parasolid and NURBS based models have much greater control over surface blending and fidelity – critical in mass-produced parts.

NURBS models give you more control than poly modeling, however they come with the same problem that polygon models do – namely, they are considered to be a series of connected surfaces, and thus are not innately “watertight” (3D printable/machineable) – so to make sure they will work, you have to actually check to make sure – either visually or with the included tools of your chosen software package.
This model looks like a solid, but if we take a cross-section we can see that it's not. It could also not be watertight - we don't know without examining it.

This model looks like a solid, but if we take a cross-section we can see that it’s not. It could also not be watertight – we don’t know without examining it.

However, should you want to make sure your model is not only manufacturable, but also get estimates of its total weight, displacement, etc, you’re going to want to use a solid modeling package instead.
This cross-section of a solid model shows that nomatter where we slice, there will be "material". The model is considered to be an actual volume.

This cross-section of a solid model shows that nomatter where we slice, there will be “material”. The model is considered to be an actual volume.

 
Solid models are considered, well, “solid” by the computer. They are defined by the intersections of infinite surfaces in a 3d world. This means that they are always “watertight” (can be 3D printed), and because of how they’re calculated on the backend, it makes determining volumetric calculations relatively easy.

Why do Artists & Designers use Computer Graphics Software?

Computer Graphics artists have an entirely different set of requirements for their models. They don’t require them to be produceable or even be possible in reality – they just have to “look right”. This software is also typically used by artists, so often speed of creation is placed above outright accuracy. That’s not to say it can’t be accurate (point of this article), but the tools are developed with an emphasis on speed and quick turnaround time.

Part of this emphasis on speed focuses on direct editing of a model – grabbing individual vertices and faces and moving them around using floating widgets or “Meatballs”. One of the biggest innovations in the past 10 years or so has been the introduction of Subdivision Surface Modeling. Traditional polygon modeling means that to smooth out a model, you have to add more polygons – eventually creating a model that is cumbersome and difficult to work with.

This model is very smooth  - but all those triangles would be really cumbersome to work with directly!

This model is very smooth and detailed – but all those triangles would be really cumbersome to work with directly!

Subdivision modeling uses a low-polygon “Cage” and then automatically adds in extra detail, smoothing out the model without adding in extra control points. In this way, modelers can create smooth, realistic models much more easily than before; a necessity when many games and movies have a myriad of organic objects, from characters to plants.

This model has the same level of smoothness, but it is "virtual" and broken into larger chunks that are easier to work with. The green lines are the low polygon "control cage".

This model has the same level of smoothness, but it is “virtual” and broken into larger chunks that are easier to work with. The green lines are the low polygon “control cage”.

Other requirements include the need for texturing (giving models a color so they look more realistic), animation, and rendering (both still images and full motion videos). These requirements are unique to computer graphics, and the software has developed to include tools for these capabilities. 

Modeling for 3D Printing

Regardless of what software you use, remember that a 3D model is just a 3D model, no matter what package it came from. When a 3D printer or a CNC machine gets a 3D model, it must be triangulated anyway, so all that stuff about subdivision modeling and NURBS modeling doesn’t really matter anymore; the model has the geometry it will have when it comes out of the machine, and the conversion process turns it into a mesh of triangles. So if you created it in polygons to begin with, great, there’s no change – if you created it with NURBS, those surfaces will get turned into polies. Once again;
Whenever you want to produce something, it will always end up as a triangulated model.

So it’s technically feasible, with a polygon-only program, to create a model just as detailed and useful as an engineering model. Would you want to? Probably not, unless you really had to. But the point of this article is just to reinforce to readers that all 3D software is accurate and capable, it just depends on what you want to use it for.

I always like to use the analogy of a toolbox, where each piece of software is a different tool that is good at a different task. You have screwdrivers, hammers, and saws, in the same way you have software for solid, subdivision, and surface modeling.

A good 3D modeler will often have several programs in their toolbox, and each program specializes at a different task. There are no programs out there that are truly good at everything, and even if there were (and some do come close), you would still need other supporting software.

So what should You do?

Decide what path you want to follow – Computer Graphics or Product Design/Engineering. This isn’t meant to pidgeonhole you, but it will give you a starting point that’s closer to your end goal. Alternatively, from what I’ve described here, pick a workflow method that you feel you would resonate best with – parametric or direct.

From there, I would recommend trying every piece of software you can get your hands on. Most if not all software companies will offer a free demo or trial, so get out there and grab every piece of software you can get your hands on. Pick the one that resonates with you the most, master it, and when you feel that you need to move on or have reached the limits of that software, move on up.
Many people recommend that if you know you want to go professional with 3D modeling, then to start working directly with those professional software packages – so start out with Maya, SolidWorks, etc, right off the bat. If you want to/can, definitely do that. But by trying other packages on the market, you’ll get a feel for what’s out there, and see “over the wall”, so to speak. You’ll also be more adaptable, and recognize the strengths of other programs vs. your own – who knows, you might even pick up another tool for your tool box.


 

One thought on “How Accurate is 3D Software?

  1. This is a highly informative piece. Thanks Jordan! I have been interested in dabbling in 3D printing and that section was helpful.

Leave a Reply to Sarah Cancel reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>