1.7. Guidelines

The flexibility of the pipeline architecture exerts a strong influence on how components are designed and deployed in K-3D. In particular, the pipeline places a strong premium on creating small, generic components instead of large, specialized components. If a process can be broken-down into smaller steps, it should be - this makes it possible to substitute different components for individual steps in the process. In this way users often come-up with surprising new ways of combining components to achieve interesting effects, something we wish to encourage.

In general, you should not be concerned about the user complexity of “hooking up” a pipeline composed of simple components - if a particular combination of components becomes ubiquitous, we will add logic to K-3D’s user interface layer to simplify creating it. Many complex pipeline-manipulation operations are "hidden" from users by the UI layer, but we always want to provide "power" users with the flexibility to setup the pipeline themselves.