If the user's computer provides no special hardware acceleration for 3-D operations, your application may emulate 3-D hardware in software. If the user's computer does not support MMX but has sufficient processing power, your application can create an RGB device. RGB devices emulate the functions of color 3-D hardware in software. Because an RGB device is software-emulated, it runs more slowly than a HAL device. It is also slower than an MMX device. For details, see Emulation Modes.
If the computer your application is running on provides MMX support, the IDirect3D3 interface will automatically create an MMX device when the program attempts to create an RGB device. For details, see MMX Device.
Applications create an RGB device with the IDirect3D3::CreateDevice function. Pass the value IID_IDirect3DRGBDevice as the first parameter. For additional information on creating Direct3D devices, see Creating a Direct3D Device.