Direct3D es un componente del marco de Microsoft DirectX . Proporciona una interfaz consistente para acceder a los dispositivos de hardware y software 3D y y se controla mediante un lenguaje de programación que cuenta con el apoyo directo o envoltura de base para ello. Programación en entornos 3D requiere el establecimiento de un tubo al dispositivo Direct3D representación temprano en la ejecución de código para que la información se puede escribir en el sistema para la modificación y visualización . Conocido como IDirect3DDevice9 , esta interfaz es extensible y derivado de la interfaz IUnknown Component Object Model . Esto le permite dibujar primitivas a través de código , los recursos de carga y los objetos complejos , modificar variables de aplicación , ajustar gamma y la configuración de la paleta de color y aplicar shaders a sus texturas . Instrucciones
1
Crear una estructura en el código que define todos los parámetros con los que se inicializa el dispositivo Direct3D . El API DirectX define una estructura conocida como D3DPRESENT_PARAMETERS que contiene todos los campos pertinentes . Consulte el archivo de ayuda del SDK de D3DPRPESENT_PARAMETERS y el constructor IDirect3DDevice9 . El archivo de ayuda es un documento. Chm ubicado en el directorio SDK instalación.
2
Crear un puntero a la interfaz IDirect3DDevice9 que no se ha inicializado . Usted usará este puntero para referenciar la estructura singleton IDirect3DDevice9 en la memoria. Crear un puntero nulo con este código: * IDirect3DDevice9 p_Device = NULL;
3
Determinar los parámetros con los que desee inicializar el dispositivo Direct3D . . Tendrá que consultar la referencia SDK para obtener una lista completa de parámetros para su versión de DirectX, pero los parámetros necesarios son el tipo de adaptador , el modo de aceleración, un identificador de la ventana del programa en Windows , un modo de procesamiento de vértices , la estructura D3DPRESENT_PARAMETERS , y el puntero al dispositivo creado en el paso 2 .
4
pasar todos los parámetros a través de su interfaz de Direct3D . Un hresult será devuelto , especificando si la operación fue un éxito o un fracaso. Por ejemplo : .
Hresult = p_d3di -> CreateDevice ( D3DADAPTER_DEFAULT , D3DDEVTYPE_HAL , appWnd , D3DCREATE_HARDWARE_VERTEXPROCESSING , y p_PresentParams , y p_Device ) ;
5
Realizar un control de la hresult de la acción con los operadores de control de flujo. Proceda sólo si dispone de un dispositivo de Direct3D para escribir con el fin de evitar que la aplicación falle. Por ejemplo :
if ( FAILED ( HRESULT ) ) {//Desasigne todos los recursos , caja de mensaje de error de pantalla , programa de cese }
.