User Tag List

Página 5 de 9 PrimerPrimer 123456789 ÚltimoÚltimo
Resultados 61 al 75 de 132

Tema: BennuGD por fin en Playstation2!

  1. #61

    Fecha de ingreso
    Jul 2009
    Mensajes
    8,737
    Mencionado
    64 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    937
    Agradecer Thanks Received 
    571
    Thanked in
    Agradecido 345 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por masteries Ver mensaje
    Como se nos va la lengua SplinterGU, tienes un privado que desmiente tamañas infamias.... jajajaja

    No es para Outrun genéricos, es para OutRunners genéricos. Que OutRun no tiene texturas.
    jejeje, tienes razon, outrunners genericos... quise decir eso... por otro lado, escribi este mensaje antes de leer tu PM.

    Cita Iniciado por GameMaster Ver mensaje
    Dos pedidos:

    Masteries: te costaria mucho crear una demo para simular el suelo de SF (pixel perfect) adaptando tu engine ?

    Splinter: te costaria mucho crear una funcion que tenga como parametro de entrada un grafico de dimension variable (de un fpg o suelto), y que lo destripe con map_block_copy's en tiras de 1 pixel de altura y largura original, y despues salve dichas tiras en un fpg ?
    ya lo hare, pero lo hare directo en un motor, no es necesario crear la funcion, y consumir memoria... incluso no es necesario usar resize...

    Cita Iniciado por masteries Ver mensaje
    Pues la verdad es que me vendría genial esa función, que metiera las "tiras" gráficas en un .fgp, porque es el mayor escollo, el tiempo que se tarda en tener listo un suelo de estos... uffff

    ---------- Post añadido a las 09:01 ---------- Post anterior a las 09:00 ----------



    Si, si conozco el efecto, es de la carretera con textura, pero que a la vez se ve arrastrada por el scroll horizontal.
    ya tendre tiempo de montarme un motor generico, de momento tengo otras cosas pendientes.

  2. #62

    Fecha de ingreso
    May 2008
    Ubicación
    A tu lado, en tus sueños
    Mensajes
    22,309
    Mencionado
    145 Post(s)
    Tagged
    1 Tema(s)
    Agradecer Thanks Given 
    319
    Agradecer Thanks Received 
    552
    Thanked in
    Agradecido 424 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    3
    splinter creanos la funcion anda, no tiene nada que ver con las nuevas features de bennu, es algo que necesitamos hace tiempo en lenguaje bennu xD

  3. #63

    Fecha de ingreso
    Jul 2009
    Mensajes
    8,737
    Mencionado
    64 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    937
    Agradecer Thanks Received 
    571
    Thanked in
    Agradecido 345 veces en [ARG:2 UNDEFINED] posts
    necesitamos? para que?

    a ver... un lenguaje generico no puede tener funciones especificas sin uso generico... lo que pides parte de una logica especifica... para algo que tu necesitas...

    yo no puedo arruinar el lenguaje metiendo cosas que les de el gusto a 1 u otro usuario... eso haria del lenguaje algo ridiculo... repito, no puedo tirar funciones asi porque si...

  4. #64

    Fecha de ingreso
    May 2008
    Ubicación
    A tu lado, en tus sueños
    Mensajes
    22,309
    Mencionado
    145 Post(s)
    Tagged
    1 Tema(s)
    Agradecer Thanks Given 
    319
    Agradecer Thanks Received 
    552
    Thanked in
    Agradecido 424 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    3
    es una process de bennu lo que te pido, que leas la imagen y salves sus lineas horizontales en nuevas imagenes, eso lo sabes hacer mejor que yo, no te estoy pidiendo el mundo...

    Es un processo del prg no un modulo lo que te pedimos...

  5. #65

    Fecha de ingreso
    Jul 2009
    Mensajes
    8,737
    Mencionado
    64 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    937
    Agradecer Thanks Received 
    571
    Thanked in
    Agradecido 345 veces en [ARG:2 UNDEFINED] posts
    ah, un prg...

    cual es la complicacion de la funcion? dime exactamente que quiere que haga? sera una funcion que se llamara constantemente o solo al cambiar de nivel o arrancar el juego?

    ahora mismo estoy con los cambios finales de la version monolitica de bennugd, asi que te pedire paciencia.

    ---------- Post añadido a las 18:10 ---------- Post anterior a las 18:07 ----------

    ah, ya veo, salvar el grafico, pero eso es muy simple...

    en un rato te paso la funcion...

  6. #66

    Fecha de ingreso
    May 2008
    Ubicación
    A tu lado, en tus sueños
    Mensajes
    22,309
    Mencionado
    145 Post(s)
    Tagged
    1 Tema(s)
    Agradecer Thanks Given 
    319
    Agradecer Thanks Received 
    552
    Thanked in
    Agradecido 424 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    3
    si es sencilla, es para quitar el trabajo de hacerlo en el photoshop...

    la idea es que le puedas pasar el grafico que quieras, pero que lo recorte todo en tiras de 1 pixel de altura (la largura de cada tira sera la del grafico), despues estas tiras se salvan numeradas por ejemplo en un fpg, si se puede pasar el nombre del fpg tb como entrada pues mejor.

  7. #67

    Fecha de ingreso
    Jul 2009
    Mensajes
    8,737
    Mencionado
    64 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    937
    Agradecer Thanks Received 
    571
    Thanked in
    Agradecido 345 veces en [ARG:2 UNDEFINED] posts
    Código:
    import "mod_map";
    import "mod_file";
    import "mod_mem";
    
    function int split_map( int file, int graph )
    private
        int fileout, g;
        int w, h, depth, pitch;
        int i;
        char * gbuff, * gbuffo;
    begin
        w = map_info( file, graph, G_WIDTH );
        h = map_info( file, graph, G_HEIGHT );
        depth = map_info( file, graph, G_DEPTH );
        pitch = map_info( file, graph, G_PITCH );
    
        gbuff = map_buffer( file, graph );
    
        fileout = fpg_new();
    
        g = map_new( w, 1, depth );
        gbuffo = map_buffer( 0, g );
    
        for( i = 0; i < h; i++ )
            memmove( gbuffo, gbuff, pitch );
            fpg_add( fileout, i + 1, 0, g );
            gbuff += pitch;
        end
    
        map_del( 0, g );
    
        return fileout;
    end
    
    process main()
    private
        nfpg;
        g;
    begin
        g=load_png(argv[1]);
        nfpg=split_map(0,g);
        fpg_save(nfpg, argv[2]);
    end


    ---------- Post añadido a las 18:30 ---------- Post anterior a las 18:28 ----------

    la funcion te retorna el id del fpg, si queres que lo salve directo, modificala...

    en este ejemplo, le pasas el nombre del png y el nombre del archivo.fpg, y hace el trabajo.

    saludos.

    ---------- Post añadido a las 18:32 ---------- Post anterior a las 18:30 ----------

    ahi subi una modificacion... es que la hice muy rapido y no pense en la optimizacion, ahora va mas rapido.

    ---------- Post añadido a las 18:33 ---------- Post anterior a las 18:32 ----------

    queda fuera de esto, puntos de control...
    Última edición por SplinterGU; 05/05/2012 a las 00:32

  8. #68

    Fecha de ingreso
    May 2008
    Ubicación
    A tu lado, en tus sueños
    Mensajes
    22,309
    Mencionado
    145 Post(s)
    Tagged
    1 Tema(s)
    Agradecer Thanks Given 
    319
    Agradecer Thanks Received 
    552
    Thanked in
    Agradecido 424 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    3
    muchas gracias splinter!! Seguro que con esto le facilitaras mucho la vida a masteries.

    Ahora masteries, a la espera de esa demo simulando el suelo del SF2 xD

  9. #69

    Fecha de ingreso
    Oct 2007
    Ubicación
    Madrid
    Mensajes
    3,441
    Mencionado
    112 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    329
    Agradecer Thanks Received 
    1,183
    Thanked in
    Agradecido 586 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por GameMaster Ver mensaje
    muchas gracias splinter!! Seguro que con esto le facilitaras mucho la vida a masteries.

    Ahora masteries, a la espera de esa demo simulando el suelo del SF2 xD
    Gracias Splinter,

    Pero una cosa, estaría bien que como argumento a la función se le pudiera pasar el escalado horizontal decremental para las líneas y la altura en píxeles que se desea para cada línea, por ejemplo, 1ª línea 100%, 2º línea 100% - 1.75% y así...
    Antes de que lo preguntes, sí, el decremento necesita poder ser un número con decimales.

    Recuerdo haber probado esto en Fénix, sólo con size y número decimales (no sabía cómo grabarlos en un .fpg ya escalados); se producían aberraciones gráficas cuando el tamaño de línea era ya muy pequeño.

    GameMaster, a ver si saco un rato y pruebo con el suelo de SF2, pero tal vez no atine a la primera con el valor adecuado para el parallax horizontal, probaré con el mismo que uso ahora.

  10. #70

    Fecha de ingreso
    Jul 2009
    Mensajes
    8,737
    Mencionado
    64 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    937
    Agradecer Thanks Received 
    571
    Thanked in
    Agradecido 345 veces en [ARG:2 UNDEFINED] posts
    yo hice lo que me pidio gamemaster.

    nunca te iba a preguntar sobre los decimales.

    pero bueno, tienes la funcion para adaptarla a tu gusto.

  11. #71

    Fecha de ingreso
    Sep 2005
    Mensajes
    15,202
    Mencionado
    247 Post(s)
    Tagged
    1 Tema(s)
    Agradecer Thanks Given 
    675
    Agradecer Thanks Received 
    1,847
    Thanked in
    Agradecido 1,264 veces en [ARG:2 UNDEFINED] posts
    Splinter, si es por mi, también me haría ilusión tener un motor estilo OutRunners. Tampoco es un motor tan específico, los scrolls, los modo7 y los modo8 también son motores específicos para juegos (vale, menos concretos, pero motores al fin y al cabo) y están ahí desde DIV.

    Pero como siempre, a cada cosa su prioridad, que también dije yo de hacer el de scroll tileado y aun ni lo he empezado (lo dejé parado a la espera de resolver un problema con el actual motor de tiles, y ahí se quedó ^^U).

    Cita Iniciado por masteries Ver mensaje
    Gracias Splinter,

    Pero una cosa, estaría bien que como argumento a la función se le pudiera pasar el escalado horizontal decremental para las líneas y la altura en píxeles que se desea para cada línea, por ejemplo, 1ª línea 100%, 2º línea 100% - 1.75% y así...
    Antes de que lo preguntes, sí, el decremento necesita poder ser un número con decimales.

    Recuerdo haber probado esto en Fénix, sólo con size y número decimales (no sabía cómo grabarlos en un .fpg ya escalados); se producían aberraciones gráficas cuando el tamaño de línea era ya muy pequeño.
    ¿Esa es la técnica? ¿Asignar a cada línea un valor de escalado distinto? No sé, me parece... primitivo.
    Hasta ahora, mi estudio de este motor a través de papel y boli me ha revelado que, existe una función matemática que determina el escalado según la distancia. Así, si algo que está en el suelo, dibujado justo a la mitad entre la parte inferior de la pantalla y la línea del horizonte, debe escalarse al 50 %. Es más, cada objeto tendrá el mismo porcentaje de escalado que la distancia en porcentaje recorrida desde la línea de horizonte hasta el borde inferior.
    Me explico fatal, mejor con una imágen (ver adjunto).

    Lo que ya no sé es cómo llevar esta fñormula al dibujado de líneas en cuestas, o incluso a las posiciones intermedias. Sé que si un punto está 40 pixels por debajo de la línea de horizonte, y hay 100 pixels entre esta y la parte inferior de la pantalla, el objeto se escala al 40% (si hubiese 200 pixeles, serían al 20% de su tamaño)

    Cita Iniciado por masteries Ver mensaje
    GameMaster, a ver si saco un rato y pruebo con el suelo de SF2, pero tal vez no atine a la primera con el valor adecuado para el parallax horizontal, probaré con el mismo que uso ahora.
    ¿En aquella época no se hacía uso de los 12 planos de scroll para dar el efecto de suelo tridimensional? Me suena que era así, pero lo mismo se usaba el motor de Out Run, ni idea.
    Imágenes adjuntadas Imágenes adjuntadas  
    PROYECTOS REALIZADOS: FrikiMusic, Motor Scroll Tileado v3.2, Venturer2X (GP2X/WIZ), Echo, Screen Break Time
    PROYECTOS EN MARCHA (algunos): Bennu GP2X: 95% (necesito ayuda) ¡Antes de Halloween!: 92% SpaceH2H: 8%

  12. #72

    Fecha de ingreso
    Sep 2005
    Mensajes
    15,202
    Mencionado
    247 Post(s)
    Tagged
    1 Tema(s)
    Agradecer Thanks Given 
    675
    Agradecer Thanks Received 
    1,847
    Thanked in
    Agradecido 1,264 veces en [ARG:2 UNDEFINED] posts
    Vease que, de abajo a arriba, cada línea horizontal se ha dibujado justo a la mitad del espacio de la anterior (la que queda justo debajo) y la línea del horizonte.
    Así diseñé yo un juego de laberintos con una vista en primera persona... Pero en papel no queda igual que en el ordenador.
    PROYECTOS REALIZADOS: FrikiMusic, Motor Scroll Tileado v3.2, Venturer2X (GP2X/WIZ), Echo, Screen Break Time
    PROYECTOS EN MARCHA (algunos): Bennu GP2X: 95% (necesito ayuda) ¡Antes de Halloween!: 92% SpaceH2H: 8%

  13. #73

    Fecha de ingreso
    May 2008
    Ubicación
    A tu lado, en tus sueños
    Mensajes
    22,309
    Mencionado
    145 Post(s)
    Tagged
    1 Tema(s)
    Agradecer Thanks Given 
    319
    Agradecer Thanks Received 
    552
    Thanked in
    Agradecido 424 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    3
    Cita Iniciado por Drumpi Ver mensaje
    ¿En aquella época no se hacía uso de los 12 planos de scroll para dar el efecto de suelo tridimensional? Me suena que era así, pero lo mismo se usaba el motor de Out Run, ni idea.
    Creo que leias muchas revistas de Mega Drive xDD
    El suelo del SF2 eran rutinas como muchas otras creadas para efectos de distorciones de estos juegos, seguramente fuera una rutina en ASM.
    En Bennu hay mas formas de simularlo, con map_block_copy por ejemplo, pero no interesa porque esto es muy lento. De hecho habia un ejemplo en DIV para simular un suelo al estilo SF2.

    La tecnica de masteries no creo que diste mucho de la usada en otros juegos retro de caracteristicas similares...

  14. #74

    Fecha de ingreso
    Sep 2006
    Mensajes
    48
    Mencionado
    0 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    interesante tema, siempre deseamos hacer un top gear como el de snes, pero
    falto el motor , asi que si alguien lo porta a bennu seria genial y que lo anunciara
    en la pagina de bennu tambien..

    aqui enlaces de interes..

    http://web.archive.org/web/200901070...et/lou/pseudo/

    http://www.yoyogames.com/downloads/tutorials/threed.zip
    Última edición por coldev; 10/05/2012 a las 19:06

  15. #75

    Fecha de ingreso
    Oct 2007
    Ubicación
    Madrid
    Mensajes
    3,441
    Mencionado
    112 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    329
    Agradecer Thanks Received 
    1,183
    Thanked in
    Agradecido 586 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por Drumpi Ver mensaje

    ¿Esa es la técnica? ¿Asignar a cada línea un valor de escalado distinto? No sé, me parece... primitivo.
    Hasta ahora, mi estudio de este motor a través de papel y boli me ha revelado que, existe una función matemática que determina el escalado según la distancia.

    Lo que ya no sé es cómo llevar esta fñormula al dibujado de líneas en cuestas, o incluso a las posiciones intermedias. Sé que si un punto está 40 pixels por debajo de la línea de horizonte, y hay 100 pixels entre esta y la parte inferior de la pantalla, el objeto se escala al 40% (si hubiese 200 pixeles, serían al 20% de su tamaño)
    Eso es sólo el principio de la técnica, pero no es excesivamante compleja en cuanto a longitud de código, pero si es capaz de hacer que te salga humo de la cabeza.

    Esa imagen a "manímetro" que has puesto sirve para imágenes estáticas, pero al darles movimiento la sensación será de "falsedad", yo pasé por esa etapa. Hay que dibujar la textura de forma que se vea como si un suelo de Doom o de un juego Build se tratase, puede que la técnica difiera enormemente, pero se debe alcanzar esa "sensación".

    La fórmula que has descubierto no sirve para cambiar la perspectiva del terreno como ya hace Thunder Blade, técnica que es la misma que se debe aplicar para hacer subidas y bajadas, solo que debe aplicarse de forma selectiva y dinámica a unas partes de la carretera, no a toda ella.

    Dentro de un tiempo vereís las nuevas propiedades en funcionamiento, pero habrá que tener paciencia, apenas saco tiempo para esto.

    De todas formas, gracias por el interés demostrado, ya veo que no sólo me interesaba a mí saber cómo se hacían los "OutRun" y familiares suyos... jejeje

    La técnica antigua explicada:

    La técnica original, que era todo eso de estar pendiente de la IRQ de vídeo:

    Las máquinas de esa época podían dibujar tiles de " tanto x tanto " solamente, no podían dibujar líneas en la pantalla. Para dibujar líneas recurrían a reprogramar, habilitar y cambiar la regularidad en el tiempo de la interrupción de vídeo, por lo que empezaba dibujando un tile (empezaba a dibujarse en un buffer de memoria una parte ínfima de la carretera), en cuanto se habían dibujado 1 o 2 líneas de ese tile, saltaba la interrupción, se reubicaba la posición de dibujado y se empezaba a dibujar otro tile... así hasta que dibujabas todas las líneas de la carretera, con todo lo que hay que tener en cuenta para que dé la sensación de ser una carretera real. Una vez relleno el buffer de vídeo que contiene el fotograma de carretera en ese momento, se inicia un blitter por transferencia DMA con la memoria de vídeo que contiene el fondo...

    El colocado de los sprites era también otro mundo... dentro de este que acabaís de leer.

    GameMaster:

    A ver si este finde te presento el suelo de SF2 en funcionamiento.

Página 5 de 9 PrimerPrimer 123456789 ÚltimoÚltimo

Permisos de publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •