YETI3D PRO en Bennu (MOTOR 3D - RENDER BASADO EN SW)

Started by l1nk3rn3l, November 27, 2010, 06:59:16 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Windgate

¿El lenguaje era bastante diferente al Bennu3D, verdad?

Recuerdo hace meses que probé una versión que subiste para Windows, un ejemplo bonito pero la sintaxis no me gustó demasiado...
Iván García Subero. Programador, profesor de informática, monitor de actividades culturales y presidente de TRINIT Asociación de Informáticos de Zaragoza. http://trinit.es

Outlaw

Y no se puede hacer un diccionario para establecer un puente entre los dos lenguajes? Estoy errado?
"Life is cheap when the bounty is high"

Outlaw

 l1nk3rn3l estuve probando el yeti3d la versión nueva que subiste, paso a contarte lo que fui viendo:

- En el editort: tiene una interfaz muy simple y se agradece ya que resulta muy simple, a primera vista poder editar un nivel, lo que no veo es como dejar de crear paredes con la primera textura que se elige, es decir, la primera textura que elijo para hacer paredes, esa es la que queda, no puedo elegir otras al parecer, o yo no me doy cuenta como hacerlo. Se pueden hacer más que paredes?

- En el md2 tool, me salta un error apenas lo ejecuto, te adjunto una captura de pantalla.

Saludos!
"Life is cheap when the bounty is high"

l1nk3rn3l

#18
que pereza es el borland c++, que crea dependencias...
eso es lo que me fastidia , tambien de NET, son una "#$"#$"#$


P y O: Altura techo
' y ¿: altura suelo
L: Luz global
ctrl + L: Efectos de luz
6,7,8,9: edicion de caras del cubo - debe estar activo el modo cueva o modo terreno
f,g: solido
T: modo Terreno
C: modo cueva
1,2,3,4: efectos de luz a nivel de textura
insert , supr: cambiar textura piso
pag arr, pag abaj: cambiar textura techo
H,Q: efectos de render
K: modificar forma cubos
S: suavisar las pendientes


ya subi una nueva version haber que pasa..
Gracias


el motor tiene pinta de juego de N64

l1nk3rn3l

#19
bueno , tengo buenas noticias, ya hay render sobre bennu
pero..


tengo un problema al escribir sobre la variable screen(sdl surface) de bennu
me toca con flip, hay alguna forma de decirle a bennu que la screen esta modificada
asi como lo hacemos con el graph->modified=1

por cuestiones de velocidad me toca escribir directamente sobre la screen de bennu
asi que no puedo hacerlo sobre un graph de bennu

y claro al usar la funcion flip , sobreescribe toda la pantalla, ... que hago?

aqui el codigo en cuestion:

static int fx_Render(INSTANCE * my, int * params)
{
 game_loop(&yeti); //actualiza datos del motor

 if (scr_initialized)
 {
   pixel_buffer_draw(yeti.viewport.back, (rgb555_t*)screen->pixels, screen->pitch, &pixel_converter);
    // scrbitmap->modified=1;
   SDL_Flip(screen);
 }
}

subo una version de la dll para que la prueben...
http://code.google.com/p/yeti3dplusplus/downloads/list

SplinterGU

#20
mmm... para hacerlo bien deberiamos hacer varias cosas:

1) deberias dejar de usar funciones de usuario para el render y el render hacerlo con los handler_hooks.
2) yo deberia dividir el hook gr_draw_screen

pero para poder salir del paso, deberiamos:

1) el punto 1) que te mencione antes, no usar una funcion de usuario, sino usar el hook.
2) forzar setear restore_type a -1 y dump_type a 1
3) no hacer el flip desde tu funcion, puesto que ya lo hace bennu
4) setear el handler_hook que crees para esto con prioridad mas alta al de bennugd, de esta forma se podria hacer que dibuje primero con tu render, luego que dibuje el render de bennugd, con lo que podrias mezclar graficos 3D + 2D, incluido texto, etc.
5) datos adicionales:

a) solamente hacer el render de yeti3d solo cuando la variable publica de librender == 0:

   if ( jump ) return ;



b) la prioridad de tu hook debe estar entre 9500 y 9000 (excluyendo a estos valores), ya que los usa la librender

HOOK __bgdexport( librender, handler_hooks )[] =
{

    { 9500, gr_wait_frame },

    { 9000, gr_draw_frame },

    {    0, NULL          }

} ;




otra opcion es, evitar usar librender y todos los modulos que dependen de ella, con lo que tu te encargarias solito del render, demas esta decir que deberias setear el video, crear el surface del video, etc... un render propio.

Download Lastest BennuGD Release: http://www.bennugd.org/node/2

l1nk3rn3l

#21
 ;D

solucionado, gracias ...
http://code.google.com/p/yeti3dplusplus/downloads/list

desearía que me dijeran cuantos fps obtienen , estoy usando una resolución 800*600

y logro 70fps, muy bajo pero , desearia saber otras ... y en que equipo lo probaron...

nueva version disponible , pero ya tenemos render 100%, lo malo es que  toca
corregir los errores de colision del motor (que ya tenia). por el momento se puede
mover por el mapa pero si atraviesan las paredes puede provocar un error, asi
que no atravesarlas...(lo estoy corrigiendo)


::)






SplinterGU

Download Lastest BennuGD Release: http://www.bennugd.org/node/2

l1nk3rn3l


SplinterGU

#24
Quote from: l1nk3rn3l on December 26, 2010, 02:32:35 AM
sip, gracias...

cuantos, fps logran?

de nada, me alegra.

veo que aun esta el comando RENDER.

lo malo de esto vs. lo que te digo del hook + el if jump, es que con el metodo que te digo yo, tenes control de frames, y podes aprovechar el uso del set_fps y del motor para que regule los fps.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

l1nk3rn3l

#25
Quote from: SplinterGU on December 26, 2010, 02:35:02 AM
Quote from: l1nk3rn3l on December 26, 2010, 02:32:35 AM
sip, gracias...

cuantos, fps logran?

de nada, me alegra.

veo que aun esta el comando RENDER.

lo malo de esto vs. lo que te digo del hook + el if jump, es que con el metodo que te digo yo, tenes control de frames, y podes aprovechar el uso del set_fps y del motor para que regule los fps.

si , por el momento esta por funcion render, cuando este la version estable,
habra hook interno.. y sera automatico .. el render como si de un scrool se tratara..

lo importante es que ya lo tengo listo para dibujar directamente sobre bennu
el resto ya sera cuestion de tiempo, y de corregir varios bugs, lo raro
es que la version pro trae errores que la version gpl no tiene...(la gpl esta de mejor
calidad en cuanto a bugs),

Gracias splinter por la ayuda,

me ire de vacaciones y en breve habra algo interesante, por el momento
se puede probar con esta version, las espectativas que tengan...











SplinterGU

Download Lastest BennuGD Release: http://www.bennugd.org/node/2

Goku jr

Buenas
a mi me da 133 fps en un portatil con Intel icore 3  y una ati  HD 5450


josebita

Gracias. En cuanto pueda lo compilo para linux y os cuento.

Prg

122 y 124 fps

core 2 duo de 2.26 GHz
4GB de ram
win 7 64 bits
en humos puedes mover la camara con los cursores. es necesario para los niveles a partir del dos :)