Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





FPS en bloques

Iniciado por DoVerMan_, 01 de Enero de 1970, 01:00:00 AM

« anterior - próximo »

DoVerMan_

                                [Emotion]:
No es que descarte directamente utilizar mmx, es q conforme hago mas pruebas, mas creo q hay algo q no rula bien.
Voy a realizar una prueba básica, q creia funcionaba perfectamente, pero ahora no estoy nada seguro:
Voy a eliminar todo lo no necesario y a poner el motor grafico a hacer flip's sin mas, y calculare los fps q saca.
¿Cuantos deberia sacar, para saber q la cosa está bien, teniendo en cuenta la maquina q tengo?
Por favor orientarme un poquillo.                                

Emotion

                                Vamos a ver... que maquina tienes exactamente?                                
G3: Get the Power!

Juan Mellado

                                [Emotion]
Todo esquema de compresión es en si mismo un esquema de codificación.

Y sí, el RLE que tú dices lo utilizan los BMP.

A ver si me explico mejor: Almacenar dos valores: 1) donde empieza el span (primer pixel no invisible)  y 2) la logitud del span (número de pixels consecutivos no invisibles). Eso es una forma de codificación RLE.

Está comprimiendo, sí, pero lo interesante no es que sólo reduce el tamaño, sino que te evita procesar pixels invisibles centrándote en los visibles.

Saludos                                

DoVerMan_

                                Mi maquina es un k6-2 450, con 192MB de ram una ati rage2c de 8MB.

Bien he realizado la prueba q antes decia, he puesto el motor gráfico a hacer flip's
y me saca 86 FPS, ¿Es poco verdad?                                

Drácula

                                Pues Doverman, ese es tu máximo. Ahora piensa que esto es haciendo sólo BlitFast y Flip!! Si además tienes que construir tu el fondo...En fin, creo que deberías pasar a DX, es la única forma. Para darte una idea, yo tengo un Pentium 200 con una Savage 32 MB. Pues bien, en el ejemplo que tengo de mi motor hago lo siguiente:

En una pantalla de 800x600

Borro el fondo con un color.
Dibujo una imagen de TODA la pantalla rotándola.

Las FPS son(creo recordar) de 115 FPS

Si además le añado sprites, ¡apenas baja!

Si quieres probarlo, bájate el motor de mi página:
http://webs.ono.com/dracular

                               
ltimas mejoras en Merlín: Multitextura.Control y generación automática de LOD.Importa ASE y X. Frustum Clipping por BB.Render añadido de wireframe y del BB.Animaciones por interpolación.Animaciones de textura...
Actualmente:Octree y jerarquías

Emotion

                                y te quejas de 86 FPS? Pero si eso significa que va de muerte... de hecho con ese tipo de refresco en cualquier pantalla se vera muy bien y los ojos de mas de uno te lo agradeceran (incluyendo los mios :sonriendo:)                                
G3: Get the Power!

DoVerMan_

                                [Dracula]:
No entiendo cuando dices q he d pasarme a DX, el motor gráfico lo estoy haciendo con DirectDraw7.
Por cierto los 86 FPS son solo flip's, es decir:
* Inicio DirectDraw
* Creo triple buffer
* realizo flip's
Tu motor Dracula no me rula, asi como la mayoria de las aplicaciones q utilizan D3d, no se porque, aunq los juegos si q me funcionan.
[Emotion]:
Si q me quejo de bajo rendimiento, ten en cuenta que este resultado de FPS es solamente realizando flip's, a esto hay que añadirle absolutamente todo: gráficos, transparencias, translucencias, iluminación, sonido, IA, scripts, etc, es decir, 86 fps es posible q sean una kk, d todas formas es mi primera apli utilizando directdraw, y por eso no se si es mucho, poco o suficiente. El problema es q no quiero avanzar hasta estar seguro de q la base del motor rula con sufiente soltura como para comenzar a añadir cosas.                                

Emotion

                                Que version del SDK de DirectX estas usando?                                
G3: Get the Power!

DoVerMan_

                                Estoy utilizando el sdk 8.0 para todo, excepto para DirectDraw, q no se xq venia defectuoso (DDraw.lib) y como no variaba respecto al sdk 7, pille este archivo y lo añadi.                                

Emotion

                                Supongo que por esa razon no te funciona bien, porque seguramente habra alguna diferencia de DDraw7 a DDraw8, pero no lo se, yo tengo el SDK de DirectX8.0 tambien, aunque no observe problemas en la ejecucion de los ejemplos...

Has intentado que alguien te deje el SDK para que lo vuelvas a instalar? a lo mejor con eso puedes hacer pruebas de un modo mas objetivo, porque si te funciona mal puede que no te este dando los resultados correctos, pero no lo puedo asegurar :sonriendo:

Un Saludo
                               
G3: Get the Power!

synchrnzr

                                Otra opción, si tu ancho de banda te lo permite: bájatelo de http://download.microsoft.com/download/win...N-US/Dx8sdk.exe                                

DoVerMan_

                                [Emotion]:
No creo q sea fallo del sdk ni de las librerias, DirecDraw no ha sido modificado desde DirectX 7, en DirectX 8 se añade DirectGraphics, y se abandona (deja de actualizarse) DirectDraw. Al instalar el sdk 8, a mi tambien me funcionan los ejemplos q utilizan DirectDraw, pero al compilarlos me da un error de link, diciendome q no se puede colocar en una dirección del fichero DDraw.lib. Miré el archivo, y mientras el que viene con el sdk 8 ocupa 4'5kb, el q viene con el sdk 7 ocupa 28'5kb, asi q lo reemplazas y listo, los ejemplos y todo lo q utilize DirectDraw rula y se compila bien.                                

Emotion

                                En ese caso no se porque te falla...

Siento no poder serte de mucha mas ayuda. Lo siento... :triste:
                               
G3: Get the Power!

DoVerMan_

                                [Emotion]:
Si no es q falle, las DX no me fallan, de hecho utilizando Visual Studio 5.0, no tengo problemas para compilar mi codigo.
El problema, está en q no se si el rendimiento es adecuado o no, es decir ¿Necesitare mas fps, para conseguir montar una escena isometrica, similar a las de diablo, o mejor aun, diablo2?
A mi la verdad lo q me mosquea es que estos dos juegos puedan mover todo lo q explique mas arriba (luz dinamica, transparencias, translucencias, etc) y a un frame-rate decente. No es q quiera hacer o pueda hacer yo lo mismo, pero una aproximación bastante mas baja imagino q si, (eliminando cientos de opciones que tienen).                                

Drácula

                                Doverman, debes usar DX8.1 para utilizar mi motor y ver los ejemplos.
Si tu utilizas DX7..¿has probado ejecutar tu código en algún ordenador que tenga DX8.1 instalado? A lo mejor no funciona. Te lo digo porque hay cosas que a mi no me funcionan que con versiones anteriores sí me funcionaban.
Respecto a lo de usar DX, tu usas DX sólo para bloquear los buffers. Yo me refiero a que uses TODO el tiempo DX y no accedas a buffers salvo para lo más imprescindible.

Y si sólo tienes 80 FPS haciendo Flip...¡yo creía que era haciendo bltFast!! Pruébalo con un BltFast y un Flip, a ver cuanto te da y ese sí es tu máximo!

Y respecto a cómo lo hará el Diablo, con mi motor, por ejemplo, puedes tener esa velocidad con todos esos efectos. El secreto:Simplemente que yo uso D3D y tu no.

                               
ltimas mejoras en Merlín: Multitextura.Control y generación automática de LOD.Importa ASE y X. Frustum Clipping por BB.Render añadido de wireframe y del BB.Animaciones por interpolación.Animaciones de textura...
Actualmente:Octree y jerarquías






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.