refactoring devices to use a common mixing for rendering