The best three-dimensional (3D) drawing program ultimately is one that will produce the type of output needed for a specific purpose. Broadly, the features of any given 3D drawing program can be divided into those that relate to modeling and those that relate to rendering. For basic 3D drawing, programs that work only with geometric primitives such as cubes, spheres and text can be useful, because they do not have a vast bank of tools that might be more confusing than useful. Alternately, for applications such as character modeling and terrain generation, a 3D drawing program that includes advanced mesh-manipulation tools and functions such as lathing non-uniform relational B-splines (NURBS) can make finished models look more fluid and dynamic. When a model is finished, the ability of the 3D drawing program to render the model, either as a static image or as an animation, should be considered because the functionality in this area from one program to the next can vary greatly.
One of the most important aspects in choosing a 3D drawing program is the complexity of the modeling interface. Most programs provide basic modeling tools and pre-generated primitives, fonts and materials. For more complex shapes that might need to be constructed polygon by polygon with individual triangles, a modeling program that supports mesh editing is vital. Additionally, for animation, a few more advanced 3D programs allow for vertex weighting and skeleton systems so models can be maneuvered and animated in a consistent and realistic fashion. The file formats that are supported in the drawing program should be compatible with any external programs being used, because it can be frustrating to attempt to convert a 3D scene or model between the many available formats.
Once a model is completed, it might need to be rendered to create a final image or animation. Some programs provide an integrated renderer, while others have specific methods for using an external renderer or exporting files into a separate rendering file format. If a 3D drawing program uses an internal rendering engine and does not provide a way to specify an external renderer, then the quality of the internal renderer needs to be assessed carefully to ensure that it can create useable images and that it manages textures well.
Depending on the scope of the project to be created in the 3D drawing program, the restrictions of the program should be examined. For various reasons, some 3D drawing programs have limits on the amount of vertices, polygons or even objects that can be contained in a scene. In a small scene, this might not be an issue. With a larger scene, however, this could lead to a reduction in quality or the inability to create a scene as it is envisioned.