Developers interact with kernel primitives while the primitives interact with a graphics subsystem.
Although the two forms of interaction closely relate, their optimal designs conflict. This papers describes RDI, an object-oriented graphics kernel that resolves the differences between the two interactions with one design. Developers explicitly assign intuitive relationships between primitives while an underlying process interprets the primitives in an orderly manner. The kernel's extensible design decouples the processes of modeling and rendering. Primitives dynamically communicate with graphics subsystems to express their purpose and functions.