Menú inicio
Bienvenido al sitio web del Proyecto dx_lib32.

Para saber que es dx_lib32 
pulsa aquí

Para conocer la historia del proyecto pulsa aqui

Versión actual del proyecto:
2.2.1 Final (24/06/2012)
Codigo fuente: descargar

2.2.0 Final (08/01/2009)
Binarios: descargar

Para mas información sobre la versión actual
pulsa aquí

Noticias anteriores:
Para ver noticias anteriores a la versión 2.0 del proyecto pulsa aquí

Contador de visitas

Visitas desde el 15/04/2004


Patrocinado por



Enlázanos

Copia el código de la caja de texto y pégalo en tu código


dx_lib32 2.2.1 disponible como proyecto de codigo abierto
Después de casi 10 años de trabajo y varias versiones publicadas desde 2004 hasta finales de 2009, con una pequeña pero modesta comunidad de usuarios detras, el Proyecto dx_lib32 finalmente pasa a ser de código abierto bajo licencia LGPL para todo aquel que este interesado en conocer las tripas de uno de mis proyectos más importantes o bien quiera seguir continuando su desarrollo o migrarlo a otros lenguajes y plataformas.

La ultima versión desarrollada, que no se publico en la web del proyecto, la versión 2.2.1, esta disponible junto al código de los ejemplos, tanto de Visual Basic 6.0 como Visual Basic .NET, los fuentes en HTML de la documentación para generar el archivo CHM de Windows, las dependencias necesarias, tanto el runtime de Visual Basic 6.0, el ActiveX de DirectX8 como los codecs OGG Vorbis.

Acceso al repositorio de dx_lib32 en GitHub

dx_lib32 ahora tambien esta presente en Facebook y Google+ donde suelo ir comentando noticias sobre proyectos que estan utilizando dx_lib32 y donde intentare publicar noticias sobre futuros desarrollos que realice la gente con el codigo fuente publicado en GitHub.

A partir de ahora esta pagina dejara oficialmente de actualizarse con más noticias quedando unicamente como historico de noticias y como acceso la version 2.2.0 y sus descargas como hasta ahora.

Para más información, y seguir mis proximos proyectos, visitar mi sitio web www.visualstudioex3.com, donde encontrareis tambien toda la informacion e historia sobre el Proyecto dx_lib32.

Domingo 24 de Junio, 2012

Corrección del enlace al foro del proyecto en Stratos-AD
Gracias al aviso del colega Gorka Suárez (ver créditos) me he enterado de que el enlace a los foros del proyecto en la barra de enlaces estaba mal enlazado ya que apuntaba a la versión anterior de los foros que tenia Stratos-AD (phpBB) en vez de a la actual (SMF). El problema en si no era el acceso correcto al foro si no que el foro anterior el buscador de Google y exploradores como Firefox lo identificaban como sitio web peligroso (cuyas razones todavía desconozco por que).

Posiblemente alguno se haya llevado un buen susto al tratar de acceder a los foros a través del enlace y se encontrara con dicho aviso. Para tranquilidad vuestra sabed que dicho aviso del navegador o del propio buscador de Google impide el acceso a la web solicitada, por lo que, salvo que hayáis saltado dicho aviso, no deberíais haber sufrido ningún peligro en vuestras maquinas.

Por mi parte pedir disculpas por este despiste y avisaros de que el enlace ya esta arreglado. Una vez más dar las gracias a Gorka por el oportuno aviso ya que de lo contrario habría pasado mucho más tiempo hasta que hubiera encontrado dicho problema.

Saludos.

Jueves 10 de Septiembre, 2009

dx_lib32 2.2.0 ya disponible - final de trayecto

Lo prometido es deuda. La ultima versión de dx_lib32 ya esta publicada con los nuevos tutoriales, disponibles para Visual Basic 6.0 y Visual Basic .NET, documentación actualizada e instalación preparada para Windows Vista.

Como ya se comento anteriormente, la versión 2.2.0 será la ultima versión que se publicara de dx_lib32. A partir de ahora no habrá mas ampliaciones ni mejoras. Esta versión ha terminado de implementar las ultimas novedades y correcciones pendientes que había planificadas desde hace dos años y da por finalizado el ciclo de estudio y desarrollo de este proyecto. El soporte y ayuda se seguirá prestando en los foros del proyecto.

Se ha publicado de dos maneras, una como paquete de desarrollo, que es el que incluye los tutoriales y la documentación para desarrolladores, y la otra, el paquete redistribuible para el usuario final. Se trata de un pequeño instalador que contiene únicamente las librerías necesarias para ejecutar un juego desarrollado con dx_lib32 2.2.0. Ambas incluyen las librerías y el componente ActiveX para reproducir OGG Vorbis (http://www.vorbis.com/)

Las novedades mas importantes de esta versión son:

- Versión compatible con Windows Vista

- Ligeras optimizaciones de código en la clase grafica.


- Rotación de sprites variando su eje de rotación (gracias a la colaboración de Lessman/Gorkin, referente a explicaciones básicas sobre matrices de transformación, y Amatar por sugerir su uso)
DEVICE_SetDrawCenter()

- Añadido 4 nuevos efectos en la enumeración
Blit_Alpha para operaciones de transparencias en DRAW_MapEx() y DRAW_AdvMap() (gracias a Pogacha por su colaboración en el efecto de inversión de color y de escala de grises):
Blendop_Inverse
Blendop_XOR
Blendop_Crystaline
Blendop_GreyScale


- Añadido parámetro opcional GrayScale a las funciones
MAP_Load(), MAP_LoadFromMemory(), SURF_Load(), SURF_LoadFromMemory() y SURF_ScreenCapture() de la clase dx_GFX que permite cargar gráficos y superficies en escala de grises a partir de una imagen en color.

- Añadido función para modificar el valor del gamma:
DEVICE_SetGamma()
Gamma (Get)


- Añadido método para aplicar colores independientes a cada vértice en las operaciones de dibujo de sprites con
DRAW_Map(), DRAW_MapEx() y DRAW_AdvMap() en vez de un color global que junto a DEVICE_SetSpecularChannel() permiten operar un rango total de iluminación de 512 unidades (64 bits de color), desde el negro absoluto hasta el color base (color de vértice) y desde el color base hasta el blanco absoluto (canal specular):
DEVICE_SetVertexColor()

- Añadida función para importar fuentes de texto desde archivo: (gracias al articulo de Karl E. Peterson "Preview Uninstalled Fonts" -
http://vb.mvps.org/articles/ap200107.asp)
FONT_LoadSystemFontFromFile()

- Añadido parámetro Clear a la función
Frame() de la clase dx_GFX para desactivar la limpieza de pantalla antes de borrar.

- Añadida función para dibujar bloques o listas de píxeles en una sola llamada:
DRAW_Pixels().

- Añadida funciones para precalcular la posición de los vértices de un sprite antes de ser dibujado, por ejemplo para realizar cálculos precisos de colisión o para calcular valores de iluminación por vértice:
PRECAL_WriteSpriteTransformVertex()
PRECAL_ReadSpriteTransformVertex()

- Añadida función a
dx_Input para obtener el código ASCII de la tecla pulsada:
Key_ASCII()

- Añadido soporte de efectos (FX) básicos para muestras de sonido en la clase
dx_Sound.

- Añadido método en
dx_Video para obtener las dimensiones originales de un video:
VIDEO_GetSize()

- Añadidos tutoriales de la clase
dx_Video.

- Añadidos tutoriales de colisión en
dx_System.

- Añadida función a
dx_System para rotar puntos:
MATH_RotatePoint()

Correcciones realizadas:

- Desactivado parámetro RefreshRate en las funciones de inicialización y configuración de modos de video que podría estar provocando que la clase grafica no iniciase correctamente en algunos equipos.

- Corregido error en dx_GFX en la recuperación de hardware en modos a pantalla completa. El motor de render vuelve a recuperar el control del hardware de video al perder el foco inclusive al realizar cambios del modo de video mediante DEVICE_SetDisplayMode()

- Corregido error en las funciones
DEVICE_GetTotalVideoMem() y DEVICE_GetFreeVideoMem() de dx_GFX que originaban una excepción al ser llamadas.

- Corregido error en MAP_LoadFromFileInMemory() en la carga de archivos. Ahora soporta todos los formatos de imagen de su hermana MAP_Load().

- Corregido error en
MAP_CopyRectsToSurf() y SURF_CopyRectsToMap() en la entrada de los valores de la estructura GFX_Rect.

- Corregido error al dibujar regiones de una textura definidas con MAP_SetRegion() cuando los parámetros Width y Height de DRAW_MapEx() eran diferentes a 0.

- Corregido error en
dx_Sound en la asignación de canales libres para los efectos de sonido. Ahora se aprovechan todos los canales disponibles.

- Corregido error en dx_Sound en la asignación de canales libres para cuando un sonido esta en bucle continuo este ya no es suplantado por el nuevo canal.

- Corregido error en el control de sonido de secuencias de música en dx_Sound.

- Corregido error en la función FILE_List() de dx_System.

- Corregido error en las funciones MAP_AdvCopyRects(), MAP_AdvCopyRectsToSurf(), MAP_CopyRects(), MAP_CopyRectsToSurf(), SURF_AdvCopyRects(), SURF_AdvCopyRectsToMap(), SURF_CopyRects(), y SURF_CopyRectsToMap()

- Corregido los errores en las funciones de lectura y escritura de pixeles en superificies. Se añaden a la lista dos funciones para el trabajo de píxeles de forma mas directa: SURF_ReadPixelArray() y SURF_WritePixelArray().

- Corregido error en las funciones *_Hit() de la clase dx_Input que no permitía realizar mas de una comprobación de evento por ciclo. Ahora permite llamadas múltiples en un mismo ciclo permitiendo leer el estado de varias entradas.

-
Corregido error en las funciones de lectura de posición de audio y video. Ahora devuelven el valor en milisegundos, como indica la documentación, y no en segundos como lo estaba haciendo actualmente.

Bugs localizados:

- Ligeros "artefactos" (conjunto de formaciones de píxeles erróneos) en los resultados de las funciones de Render Targets de dx_GFX, generalmente por la escala de la textura destino respecto a los parámetros de la operación a dibujar.

- Desincronización de lectura de posición en la función MUSIC_GetCurrentPosition() de dx_Sound al reproducir secuencias de música con la frecuencia de velocidad alterada.

- Si se intenta asignar la misma secuencia de música en los dos búferes de reproducción simultáneamente solo se escuchara uno de los búferes.

- La función SYS_Beep() de dx_System puede no funcionar en algunos equipos actuales así como en equipos portátiles.

- En Visual Basic .NET inexplicablemente falla la lectura de valores de los estados de la estructura
Joystick en dx_Input.

Podéis descargar la nueva versión desde la sección de Descargas

Jueves 08 de Enero, 2009

Ya queda menos...
Aprovechando la actualización de enlaces en dicha sección comentar que solo faltan por terminar los tutoriales para Visual Basic .NET para publicar la versión final de dx_lib32. Aprovecho también para recordar que si tenéis algún proyecto preparado para ser publicado en el sitio web os acordéis de dejarlo a punto ya que en un par de semanas me pondré a reestructurar la sección de descargas. Registraros en los foros de Stratos-AD para poder acceder al foro del proyecto, si no tenéis ya usuario, y anunciarlo en dicho foro presentando un poco por encima las características y temática del juego, y si podéis alguna captura del mismo, y el enlace de descarga para ser enlazado en la web. En caso de no disponer de sitio donde subir vuestro juego poneros en contacto con conmigo a través de un mensaje privado del foro para facilitaros dicha tarea.
Lunes 01 de Diciembre, 2008

Primer bocado al pastel - dx_lib32 2.2.0 CTP (Community Technology Preview)
Como ya han aparecido algún que otro interesado en publicar su proyecto en la próxima versión de dx_lib32 (ver noticia anterior) he subido una distribución de la nueva versión de la librería y la documentación actualizada para que probéis y recompiléis los proyectos a esta versión para su publicación.

Aunque se menciona como CTP (Community Technology Preview) este distribuible contiene exactamente la misma la versión que se publicara mas adelante como oficial. Esta publicación difiere de la oficial en que no contiene los tutoriales de referencia ni el distribuibles preparado para ser agregado a vuestros paquetes de instalación (un pequeño instalador con la dx_lib32_220.dll y la dx8vb.dll que no incluye Windows Vista).

Al ser la misma versión que la que se publicara mas adelante podéis usarla sin problemas en vuestros proyectos que tengáis en desarrollo y aprovechar para descubrir las novedades definitivas que traerá la ultima versión de dx_lib32 (para mas información ver documentación).

Descargar dx_lib32 2.2.0 CTP (Community Technology Preview)

Miercoles 17 de Septiembre, 2008

Publica tu juego con la ultima versión de dx_lib32!
Ya falta poco para liberar la próxima y ultima versión que se desarrollara de dx_lib32, y con ella múltiples correcciones de bugs acumulados en versiones anteriores así como nuevas mejoras y añadidos. La documentación ya esta actualizada con los cambios y me encuentro terminando los nuevos tutoriales que reemplazaran a los actuales siendo mas sencillos en código y mas comentados facilitando así su comprensión sobre todo a nuevos programadores.

Al grano. Varios de vosotros habéis llegado a desarrollar proyectos, unos terminados y otros aun en desarrollo, y algunos me los habéis enviado sin poder llegar a subir al área de descarga de la pagina la mayoría de ellos. Con la ultima versión de la librería y cerrando así el ciclo de cambios que ha sufrido la librería revisión tras revisión, perdiendo con ello compatibilidad de los ejecutables que compilabais con versiones anteriores, quiero lanzar la propuesta a todos los interesados que deseéis subir o enlazar vuestros proyectos al área de descargas de la pagina.

El proyecto puede ser bien un juego o alguna demostración técnica que hayáis llegado a implementar de un algoritmo o sistema, como por ejemplo un sistema de partículas, un motor de tiles, una clase de animaciones, etc... cualquier cosa que os gustaría compartir en la pagina con otros usuarios. A los interesados se os facilitaría el distribuible de la nueva versión para que recompiléis vuestros proyectos con la nueva versión. Como no ha habido cambios significativos a nivel de nombres en las funciones ni se ha eliminado ninguna no debéis modificar código de versiones anteriores para recompilar. No seria necesario incluir el código fuente de vuestros proyectos salvo que sean demostraciones técnicas o ejemplos de algoritmos o sistemas.

No seria necesario que tengáis sitio web para subir el juego ya que en principio lo podría subir al propio servidor de dx_lib32 pero si tenéis web o blog seria interesante ya que podríais exponer toda la información y detalles que quisierais de vuestro proyecto. En la web de dx_lib32 solo mostrare una breve descripción de los proyectos, nombre del autor, el enlace de descarga o de vuestro sitio web y posiblemente una captura.

Espero que la propuesta os anime a dar a conocer vuestros trabajos e incluso a terminar o mejorarlos para la publicación. Daré de plazo un mes aproximadamente antes de publicar la reléase de dx_lib32 para ver si os animáis pero igualmente podréis publicar vuestros proyectos después de salir la reléase final de la librería.

Cualquier interesado o cualquier pregunta pasaros por el foro del proyecto en stratos-ad o a través de este enlace directamente al tema de la propuesta.

Lunes 08 de Septiembre, 2008

dx_lib32 alive! - Adelanto de las correcciones y mejoras de la release final
Ha pasado casi un año desde la ultima noticia sobre el proyecto y posiblemente esto haya podido dar la impresión de abandono a más de uno. La verdad es que no ha sido así ni de lejos. El proyecto sigue en marcha camino a su versión final y todo ello después de meses de pruebas y dedicación solucionando los errores existentes hasta la fecha. La lista siguiente muestra las mejoras y correcciones llevadas a cabo hasta la fecha respecto a la versión actual:

- Asegurada compatibilidad con Windows Vista.

- Rotacion de sprites variando su eje de rotación (gracias a la colaboración de
Lessman, referente a explicaciones básicas sobre matrices de transformación, y Amatar por sugerir su uso).
DEVICE_SetDrawCenter()

- Añadido función para modificar el valor del gamma en la clase
dx_GFX.
DEVICE_SetGamma()
Gamma (Get)

- Añadido función para importar fuentes de texto desde archivo.
FONT_LoadSystemFontFromFile()

- Añadido parámetro a la función
Frame() de la clase dx_GFX para desactivar la limpieza de pantalla antes de borrar.

- Añadida función para dibujar bloques o listas de pixeles en una sola llamada.
DRAW_Pixels()

- Añadidos tutoriales de la clase
dx_Video.

- Añadidos tutoriales de colisión en
dx_System.

- Corregido error en
MAP_LoadFromFileInMemory() en la carga de archivos. Ahora soporta todos los formatos de imagen de su hermana MAP_Load().

- Corregido error en
MAP_CopyRectsToSurf() y SURF_CopyRectsToMap() en la entrada de los valores de la estructura GFX_RECT.

- Añadida función a
dx_Input para obtener el código ASCII de la tecla pulsada.
Key_ASCII()

- Corregido error en
dx_Sound en la asignación de canales libres para los efectos de sonido. Ahora se aprovechan todos los canales disponibles.

- Corregido error en el control de sonido de secuencias de música en
dx_Sound.

- Corregido error en la función
FILE_List() de dx_System.

- Corregido error en las funciones
MAP_AdvCopyRects(), MAP_AdvCopyRectsToSurf(), MAP_CopyRects(), MAP_CopyRectsToSurf(), SURF_AdvCopyRects(), SURF_AdvCopyRectsToMap(), SURF_CopyRects(), y SURF_CopyRectsToMap()

- Corregido los errores en las funciones de lectura y escritura de pixeles en superficies. Se añaden a la lista dos funciones para el trabajo de pixeles de forma mas directa:
SURF_ReadPixelArray() y SURF_WritePixelArray().

- Corregido error en las funciones
*_Hit() de la clase dx_Input que no permitía realizar mas de una comprobación de evento por ciclo. Ahora permite llamadas múltiples en un mismo ciclo permitiendo leer el estado de varias entradas.

Algunas posibles mejoras leves están en camino como la posibilidad de aplicar efectos básicos de audio a las muestras de sonido en la clase dx_Sound, efectos como: ecos, ondas de reverberencia, distorsión, alterar graves y bajos, etc..., la adaptación de los tutoriales de Visual Basic 6.0 a Visual Basic .NET, y la creación de un paquete de instalación, uno para el SDK tal y como lo conocéis, y otro para incluir en las instalaciones de vuestros juegos.

Lunes 17 de Diciembre, 2007

Un nuevo año con vistas al futuro
Comienza un nuevo año y con el vistas al futuro. Por un lado estoy a la espera de recibir un nuevo equipo con el que vendrá una versión original del nuevo Windows Vista (edición Premium) donde podré finalmente realizar pruebas con mis programas de Visual Basic 6.0 y con la propia dx_lib32 para así finalmente garantizar la compatibilidad con la nueva versión de Windows y garantizar así el futuro de los desarrollos bajo este lenguaje y esta librería dado que en teoría es posible dado a la retrocompatibilidad de DirectX con versiones anteriores a la 9, el soporte de tecnologías ActiveX y la compatibilidad "garantizada" por Microsoft de Visual Basic 6.0 en Vista.

Por otro lado estoy viendo si saco tiempo entre estudios y el trabajo para avanzar con el proyecto de mi juego, TLSA, razón y origen de la dx_lib32 hace 6 años ya, así como sus herramientas de diseño y creación de contenidos, que será el primer juego en demostrar por un lado las capacidades de esta pequeña pero potente herramienta de desarrollo que es dx_lib32 para el desarrollo de juegos y sus herramientas, y demostrar también que con Visual Basic 6.0 se pueden hacer juegos mas complejos que un pong o un arkanoid o un 3 en raya. TLSA pretende ser la prueba de ello.

Para finalizar estoy pensando también en crear un pequeño y sencillo tutorial de como desarrollar un sencillo mata marcianos con dx_lib32, para de esta forma la gente que comienza con esta herramienta o que se adentra por primera vez en el mundo del desarrollo de juegos pueda aprender a usar esta herramienta y aprenda las nociones básicas sobre programación orientada a juegos.

Dicho esto solo me queda deciros felices fiestas y prospero año, y suerte para los que os habéis embarcado recientemente con dx_lib32.

Martes 2 de Enero, 2007

dx_lib32 2.1.190 liberada
Nueva actualización de dx_lib32 que corrige fallos y añade nuevas características:

Versión 2.1.190 (13/09/2006)

Las novedades mas importantes de esta versión son:

- Recopilación de dx_lib32 con las opciones de optimización avanzadas desactivadas (Sin alias para variables, quitar comprobaciones de limites en enteros, etc...) como posible solución a ciertos errores internos de la librería que están fuera del alcance del código desarrollado en Visual Basic 6.0 para ser tratados o corregidos. La librería ahora pesara cerca de 312kb de 268kb de la versión anterior (44kb de más).

- Añadido un nuevo parámetro a las funciones MAP_Load y MAP_LoadFromMemory de la clase dx_GFX que permite elegir si suavizar o no los píxeles del grafico a la hora de cargarlo en memoria. Esta opción puede ser útil en ciertos desarrollos como versiones de juegos antiguos, o 'remakes', donde se busca presentar gráficos sin suavizado de píxeles, o 'pixelados'.

- Habilitado el parámetro MaxFrames en la función Frame de dx_GFX que permite limitar el numero de cuadros por segundo (FPS) que alcanzara el programa.

- Añadido soporte de cronómetros de alta precisión a la clase dx_System (buscar por el prefijo HITIMER)

- Añadida función para ordenar arrays de tipo Currency a la clase dx_System.

- Corregido, gracias a un aporte de Luciano (Luciano Esteban Lodola), el error en la función DLG_SaveFile que no añadía la extensión al nombre de archivo que generaba.

- Añadido soporte para guardar en disco las entradas de la consola de depuración de la clase dx_System. Mediante la propiedad DebugFile se indica el nombre con el que se generara el archivo de texto con el contenido de las entradas de la consola de depuración.

- Revisado y corregidos algunos errores en la documentación de dx_lib32.

dx_lib32 ya no se distribuye en formato instalable. Ahora se distribuye solo en paquetes descomprimibles ZIP, RAR y SFX (ejecutable descomprimible de WinRAR con asistente).

Martes 13 de Septiembre, 2006

Stratos-AD Reloaded: Reabiertos los foros de discursion

Después de casi una semana de mantenimiento del servidor que ha obligado a cambiar el sistema usado en los foros (Invision Power Board) ya están de nuevo en funcionamiento los foros de Stratos-AD, y por ende el subforo de dx_lib32, ahora con el sistema phpBB. Las cuentas de usuario y los mensajes siguen intactos por lo que no tendréis que volver a registraros en los foros para realizar consultas.

Martes 6 de Junio, 2006

Actualización de dx_lib32 y nuevos mini juegos subidos
Nueva actualización de dx_lib32 que corrige fallos y añade nueva función:

Versión 2.1.189 (01/06/2006)

Las novedades mas importantes de esta versión son:

- Recompilación de dx_lib32 sin compresión mediante la utilidad UPX que podría ser la causa de algunos fallos de la clase dx_Sound en ciertos procesadores. La DLL pesara aproximadamente 100 Kb más (268 kb aprox. de 117 Kb de antes)

- Solucionado error al tratar de cambiar el modo de video con DEVICE_SetDisplayMode que dejaba el programa congelado si no existían fuentes de texto cargadas en memoria con FONT_LoadSystemFont.

- Corregido error en la función MATH_IntersectRect de dx_System que fallaba la comprobación de intersección entre las dos cajas devolviendo siempre Verdadero como resultado aun en casos donde no existía intersección.

- Mejorada la función MATH_Rand de dx_System.

- Añadida función MATH_PointInLine de dx_System a gracias a la colaboración de Lessman (Gorka Suárez)

También hay dos nuevos mini juegos de Miguel A. Vallejo Duran en la sección de descargas listos para bajar.

Jueves 1 de Junio, 2006

Mi Oro: mini juego desarrollado con dx_lib32
Miguel A. Vallejo Duran nos envía Mi Oro, un mini juego basado en un juego flash llamado Reel Gold de Miniclip.com. El juego consiste en guiar un gancho desde una vagoneta hacia las pepitas de oro que están en el suelo. El objetivo es lograr coger todas las pepitas antes de que se acabe el tiempo. El juego viene acompañado de su código fuente.

Podéis descargarlo desde la sección de descargas en la categoria Juegos.

Martes 25 de Abril, 2006

Visual Basic 6.0 será soportado en Windows Vista
Confirmado por la propia gente de Microsoft. Visual Basic 6.0 seguirá teniendo soporte en la nueva versión de su sistema operativo Windows Vista.

Support Statement for Visual Basic 6.0 on Windows® Vista™

Un aliciente más para terminar los proyectos iniciados en este lenguaje sin miedo a no poder distribuirlos para esta nueva plataforma.

Domingo 16 de Abril, 2006

dx_lib32 2.1.188 - Actualización de ultima hora en la versión 2.1.187
Corregido unos leves errores en la ultima versión:

- Solucionado un leve error de cooperación entre las clases dx_Sound y dx_Video con la clase dx_Input que no permitía leer los valores de posición del cursor del ratón del objeto Mouse.

Martes 11 de Abril, 2006

dx_lib32 2.1.187 - Actualización de ultima hora en la versión 2.1.186
Corregido unos leves errores en la ultima versión:

- Solucionado un error de devolución en la función Frame de dx_GFX que devolvía siempre el error GFX_UNKNOWNERROR cuando no se producía error alguno.

- Solucionado un error en las funciones DEVICE_ExistsDisplayMode, DEVICE_GetDisplayMode, DEVICE_GetDisplayModeCount y DEVICE_GetInfo de dx_GFX que no devolvían la información después de inicializar la clase mediante Init.

Lunes 10 de Abril, 2006

dx_lib32 versión 2.1 liberada

Ya esta disponible la nueva versión 2.1 de dx_lib32 que corrige los siguientes bugs e incluye las siguientes mejoras:

Versión 2.1.186 (08/04/2006)

Las novedades mas importantes de esta versión son:

- Solucionado pequeño error en la función de Init de la clase dx_Sound que establecía por defecto el parámetro Driver a 1 en vez de a 0 que seria el controlador de sonido por defecto en caso de no existir ninguno adicional. Este error provocaba comportamientos incorrectos e inesperados con las funciones de la clase. Dicho argumento desaparece de la función Init.

- Suprimidas dos funciones de la clase dx_Sound: DEVICE_GetNumDrivers y DEVICE_GetDriverName.

- Solucionado error en dx_Video que no permitía descargar de memoria el video en reproducción.

- Implementado soporte de Render Targets en dx_GFX. Ahora se pueden grabar el resultado de las llamadas de operaciones de dibujo en una textura que después se podrá usar para dibujar sobre la escena principal en el back buffer o sobre otros Render Targets (se ha incluido un sencillo tutorial sobre esta técnica)

- Implementado soporte de iluminación dinámica por vértices en dx_GFX mediante configuración del Canal Specular. Ahora es posible definir distintos niveles de iluminación de forma independiente en cada vértice de un grafico o de una figura compuesta por primitivas.

- Añadido parámetro para definir los hertzios del refresco del monitor en las funciones Init, DEVICE_ExistsDisplayMode y DEVICE_SetDisplayMode de dx_GFX.

- Añadida coordenada Z en la estructura Mouse_Data para leer el valor de la rueda del ratón (funcionalidad añadida al tutorial 2 de dx_Input)

- Añadidas las funciones FONT_SystemGetTextWidth y FONT_SystemGetTextHeight en la clase dx_GFX para obtener el ancho y alto de una cadena de texto (funcionalidad añadida al tutorial 6 de dx_GFX)

Por razones de tiempo y necesidad de retomar un proyecto pendiente no se ha implementado el sistema de reporte de sucesos ni se hará en un futuro. Por el momento queda pendiente la posible implementación del sistema de fuentes de texto mediante bitmaps, un sencillo sistema de partículas y el soporte de efectos de sonido para la clase dx_Sound.

Sábado 8 de Abril, 2006

Ya esta disponible el foro del proyecto dx_lib32

Ya esta disponible el nuevo foro del proyecto dx_lib32 para realizar vuestras consultas y comentarios acerca del proyecto. El foro esta alojado en la comunidad Strato-AD donde podréis encontrar otros foros que tratan diferentes campos sobre el desarrollo de juegos y programación en general.

Algunos avances de la próxima actualización del proyecto (versión 2.1.0):

    - Solucionado el error en el modulo de sonido dx_Sound.

    - Se eliminan las funciones DEVICE_GetNumDrivers y DEVICE_GetDriverName así como el parámetro Driver de la función Init. dx_Sound soportara a partir de ahora solamente el controlador de sonido por defecto del sistema.

    - Implementación de un sistema de reporte de sucesos en tiempo de ejecución. Dicho sistema registrara todas las llamadas realizadas a la librería y procesos llevados a cabo por cada función. En caso de que el programa generase un error grave dx_lib32 mostrara un mensaje en pantalla con el nombre de la clase y la función que provocaron el error y el contenido del reporte de sucesos para después finalizar el programa. Dado que este sistema podría reducir ligeramente la velocidad de ejecución de dx_lib32 será opcional a la hora de inicializar el componente.

    - Se añadirán funciones para poder configurar el canal "specular" y el color de los 4 vértices por separado de un grafico a la hora de dibujarlo en pantalla permitiendo poder crear efectos de iluminación mas avanzados.

Debido a los nuevos cambios la nueva versión del componente no será compatible con su versión anterior (2.0.976) requiriendo recompilar los programas que usen dicha versión.

Nota: No todas las futuras versiones perderán compatibilidad entre unas y otras. Esto dependerá de los cambios realizados en el componente. Siempre y cuanto sea posible se tratara de mantener compatibilidad con versiones anteriores del proyecto.

Lunes 6 de Marzo, 2006

Solucionado pequeño error en el codigo del tutorial 1 de dx_system

Solucionado un pequeño error en el código de Tutorial 1 de dx_system que no permitía extraer archivos del paquete *.PAK que tuvieran el separador / en su ruta de acceso. El error es ajeno a la dx_lib32 por lo que esta actualización no modifica ni añade nada a la versión actual del componente del 24/02/2006.

Lunes 27 de Febrero, 2006

Solucionado fallo de ultima hora de los enlaces de la zona de descargas
Ante todo primero pedir disculpas por este pequeño fallo de los enlaces "fantasma" de la zona de descarga. Parece ser que se debió a un fallo a la hora de guardar el proyecto de la web ya que en realidad estaban creados los hipervínculos.

Solucionado esto ya podéis acudir a la zona de descargas para bajar los archivos.

Gracias y disculpar las molestias.

Domingo 26 de Febrero, 2006

dx_lib32 version 2.0 ya esta disponible
Después de una larga espera y un duro trabajo de desarrollo, corrección de errores y documentación del proyecto, la nueva versión de la librería, dx_lib32 2.0, ha sido finalmente publicada.

Dicha versión ha sufrido grandes cambios respecto a sus versiones anteriores dando como lugar a una nueva versión mas robusta y estable, y mas completa. Las novedades mas importantes de esta versión son:

    - Unificación de las 5 clases en una sola DLL ActiveX.

    - Reprogramación completa a nivel global de la librería dando como resultado un componente mas completo, optimizado y seguro.

    - Corregidos todos los fallos conocidos a nivel global de versiones anteriores.

    - Añadidas nuevas características y funciones a las clases
    dx_GFX, dx_Input y dx_System.

    -
    Implementación de un buffer de profundidad (ZBuffer) para la clase grafica dx_GFX.

    - Se añade una nueva coordenada las operaciones de dibujo, la coordenada Z, que define el orden en que aparecerá dibujado un grafico o una operación de primitivas en pantalla.

    -
    Mejora de optimización de las operaciones de lectura y escritura de píxeles en una superficie.

    - Recuperación del control del dispositivo grafico en modo pantalla completa cuando la ventana pierde el foco.

    - Posibilidad de cambiar el modo de video en tiempo de ejecución.

    - Implementación de una función para dibujar gráficos aplicándoles una deformación de vista en perspectivas isométrica y caballera.
     
    -
    Reprogramación completa de la clase de sonido. dx_Sound ahora esta implementada con DirectSound y DirectShow. Ya no se requieren royalties para licencias comerciales por el uso de esta clase ya que no utiliza componentes con licencia comercial como ocurría con la versión anterior que estaba implementada con FMod.
     
    -
    Añadido soporte para leer la entrada de múltiples dispositivos de juegos (Joysticks y Gamepads) de forma simultanea.

La nueva versión viene acompañada al fin de una amplia y extensa documentación sobre las funciones que componen las 5 clases de la librería, y una serie de pequeños tutórales básicos que servirán de ayuda tanto a la gente que se inicia por primera vez con esta herramienta como los que ya la usaron en versiones anteriores. Poco a poco posiblemente escriba algunos tutórales mas y seguramente algún programa de prueba que muestre por encima las capacidades de esta herramienta.

Podéis descargar la nueva versión de la librería en formato instalable o en formato ZIP desde la sección de Descargas. En la misma encontrareis algunas novedades interesantes como el codec de Ogg Vorbis para DirectShow que os permitirá reproducir archivos de música en formato Ogg con dx_Sound.

La pagina como habéis podido comprobar ha sido totalmente reconstruida y mejorada aunque aun no dispone de foro pero en breve se habilitara.

Sábado 25 de Febrero, 2006

dx_lib32 © 2001/2012 - José Miguel Sánchez Fernández