Next: 3.4 Interoperability Up: 3 Design Considerations Previous: 3.2 Orthogonality

3.3 Completeness

A 3D graphics API running on a system with a graphics subsystem should provide some means to access all the significant functionality of the subsystem. If some functionality is available but not provided, then the programmer is forced to use a different API to get at the missing features. This may complicate the application because of interaction between the two APIs.

On the other hand, if an implementation of the API provides certain features on one hardware platform, then, generally speaking, those features should be present on any platform on which the API is provided. If this rule is broken, it is difficult to use the API in a program that is certain to run on diverse hardware platforms without remembering exactly which features are supported on which machines. In platforms without appropriate acceleration, some features may be poor performers (because they may have to be implemented in software), but at least the intended image will eventually appear.


segal@asd.sgi.com
Fri Sep 23 17:28:42 PDT 1994