Inicio / Wikis / Tutoriales / Guía de DirectX - Usar DirectDraw

Guía de DirectX - Usar DirectDraw

(2 opiniones)
Tutorial creado por
22 de Septiembre de 2005
Arquitectura de aplicaciones
Cuando se trabaja con Direct Draw, lo primero que se debe hacer es crear un objeto DirectDraw. Ese objeto proporciona los métodos para crear y gestionar otros objetos, que nos permitirán trabajar con las superficies, paletas, obtener la información del sistema, etc.

Cuando se crea un objeto Direct Draw, se crea para un dispositivo DirectDraw concreto corresponde al HAL instalado en el sistema.

Crear un objeto DirectDraw

Este código muestra como instanciar un objeto DirectDraw, utilizando la función DirectDrawCreate que contiene 3 parámetros.

Parámetro 1: El primer parámetro toma un único identificar (GUID) que representa el dispositivo de display. En este caso el valor será NULL, lo que significa que DirectDraw usará el driver por defecto del sistema.

Parámetro 2: Identifíca la dirección del puntero en donde Objeto fué creado.

Parámetro 3: El tercer parámetro debe ser seteado como NULL.

if ( FAILED( DirectDrawCreate( NULL, &lpDD, NULL ) ) )
{
return Fail ( hwnd, "No se creó el Objeto DirectDraw.\n" );
}


Configurar el nivel cooperativo

El nivel cooperativo especifíca cómo la aplicación interactuará con el sistema (A pantalla completa, en una ventana, etc), mediante la funcióm SetCooperativeLevel. Si estamos programando un juego, seguramente vamos a configurar la aplicación a pantalla completa.

if ( FAILED( lpDD->SetCooperativeLevel ( hwnd, DDSCL_EXCLUSIVE | DDSCL_FULLSCREEN ) )
{
return Fail ( hwnd, "No se pudo fijar el nivel cooperativo.\n" );
}


Configurar el modo de video

El modo de video, configura el ancho, el alto, y la profundidad de colores.

if ( FAILED( lpDD->SetDisplayMode ( 640, 480, 16 ) ) )
{
return Fail ( hwnd, "No se pudo fijar el modo de video.\n" );
}


Bueno, hasta ahora no hicimos mucho, sólo creamos un objeto DirectDraw, seteamos el nivel cooperativo y el modo de video, claro está que todo esto sólo tiene sentido cuando esté todo el código completo.

Superficies

Las superficies son el tema central en DirectDraw, en resumen, las superficies son bloques de memoria, que DirectDraw trata como rectángulos, estos bloques de memoria son los que contendrán los gráficos que necesitamos mostrar en la aplicación.

El ejemplo más sencillo de superficies, es cuando queremos mostrar una imagen cualquiera, supongamos, foto.bmp, lo primero que hace DirectDraw es crear una superficie y después cargar la imagen en esa superficie.
Valora este capítulo: (2 opiniones)
Autor y licencia de 'Guía de DirectX - Usar DirectDraw'
Marcos Alzaga Extraído de: http://www.zonagratuita.com

Creative Commons License
Esta obra está bajo una licencia de Creative Commons.
Este contenido ha sido recopilado por el equipo de Wikilearning. Todo el contenido recopilado se ha obtenido respetando y comunicando en nuestro site la licencia de cada fuente.
Wikilearning tiene permiso expreso por escrito de los autores para publicar los contenidos que ha extraído de otras webs, incluyendo su uso comercial.

Opiniona sobre 'Guía de DirectX - Usar DirectDraw' (2)

Tu nombre debe tener tres caracteres como mínimo.
Es necesario que te des de alta con una cuenta de correo válida.
Es necesario que te des de alta con una cuenta de correo válida.
El contenido del título de tu opinión debe tener tres caracteres como mínimo.
Es obligatorio que selecciones una valoración del recurso.
El contenido del comentario de tu opinión debe tener tres caracteres como mínimo.

Opina sobre este tutorial



* Valoración:
* Nombre:
* Correo electrónico:
* Título:
* Comentario:

Wikis relacionados con 'Guía de DirectX - Usar DirectDraw'

Este documento describe cómo usar el sistema de spooling para impresoras de líneas que provee... Más »
En este documento se presenta la información acerca de la instalación, configuración, ejecución y mantenimiento... Más »
Este documento tiene por objetivo ayudar a todas aquellas personas que por cualquier motivo no... Más »
El principal objetivo de este documento es lograr que el lector adquiera la capacidad de... Más »
La unidad Iomega ZIP es una unidad de disco extraíble y de moda. Está disponible... Más »
¿Estás seguro de que deseas eliminar este capítulo?