A Note on Subdivision Surfaces

One of my biggest qualms about methods for geometry creation in rhino and grasshopper is that most users do not take the time to construct good meshes or NURBS surfaces. When learning a program such as 3ds Max or Maya, we try to construct with quads, to consider edge flow, to avoid self intersections – and these are all good practices, but they don’t translate as well into some instances.

If you’ve ever used the marching cubes algorithm for creating a mesh isosurface, or the mesh machine tool, or tried converting a trimmed surface or BRep into a mesh, more often than not you are going to end up with a pretty ghastly looking mesh composed of irregular triangles. I’d ask you to put more thought into your creation, think about the construction of the geometry, avoid booleans, try create objects out of untrimmed surfaces and then compare the results later.

Of course, that’s not to say you shouldn’t use these methods, I’ve found many good uses for them, and there are times when they are unavoidable. However it may be a good idea to look at how you could retopologise these items later, I’ve had to do this many a time and Maya provides excellent toolsets for redrawing meshes, I did so with my latest efforts from mesh machining:

Another reason (and the main reason I want to stress) why it is good to construct meshes out of quads is that it makes subdividing the geometry so much easier! When it came to render time, my triangular mesh needed 300,000 polygons to achieve a smoother look, while the quad mesh could do a much cleaner result with only 10,000 polygons, meaning my renders were much faster and I could spend more time on look development.

Furthermore, you can very quickly see the difference between the way the meshes deal with the caustic patterns, the quad mesh creates a much much cleaner result of the refracted light than its triangular counterpart.

I should also point out at this stage that there are two different algorithms which can be used for subdividing. The first and much more widely used is the Catmull-Clark subdivision method. Developed in 1978 by Edwin Catmull and Jim Clark, the Catmull Clark subdivision method is available in most modelling programs, as it works very well with quad meshes and gives very good very smooth results. On the other hand, if you are still hell bent on using triangular meshes, some packages offer the loop subdivision method, which works much better on triangles and more topologically irregular geometries.

Leave a Reply