Foros - Stratos

Stratos => Proyectos => Mensaje iniciado por: zupervaca en 08 de Febrero de 2006, 12:47:14 PM

Título: Dibdll
Publicado por: zupervaca en 08 de Febrero de 2006, 12:47:14 PM
 Os dejo otra demo de como va avanzando la cosa, otra vez cuento con la gente que tiene ati para que me vaya diciendo si todo funciona bien :lol:

Lo podeis descargar aqui

PD: Lo tuve que subir a la web de contactos que hice hace tiempo por que no tengo permisos para subirlo a la otra, los de aruba lo estas arreglando, tiembla!! :P  
Título: Dibdll
Publicado por: Haddd en 08 de Febrero de 2006, 01:04:14 PM
 Genial  (ole)   425 frames en ambos programas!!  
Título: Dibdll
Publicado por: BeRSeRKeR en 08 de Febrero de 2006, 01:25:04 PM
 A mí también me funciona bien con la Radeon 9600 XT. Por cierto, ¿al final haces el skinning por software o con la GPU?.

Saludos.
Título: Dibdll
Publicado por: zupervaca en 08 de Febrero de 2006, 02:02:25 PM
 Probe a enviar sobre 1000 matrices a un shader y en direct3d pego bajon de fps, en cambio opengl no lo noto mucho, con lo que al final me decidi por la alternativa de hacerlo por software, no obstante la parte de doom3 que estoy haciendo esta por separado de la libreria principal ya que esto del doom3 es por probar la libreria mas que nada.
Tengo pensado ponerme a programar para doble nucleo y/o ht y transformar los esqueletos en un micro y hacer la app en el otro a ver que tal va, pero antes me toca linux ;)
Título: Dibdll
Publicado por: vincent en 08 de Febrero de 2006, 03:39:56 PM
 Con la ATI X300 del curro:
 - Versión DX: 190 FPS
 - Versión OGL: 198 FPS

Buen curro!!  (ole)  
Título: Dibdll
Publicado por: nsL en 08 de Febrero de 2006, 10:49:02 PM
 Ati Radeon 9550 256MB:

OGL: 408
DX:   410

Saludos!
Título: Dibdll
Publicado por: Vicente en 08 de Febrero de 2006, 10:57:33 PM
 Ati Radeon Mobility 9600 Pro 128 MB

Entre 450-500 FPS en ambos. Pero con DX me pasa una cosa rarísisma: la animación va como a saltos (como si se atrancara de vez en cuando). Con OGL esto no pasa.

Un saludo!

Vicente
Título: Dibdll
Publicado por: Dekkap en 08 de Febrero de 2006, 11:20:56 PM
 

En mi P4 - 2'5 con Win XP y tarjeta Ati Raedon 9000 64 MB:

DX: entre 480-499
OGL: entre 258-270

Animo y a seguir trabajando así ;)
Título: Dibdll
Publicado por: zupervaca en 10 de Febrero de 2006, 02:41:44 PM
 Gracias a todos por contestar y decirme los fps ;)

Que en dx pegue saltos si que es raro ya que se usa el mismo codigo excepto el las llamadas al render, ¿puedes probar a forzar a 60fps desde la tarjeta grafica a ver que sucede?
Título: Dibdll
Publicado por: Capiflash en 10 de Febrero de 2006, 03:53:37 PM
 P4 3.00Ghz
512 Ram
Nvidia FX5200

Opengl : 60fps
DX : 170    :blink:  :blink:  
Título: Dibdll
Publicado por: StraT en 10 de Febrero de 2006, 04:34:09 PM
 GEFORCE 6600 256

DX 700
OGL 60 ¿?

Saludos
Título: Dibdll
Publicado por: Vicente en 10 de Febrero de 2006, 06:55:30 PM
 Estooo, y como hago eso Zupervaca? :D (soy un inculto). Un saludo!

Vicente
Título: Dibdll
Publicado por: zupervaca en 10 de Febrero de 2006, 07:27:54 PM
 Con nvidia puedes hacerlo desde el propiedades de pantalla->opciones avanzadas y su pestaña, desde ati no lo se, pero me imagino que sera parecido, si ogl os da 60 y directx mas de 60, es que ogl esta sincronozandose verticalmente, os dejo una imagen para guiaros a activar o desactivar la sincronizacion vertical con tarjetas nvidia.

(http://img153.imageshack.us/img153/7628/dibujo3cl.th.jpg)

A mi me va a 1600fps direct3d 1545fps opengl con los ultimos drivers de la pagina de nvidia, que segun ellos aprovechan el dual-core, no me imagino como, pero la verdad es que he ganado unas 200 fps en opengl y direct3d, lo cual se agredece, ademas he mirado en el administrador de tareas y si que es cierto que cuando ejecuto la demo los dos micros se ponen a currar, cosa que solo vi con programas de diseño grafico (uoh)  
Título: Dibdll
Publicado por: nsL en 10 de Febrero de 2006, 10:24:12 PM
 Weno, yo los datos q te di fueron con unos drivers de hace años. No actualizo los catalyst (no se si se siguen llamando asi) porq me van fatal los juegos en las ultimas versiones, me suben mucho los fps , pero tengo como mas lag, como si no pudiese procesar tanta info. Cosa extraña la verdad. Asi q ponle algunos fps mas a los q te di.

Saludos!
Título: Dibdll
Publicado por: Pogacha en 11 de Febrero de 2006, 12:18:39 AM
 Pentium 3 600mhz
GeForce 2Mx

DX 9.0

DX se ve todo azul.
OpenGL: 70-80 ventana, 140 pantalla completa

No se que requerimientos de shaders tiene ?

Saludos.
Título: Dibdll
Publicado por: [EX3] en 11 de Febrero de 2006, 01:09:31 AM
 AMD Atlhon XP 1600+ (1533mhz)
256mb RAM
nVidia gForce 3 Ti 200 64mb

DirectX:
Ventana 378 fps Pantalla completa ? (como carajos lo mido o donde lo veo? :P)

OpenGL:
En ventana, primero con el vSync configurado como "Controlado por la Aplicacion" en el panel de nVidia, como lo he tenido siempre, se quedaba en 60 fps. Desactivandolo por completo me llega a 482 fps.

Remarcar que la animacion va a "pedales", osea, me ocurre como a los otros, se ve la animacion pausada, pero en vez de en Direct3D en OpenGL. En Direct3D se ve fluida.

Salu2...
Título: Dibdll
Publicado por: [MaKK] en 11 de Febrero de 2006, 10:34:40 AM
 AMD 64 3200+
1G RAM
X800pro

DX: 1660
OGL:1600

En modo ventana con la vista por defecto.
Título: Dibdll
Publicado por: MrSickman en 11 de Febrero de 2006, 12:27:07 PM
 Esto se esta pareciendo al 3DZupervacaMark 2006.... :D

Voy a contribuir:

Ogl : 920
Dx : 1200

nVidia 6600GT 128
Título: Dibdll
Publicado por: Marci en 12 de Febrero de 2006, 12:51:19 PM
 AMD Athlon 64 3800
1 GB de ram
ATI x800 GTO

DirectX 1800 fps
OpenGL 1700 fps

Se ve bien en los dos casos
Título: Dibdll
Publicado por: Snakers en 12 de Febrero de 2006, 02:39:26 PM
 NVIDIA Geforce 6200
AMD Athlon +3200 64
1Gb de Ram

DX:245 fps
OGL:60 fps
Título: Dibdll
Publicado por: Lord Trancos 2 en 12 de Febrero de 2006, 03:48:32 PM
 WinXP SP1 + P4 2.4Gz 1GB + GForce 6600 256Mb

DX - ~650
GL - ~500
Título: Dibdll
Publicado por: zupervaca en 12 de Febrero de 2006, 04:29:23 PM
 He subido otro nuevo, es basicamente lo mismo, ahora deja aumentar o disminuir el numero de veces que se renderiza el modelo 3d y las teclas Z/X sirven para aumentar o disminuir la velocidad de la animacion en vez de cambiar su direccion, tambien he quitado que la velocidad de actualizacion de la escena de la demo se sincronice a 60fps ya que me parece que este es el fallo de por que algunos veis la animacion a trompicones, ¿me podriais indicar algun sitio donde digan como hacer una sincronizacion bien hecha?

Como era de esperar aruba aun no me ha solucionado el tema de poder subir archivos a mi web personal y tengo que usar la otra web, el que quiera probar cuantos modelos puede llegar a renderizar su maquina puede bajar la nueva demo desde aqui, hechar un vistazo al nuevo teclas.txt

Gracias a todos por la ayuda (ole)
Título: Dibdll
Publicado por: O2 en 12 de Febrero de 2006, 06:13:46 PM
 amd 3000+, 1gb ram, ati 9500@9700

en ambos sobre 830

Saludos.
Título: Dibdll
Publicado por: nsL en 12 de Febrero de 2006, 09:33:31 PM
 403 mas o menos en ambos. Igual q la anterior version

Saludos!
Título: Dibdll
Publicado por: Astat en 12 de Febrero de 2006, 11:37:18 PM
 OpenGL: Unos 85fps
DirectX: Pete directo  :blink:

Intel® Pentium® 4 CPU 2.60GHz HT
VendorID:Intel Corporation TypeID:0 FamilyID:15 ModelID:2
RAM:1023MB Available:317MB 68
Microsoft Windows XP 5.5 Service Pack 2(Build 2600), España/Spanish
1280x1024:32
Adapter 0: NVIDIA GeForce 6800 (nv4_disp.dll 6 v14.10 build 7801)
Título: Dibdll
Publicado por: [EX3] en 13 de Febrero de 2006, 02:48:01 AM
 Las mismas especificaciones de la otra prueba: Atlhon XP 1600+, 256mb Ram, gForce 3 64mb, XP Home Edition

DirectX:
349 fps con un solo modelo en pantalla.
30 fps con 47 modelos en pantalla.
La animacion y el modelo se veian correctamente.

OpenGL:
555 fps con un solo modelo renderizandose.
56 fps con 19 modelos en pantalla.
Las texturas del modelo se veian muy oscuras comparadas con la prueba en DirectX.
La anmiacion se veia mas o menos fluida pero el cambio progresivo entre frame y frame era un poco tosco (no se explicarme mejor, sorry :()
Desde los 19 modelos en pantalla el programa paso a 1 fps casi al instante y los polgonos se volvieron locos de atar tal y como muestra la siguiente captura:
(http://img95.imageshack.us/img95/3207/clipboard020md.th.jpg)
Este efecto era irreversible en plena ejecucion, aun reduciendo los modelos en pantalla el programa no subia de 1 fps y los poligonos seguian descolocados.

Es grave, doctor?  :blink:

Salu2...
Título: Dibdll
Publicado por: zupervaca en 13 de Febrero de 2006, 08:52:09 AM
 Pues si no le pasa a nadie mas si :lol:

La diferencia entre 1 a 19 modelos es que el for va hasta 19, es decir:

for( int n = 0; n < this->numModels; n++ )
{
this->view->RenderIndexedPrimitive();
}

Título: Dibdll
Publicado por: [EX3] en 14 de Febrero de 2006, 02:12:15 AM
 
Cita de: "zupervaca"Pues si no le pasa a nadie mas si :lol:
Pues ya me diras :P por que los poligonos no se vuelven paranoicos por ejecutar un bucle x veces, o si? xDDD Y es mas, no veo la razon de que pase por usar un API en concreto y no el otro, suponiendo que el codigo de ambos ejemplos sea el simil en cuanto a llamadas segun el API ;)

Animo y suerte con el proyecto ;)

Salu2...
Título: Dibdll
Publicado por: zupervaca en 14 de Febrero de 2006, 12:44:19 PM
 Por lo que he visto en varios ordenadores, OpenGL tiene muchos problemas con los shaders, sobre todo en tarjetas graficas que no soportan shaders 1.1, la geforce3 me parece que es una de ellas, en Direct3D se emula correctamente, pero en OpenGL suele fallar.
Título: Dibdll
Publicado por: [EX3] en 14 de Febrero de 2006, 11:51:57 PM
Cita de: "zupervaca"la geforce3 me parece que es una de ellas
Que yo sepa la gForce 3 Ti 200 soporta Vertex & Pixel Shaders 1.1.

Salu2...
Título: Dibdll
Publicado por: zupervaca en 14 de Febrero de 2006, 11:56:54 PM
 Pues ya me has acojonado, no obstante tengo pensado volver a crear toda la parte del render desde cero, para pulir unas cuantas cosas que no me gustan.

¿Siempre te pasa cuando alcanzas los 19 modelos a renderizar?
Título: Dibdll
Publicado por: [EX3] en 15 de Febrero de 2006, 12:49:04 AM
 Pues en realidad no, con 2 ya me pasa :blink: El otro dia llegaria a 19 por que le daria demasiado rapido a la tecla de incremento y no refrescaria la ventana a tiempo (el testeo de modelos simplemente me limitaba a incrementar rapidamente modelos en pantalla hasta llegar a 30 fps) Se ve que el simple hecho de incrementar provoca el fallo y baja bestialmente los fps, curioso :huh:

Salu2...
Título: Dibdll
Publicado por: zupervaca en 17 de Marzo de 2006, 03:17:38 PM
 Hoy me he tomado el dia libre para avanzar un poco con la dibDll, ya he hecho que compile en linux correctamente con opengl, si lo quereis probar podeis descargar aqui el test. El test sigue siendo el mismo, el hellknight del doom3 con su animacion por huesos. En el mismo zip esta para windows con direct3d y opengl y para linux con opengl. ¿Alguien sabe si existe la manera de emular un mac en un pc o desde linux?

Editado: Se me olvidaba, la diferencia entre 54 modelos (se me queda en 60fps) en windows opengl y linux opengl es de 10 fps ganando windows, queda una vez mas demostrado que lo que importa es el hardware y ya no tanto el sistema operativo ni el api grafico, esos 10 fps pueden deberse a alguna capa extra que tenga linux. (Y eso que so prowindows :lol:)
Título: Dibdll
Publicado por: ethernet en 17 de Marzo de 2006, 03:34:23 PM
 Un análisis bien concienzudo, sí señor.
Título: Dibdll
Publicado por: Gezequiel en 17 de Marzo de 2006, 07:19:04 PM
 GeForce 4 MX 440
AMD Athlon XP 2400+
512MB RAM

Win32_dx: Detecta un problema y debe cerrarse
Win32_ogl: FPS: 60
Título: Dibdll
Publicado por: TheAzazel en 17 de Marzo de 2006, 07:42:08 PM
 X2 4800+ con una GeForce 7800GT:

winogl: 2050fps
wind3d: 2200fps

en linux luego lo pruebo :)
Título: Dibdll
Publicado por: [EX3] en 17 de Marzo de 2006, 08:08:18 PM
 AMD Athlon XP 1600+ | 256 Mb RAM | nVidia GeForce 3 Ti 200 64 Mb | Windows XP Home Edition

DirectX:
- Fps de media:
  1 modelo = 360
  20 modelos = 60
- Ningun fallo en el renderizado del modelo, animacion suave.

OpenGL:
- Fps de media:
  1 modelo = 446
  20 modelos = ?

- Volvio a petar el modelo deformandose los vertices salvajemente al añadir mas modelos a la escena :(
(http://img225.imageshack.us/img225/4051/clipboard018je.th.png)

- La animacion no es tan fluida como con DirectX y a veces algunos poligonos no se pintan (solo en algunos frames sueltos, no se aprecia casi)

Salu2...

P.D.: Ahora me entero que Linux ejecuta EXE's  :ph34r: Ya se que el formato Win32 no :P pero no tenian una extension diferente?
Título: Dibdll
Publicado por: zupervaca en 17 de Marzo de 2006, 08:21:53 PM
 
CitarP.D.: Ahora me entero que Linux ejecuta EXE's  No tenian una extension diferente?
Realmente le da igual que extension le metas ya que mira si es un ejecutable, lo puse por costumbre y sin darme cuenta.

Solo me ha dado tiempo a hacer compatible el codigo con el gcc con lo que no he mirado este tema que te ocurre con opengl, esta claro que con algunas tarjetas graficas peta direct3d y con otras opengl, repasando todo el hilo casi todas las tarjetas inferiores a una gforce5 (en ati milagrosamente no ha ocurrido problemas que era mi mayor miedo :lol:) han tenido algun problema, con lo que puede ser tema de compatibilidad con shaders aunque aun no estoy seguro, lo digo por que los shaders de direct3d estan compilados ya en disco, por ahora no me preocupo mucho ya que cuando me meta con el tema de efectos tendre que subir a shaders 2.0 o 3.0 para darle caña al asunto.

Hablando de shaders de direct3d, los meto en el disco compilados por que me jode usar las direct3d extendidas (d3dx) solo por una funcion para compilarlos, pense en meter el psa.exe y vsa.exe en el directorio del juego y compilarlos en tiempo de ejecucion, pero no tendria la manera de saber si ha ocurrido o no un error :(, ¿se os ocurre alguna otra manera?
Título: Dibdll
Publicado por: Haddd en 17 de Marzo de 2006, 10:09:40 PM
 Al final tendrás que usar las d3dx, así que mejor empezar ya no?
Título: Dibdll
Publicado por: [EX3] en 18 de Marzo de 2006, 01:30:22 AM
 Las D3DX traen varias funciones la mar de utiles a parte de la que mencionas, ya que estas trabajando DirectX aprovechalo lo maximo posible ;)

Cita de: "zupervaca"Realmente le da igual que extension le metas ya que mira si es un ejecutable, lo puse por costumbre y sin darme cuenta.
Windows desde el shell tambien permite ejecutar ejecutables aunque su extension sea diferente. En algunos proyectos mios escondia pequeños ejecutables renombrados a *.DLL o *.DAT y los podia ejecutar sin problemas (tenia varios modulos importantes divididos en diferentes ejecutables que solo podian ser llamados desde el ejecutable principal, una chorrada de principiante de hace 6 años xDD)

Salu2...
Título: Dibdll
Publicado por: zupervaca en 18 de Marzo de 2006, 02:35:45 AM
 Pues en principio es que no me hace falta usar d3dx ya que lo hago todo a pelo, lectura de imagenes, matrices, quaterniones, shaders, etc. el unico motivo de por que tendria que usar esta libreria seria para poder compilar el shader, osea esta funcion D3DXAssembleShader, al principio la usaba y me daba igual, pero resulta que en el ordenador que tiene mi hermana con sus directx9c instaladas no encontraba la libreria de d3dx ya que estoy compilando con una version mas reciente aunque siguen siendo las dx9c, con lo que la solucion que vi fue usar un shader precompilado, pero esto limita a no poder crear shaders en tiempo de ejecucion y tener que tenerlos todos compiladitos en un directorio, este problema en principio a la hora de hacer un juego no importa por que los shaders no se van a modificar y van a ser algo fijo, pero a la hora de hacer pruebas es un rollu.