I'm proposing the following guidelines for a good DC based on an actual product (example - the Marvin DC windows collection). As manufacturers move toward providing their content as SketchUp components or as some of the DC producers out there go about their business, they observe good modeling practices. This is a general outline I have been working on, and I was hoping to get some input/feedback from the community:
The model and all model geometry should live on the zero layer
When component models are loaded into the larger building model, it is important not to upset the layer conventions being used by the designer. Many models available today break this rule, containing multiple layers for different aspects of the model, with lax naming conventions, etc. A correctly built component will live on 'Layer 0', preserving the overall models layer structure.
The model should be made up of nested sub-components and groups.
The model should contain proper part/company/info
This information is what drives the purchase of the physical part - extremely useful to designers and builders, it ensures that the proper information is represented both physically and numerically. Short of being a sales pitch, this section should contain just the facts about the product.
Colors should be accurate, selectable, and optimized
Within the component options should be embedded the color options/combinations represented in the correct hues for the product. This allows the designer to experiment with the correct colors and textures (ex- wood styles) while being confident that the colors will represent what the actual product colors will be.
An overlooked facet of texture/color embedding is the texture optimization - this means that textures embedded in the model should be detailed enough to convey the look and feel of the product, but not overly detailed so that they artificially inflate the size of the overall model.
One dynamic component model should represent an entire product line and the available options
Each product line should be represented by one dynamic model containing the possible sizes, colors, installation details, and other options. This frees the designer in a few important ways: it makes the model easier to locate initially because instead of searching through all 100 combinations of a particular product to find the right one he can download one model that allows option of selecting and combining different combinations. It also speeds updating and review of the model, as no additional searching/downloading of a different sized components, simply select and update the existing component in the model.
Components should contain links to manufacturing company's website
For ordering/product information.
Components should contain the correct amount of detail
This is a judgement call, but should allow any rendering to be accurate, but should not so 'heavy' as to weight down the model it is being loaded into.
Models should contain a link to AutoCAD details and product specs
Ideally these would be hosted on the Sweets.com network or similar site
Models should be tagged and easy to find
The 3D warehouse can be a jungle - make it easier to find your components by clearly tagging them and making sure the picture that appears in the 3DW is clear.
Model boundaries should represent scalable endpoints
This is less of an issue in dynamic components with selectable size options or disabled scaling handles, but nothing is more annoying than trying to stretch a door or window with installation tabs on it, making it all but impossible to stretch it to the opening in your wall, etc.
Materials should be named appropriately, with translucent/transparent/light emitting materials properly defined
Component and material naming is important to producing models that translate well to rendering and other programs (revit, kerkythea, etc).
I'm sure there are many other things that make a good DC collection - I would like to build a comprehensive list - a 'grading' system if you will to help define good characteristics of good component models. I think this is a big step to having a strong set of dynamic components that represent real-life products, my crusade to helping SU compete with much of the other software out there. Our advantage over other software will be when we have a robust, accurate, reliable library of components to work from. But before we can get there, we need to know what it is that we're shooting for.