Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Dx_lib32 Version 2.1 Liberada

Iniciado por [EX3], 08 de Abril de 2006, 05:57:18 PM

« anterior - próximo »

[EX3]

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 (el TLSA Engine y el proyecto del juego correra en el) 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.

Ya sabeis, si encontrais algun fallo o algo raro no dudeis en comentarlo ;)

Salu2...

P.D.: Creo que he solucionado el fallo de referencias en los fuentes de los tutoriales. Si por alguna razon aun os fallase la referencia al abrir el proyecto recordar que se solucionaria creando la referencia desde el cuadro de referencias en el menu Proyectos del IDE de Visual Basic. Para mas informacion mirar la documentacion.
José Miguel Sánchez Fernández
.NET Developer | Game Programmer | Unity Developer

Blog | Game Portfolio | LinkedIn | Twitter | Itch.io | Gamejolt

TheAzazel

 Te has puesto las pilas eh?? (ole)

quiero saber mas del TLSA y del juego ese...  

Saludos!

[EX3]

 
Cita de: "TheAzazel"Te has puesto las pilas eh?? (ole)
Que va :P Si me hubiera puesto de verdad las pilas ya estarian implementados el sistema de fuentes graficas, del que ya tengo el editor y formato terminado (exlcuyendo un leve fallo del editor), el sistema de particulas (que al final implementare aparte para el TLSA Engine y que subire a la pagina como recurso para el que se interese por el), efectos de bumpmaping para simulacion de fluido "underwater" y efecto lupa entre otras (aun me tengo que poner a traducir los tutos del SDK de C++ a VB :P) y otro efecto de bump para simular iluminacion con relieve (que este si lo tengo ya en VB), todo esto solo para el modulo grafico, despues me faltaria la implementacion de los efectos de sonido mediante DirectSound, para poder dar algo mas de ambientacion en el juego de ser posible.

Lo peor es que me temo que la mitad de estas cosas no las llegare a implementar por que despues de 6 años ya estoy hasta las *****as de desarrollar la dichosa libreria (entre aprendizaje, dos reescrituras completas del proyecto y nuevas implementaciones ya esta uno cansado) y me quiero poner con el juego ya (aunque sea desarrollar una demo como minimo), que como me espere mas VB6 me caduca definitivamente y no podre aprovechar minimamente todo el trabajo empleado sobre la dx_lib32 (hasta marzo 2008 como minimo) Lo importante que ya tengo en teoria todo lo necesario para poder retomar el TLSA Engine definitivamente :)

Cita de: "TheAzazel"quiero saber mas del TLSA y del juego ese...
Pues poco mas puedo decirte que este martes me tengo que reunir con los posibles miembros del grupo que compondremos para desarrollar el juego: diseñador, dos grafistas y el programador (osea yo :P) y aprovechare para exponerles lo mas detalladamente posible la idea y para que aporten opiniones e incluso algun consejo. Por lo demas no tengo nada disponible en condiciones para mostrar, leves esbozos del ultimo intento desarrollando las bases del sistema de escenarios del motor, que ahora tendra que ser reescrito desde 0 para unas leves mejoras y asi facilitarme incluso el trabajo.

Resumidamente el juego seria un plataformas 2D no "scrollado" con una mecanica y diseño semejante al prince of persia y/o another world. Genero ciencia ficcion con un argumento y desarrollo que espero guste. Algo sencillo y sin muchas florituras, para no enrollarme mucho con el tema y acabar en nada o dejarlo innacabado.

En fin, que por el momento solo tengo humo para mostrar y a fin de cuentas eso es lo mismo que nada, asi que de momento toca esperar a tener algo "tangible" que poder enseñar ;)

Salu2...
José Miguel Sánchez Fernández
.NET Developer | Game Programmer | Unity Developer

Blog | Game Portfolio | LinkedIn | Twitter | Itch.io | Gamejolt

TheAzazel

 Todo eso que dices de la lib...es que es mucho mucho curro para una sola persona. Yo tambien tengo muchas ganas de terminar los targets principales marcados para poder terminar de una vez un bomberman (le faltan los menus y pulir un poquito el aspecto network...pero esto depende de mejorar la lib en dicho aspecto).

Si yo empezara ahora mismo pero sabiendo lo que ya se... utilizaria una lib ya mascadita para poder dedicarme integramente al juego pero claro, al principio uno no sabe la cantidad de horas que vas a invertir en algo asi. Muchas veces algo que me ayuda a seguir adelante son mails de la gente (pocos españoles la verdad jeje, mas de EEUU, alemanes y franceses) que me agradecen el curro que me estoy pegando y me animan a seguir adelante, otras, son los que veo que lo utilizan y me consultan problemas, descubren algun bug y cosas similares pero vamos, que es un camino duro :).

Bastantes veces me da la impresion que entre nosotros, no valoramos la cantidad de trabajo que lleva esto detras ni lo util que es para otras personas y esas cosas...., quizas, una alegre excepcion sea el motor de haddd que con eso de ser 3D y utilizarse con .net si esta siendo mucho mas valorado :)

bueno tio, a ver si tengo sitio en la conferencia de haddd(estoy en lista de espera) y nos vemos todos por alli, si no puedo ir y por la tarde se hace algo...me apuntaria :)

pues venga, a ponerse con el juego! por cierto, los demas componentes del grupo son tambien de fuenla/madrid??

saludos

[EX3]

 
Cita de: "TheAzazel"Todo eso que dices de la lib...es que es mucho mucho curro para una sola persona.
Yap, pero es lo que hay, la unica persona a la que pediria ayuda para implementar mas cosas y que no me dejaria tirado o a medias de DirectX no maneja ni papa :-/ El tema es que se podrian considerar "pijaditas" lo que me falta por implementar, ya que lo gordo de verdad por suerte ya lo puli hace unos meses y con ello se puede maquinar algo en condiciones, todo es cuestion de buscarse las vueltas a la tuerca y eso es lo que me gusta del tema xD

Cita de: "TheAzazel"Bastantes veces me da la impresion que entre nosotros, no valoramos la cantidad de trabajo que lleva esto detras ni lo util que es para otras personas y esas cosas...
Yo no lo veo asi, yo mas bien pienso que los usuarios finales del producto y la gente que llega a conocer el proyecto de oidas o por comentarios de terceros son los que no llegan a apreciar el autentico trabajo que hay detras. Es mas, como anecdota mia debo mencionar que hace cosa de un mes un evangelizador-extremista de C++ en un foro de VB6 (que carajos pinta un extremista de C++ en un foro de VB me pregunto...) que no paro de sacarle pegas al proyecto, que segun el por estar programado en VB6 y que por apoyarme en librerias y funciones externas (lease DirectX...) que no tenia merito alguno, etc... etc... En verdad, gente asi de cerrada de ideas y poco objetiva a la hora de opinar acerca del trabajo de otros es la que me ha motivado a terminar la libreria xDDDD

Cita de: "TheAzazel"bueno tio, a ver si tengo sitio en la conferencia de haddd(estoy en lista de espera) y nos vemos todos por alli, si no puedo ir y por la tarde se hace algo...me apuntaria :)
Yo encantado, que me quede con las ganas en la kdd de enero. Yo ya he dicho que tengo el viernes totalmente libre, asi que vaya o no vaya a la conferencia de M$ si hay kdd alli estare ;)

Cita de: "TheAzazel"pues venga, a ponerse con el juego! por cierto, los demas componentes del grupo son tambien de fuenla/madrid??
Los dos grafistas son Madrid capital y el diseñador es de Loranca (barrio de Fuenlabrada aunque se podria considerar casi una urbanizacion) Por el juego ya llevo meses unificando las ideas surgidas en estos 6 años y dando forma definitiva al argumento con ayuda del diseñador y uno de los grafistas (en este apartado metemos baza todos). Ahora toca que primeramente termine o tenga algo medianamente usable del motor para empezar con el diseñador a dar forma a las ideas sobre papel y cuando la parte de programacion y diseño este mas o menos finiquitada, al menos lo justo para realizar como minimo una demo del juego, es cuando empezarian su labor los grafistas. De momento este martes me toca exponer definitivamente la idea final y contrastar opiniones entre ambos.

Salu2...
José Miguel Sánchez Fernández
.NET Developer | Game Programmer | Unity Developer

Blog | Game Portfolio | LinkedIn | Twitter | Itch.io | Gamejolt

Vicente

Cita de: "TheAzazel"Bastantes veces me da la impresion que entre nosotros, no valoramos la cantidad de trabajo que lleva esto detras ni lo util que es para otras personas y esas cosas...., quizas, una alegre excepcion sea el motor de haddd que con eso de ser 3D y utilizarse con .net si esta siendo mucho mas valorado :)

bueno tio, a ver si tengo sitio en la conferencia de haddd(estoy en lista de espera) y nos vemos todos por alli, si no puedo ir y por la tarde se hace algo...me apuntaria :)
Hola,

yo opino como EX3, creo que dentro de la comunidad si nos damos cuenta del trabajo que tiene desarrollar cosas como Dx_lib21, CRM32PRO o Haddd. Más que nada porque como lo hacemos, cuando vemos la currela de los demás pues te haces a la idea ;) No creo que casi nadie en los foros piense que las librerías/proyectos del resto de la gente de los foros no tiene trabajo.

Un saludo!

Vicente

P.D.: madrid kdd 2nd edition ya! :P

TheAzazel

 Bueno, quizas he tenido malas experiencias personales jejeje

ya lo hablaremos largo y tendido si al final se realiza el second meeting! jajaja

 
Hola soy nuevo en esto de los videojuegos y com se algo de VB y despues de visitar la web del proyecto decidi bajarme y probar los tutoriales ( creo que hay cuatro apartados , graficos ,sonido , input y general o algo asi...) solo tengo problemas con el de graficos , en concreto con el uno y dos , creo ....usan una función que es DrawMap y otra que es Frame para despues dibujar , el fragmento de codigo exactamente es :

Do While Looping
   'Dibujamos el grafico en las coordenada 340, 240 con su tamaño original:
   Call m_gfx.DRAW_Map(Sprite, 32, 32, 0, 50, 100)
   'Ejecutamos las llamadas de la clase grafica:
   Call m_gfx.Frame
Loop

pero al ejecutar la ventana se queda negra y no hace nada aparentemente . ... tengo que instalar algo mas ( he instalado el ejecutable dx_lib32v21188.exe ) , o hacer alguna otra referencia a otra dll (la hago directamente a dx_lib32.dll ya que da error al cargar el proyecto) o que ???
mi sistema operativo es Windows XP y uso el VB 6.0..
gracias por anticipado y perdon por la ignorancia ...   (nooo)

viva la resistance !!!! :ph34r:  :ph34r:  

[EX3]

 Wenas, HugoBox.

Si no me equivoco (y sobre todo por una errata mia del comentario del codigo xD) supongo que se trata del Tutorial 2 de dx_GFX. Cierto, no? No se si has modificado el codigo añadiendo o quitando algo para hacer pruebas con lo que no sabria exactamente donde podria estar el error, me vendria bien que puesieras todo el codigo de tu programa para saber mas detalles ya que con lo que me has puesto solo podria especular teorias tales como que no has cargado un grafico previamente por ejemplo, vamos, que estaria dando palos de ciego ;)

Salu2...

P.D.: En el futuro abrir nueva discursion para plantear dudas ;)
José Miguel Sánchez Fernández
.NET Developer | Game Programmer | Unity Developer

Blog | Game Portfolio | LinkedIn | Twitter | Itch.io | Gamejolt

 Wenas , ante todo gracias por hacerme caso y por la prontitud en la respuesta .
El codigo no lo he modificado en absoluto , trato de ejecutarlo tal cual esta en el tutorial , el fragmento de código que te envio es parte de eso codigo, mira este es al completo ( el de  form1 )

'////////////////////////////////////////////////////////////////
'/                                                              /
'/ Proyecto dx_lib32 2.0 - Tutoriales de la clase dx_GFX        /
'/ Tutorial 2: Cargar imagen y dibujarla en pantalla            /
'/ José Miguel Sánchez Fernández                                /
'/                                                              /
'////////////////////////////////////////////////////////////////

Option Explicit

'Variable objeto que apunta a la clase dx_GFX:
Dim m_gfx As dx_GFX_Class

'Alamcena el valor del grafico en memoria:
Dim Sprite As Long

'Controla el bucle principal:
Dim Looping As Boolean

Private Sub Form_Load()
'Mostramos la ventana:
Me.Show

'Creamos la instancia de la clase dx_GFX:
Set m_gfx = New dx_GFX_Class

'Inicializamos la clase y el modo de video a 640x480 en modo ventana:
Call m_gfx.Init(Me.hWnd, 640, 480, , True)

'Cargamos un grafico en memoria:
Sprite = m_gfx.MAP_Load(App.Path & "\Texture.png", 0)

Looping = True

Do While Looping
   'Dibujamos el grafico en las coordenada 340, 240 con su tamaño original:
   Call m_gfx.DRAW_Map(Sprite, 32, 32, 0, 0, 0)
   
   'Ejecutamos las llamadas de la clase grafica:
   Call m_gfx.Frame

Loop

'Descargamos el grafico de la memoria:
Call m_gfx.MAP_Unload(Sprite)

'Terminamos la ejecucion de la clase:
Call m_gfx.Terminate

'Destruimos la instancia de la clase:
Set m_gfx = Nothing

End

End Sub

Private Sub Form_Unload(Cancel As Integer)
Looping = False

End Sub



...........,que conste que la refererencia a la dll la hago manualmente , aunque por lo que veo en este foro a otra gente le rula bien ... no se , se te ocurre algo?
gracias por anticipado :blink:  

[EX3]

 Oviando que el codigo es el mismo que el del tutorial error en el codigo no hay por lo menos. La referencia dices que la realizas ya que error de referencia no te da por lo que me has comentado (dices que ves la ventana de color negro por lo tanto dx_GFX esta renderizando). Dices que estas tratando de ejecutar el tutorial tal cual, sin modificar codigo y sin cambiar el archivo de imagen que carga, osea, tal cual venia en la distribucion de la pagina, correcto? No se por donde pueden venir los tiros. Ejecuta el Tutorial 7 y muestrame que te pone. Ese tutorial te devuelve la informacion acerca de tu tarjeta grafica y demas detalles que podrian guiarme parcialmente de donde podria venir el error, que quizas se trate de la propia libreria o de que tu tarjeta sea antigua y no soporte bien algun detalle basico, por ejemplo, algunas tarjetas antiguas no soportan texturas de 32 bits, quizas vengan por ahi los tiros, pero vamos, hasta que no sepa que tarjeta tienes no puedo descartarlo.

Salu2...
José Miguel Sánchez Fernández
.NET Developer | Game Programmer | Unity Developer

Blog | Game Portfolio | LinkedIn | Twitter | Itch.io | Gamejolt

 
Esto es lo que devuelve la pantallita del tutorial 7:
Adaptador de video: NVIDIA RIVA TNT2 Model 64/Model 64 Pro
Controlador: nv4_disp.dll
Version del controlador: 14.5672
Tamaño maximo de una textura en memoria :2048x2048
El dispositivo de video soporta 32 bits de color
memoria de video total :30701 KB(30.98MB)
memoria de video disponible 30.94 MB

Quizas se me queda corta la tarjeta de video ???? tambien tengo un PC un poco viejo , PIII a 933Mhz, vamos que ya me toca comprarme otro , aver si con la paga extra....
Gracias Majete!!! si el servicio tecnico del ADSL de telefonica fuera tan atento como tu otro gayo nos cantaria jejeje (ole)  

[EX3]

 
Cita de: "Guest"Quizas se me queda corta la tarjeta de video ???? tambien tengo un PC un poco viejo , PIII a 933Mhz, vamos que ya me toca comprarme otro , aver si con la paga extra....
Para nada, el equipo da la talla de sobra y sobre todo la tarjeta grafica, que es lo que mas importa en cuestion de graficos. Pues no se por donde pueden venir los fallos, prefiero seguir pensando que es cosa del UPX y no del codigo ya que esto por ejemplo no puede ocasionar fallos tan garrafales como una violacion de memoria:
Public Sub SOUND_SetVolume(Channel As Long, Value As Long)
On Local Error Resume Next

If DS_Init Then
   If Value > 100 Then Value = 100 Else If Value < 0 Then Value = 0

   Call m_Channel(Channel).Buffer.SetVolume((Value * 100) + DSBVOLUME_MIN)
   
End If

End Sub

Si fuese un codigo mas enrevesado todavia podria sospechar pero de algo tan mimio como esto es impensable  (nooo)

No se, la proxima version de momento ya no vendra comprimida con UPX. La dejare un tiempo para ver si le sigue fallando a la gente y en caso de ser asi me tocara reactivar de nuevo los controladores de errores internos del VB a la hora de compilar (100kb mas de peso a la libreria :() y rezar para que con eso desaparezcan los malditos errores. Espero no llegar a tanto ya que esta ultima medida resta algo de potencia a los programas compilados en VB6.

Cita de: "Guest"Gracias Majete!!! si el servicio tecnico del ADSL de telefonica fuera tan atento como tu otro gayo nos cantaria jejeje (ole)
Para 4 gatos que usan mi cutre-libreria que menos que tratar de tenerlos contentos, no? (ole)

Salu2...
José Miguel Sánchez Fernández
.NET Developer | Game Programmer | Unity Developer

Blog | Game Portfolio | LinkedIn | Twitter | Itch.io | Gamejolt

 mil gracias (aunque me he quedao con las ganas ), ojala todo el mundo compartiera sus logros como tu lo haces ! Yo estudio inf. tecnica en la UNED , estoy a punto de acabar y me seria totalmente imposible desarrollar una libreria como la tuya!(mas que nada por que no piloto nada de graficos), de todas las maneras se agradece que exista gente como tu que altruistamente y sin cobrar haga esta cosas , ..... estare atento a esa modificacion que dices ....


VIVA EL SOFTWARE LIBRE !!!!!!!! ;)  

pbarros

Hola a todos...
tengo una pregunta, sobre la propiedad de poder cambiar la resolución de pantalla en tiempo de ejecución... no sé si se podrá también pasar de ventana a pantalla completa.
¿Debo hacer un terminate y luego un init nuevamente?, ¿cómo se debe hacer la rutina?, por ejemplo, para pasar de ventana a pantalla completa con las teclas Alt+Enter.

Se los agradecería mucho...






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.