Encontronazo con flag sustractivo

Started by Drumpi, June 30, 2010, 03:46:01 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Drumpi

Hola a todos:

Pues nada, que haciendo "experimentos" he descubierto dos cosas:
-Que no tengo ni idea de cómo funciona el blit sustractivo (he puesto un cuadrado rojo sobre uno blanco sobre fondo negro, y sólo se veía parte del rojo sobre el cuadrado blanco, cuando en la intersección se suponía que debería verse turquesa, en mi juego he tenido que invertir colores del gráfico del proceso con el flag32 para conseguir el efecto de oscurecimiento (eso lo puedes ver el el juego que te pasé, Splinter))
-Y que un proceso con flags=32 NO COLISIONA NUNCA.

Código de prueba:
[code language="bennu"]program collision_test;

GLOBAL
    int map1,map2;
    int temp;
BEGIN
    set_mode(800,600);
    set_fps(50,0);
   
    map1=new_map(70,70,16);
    map_clear(0,map1,rgb(255,255,255));
    map2=new_map(70,70,16);
    map_clear(0,map2,rgb(255,0,0));
   
    id_graf(map2);
   
    x=400;
    y=300;
    graph=map1;
    write_int(0,0,0,0,&temp);
   
    loop
        temp=collision(type id_graf);
        if (key(_esc)) break; end
        frame;
    end
   
    unload_map(0,map1);
    unload_map(0,map2);
    let_me_alone();
END

process id_graf (graph)
begin
    z=-2;
    flags=32;
    loop
        x=mouse.x;
        y=mouse.y;
        frame;
    end
end
[/code]

Ahí se pueden ver ambas cosas. Esta vez, o tengo un error garrafal de comprensión (yo ya no descarto nada) o efectivamente hay un fallo.
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

SplinterGU

te suplico que intentes poner tus codigos con los imports necesarios.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

SplinterGU

no se que pasa, en 32bits funciona, con graficos de 32bits.

ahora no puedo analizar el tema, esta semana estoy complicado.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

Drumpi

ups, perdón, fallo tonto, mira que hice el ejemplo para que no hiciesen falta gráficos y me olvidé de los include ^^U
Es lo que tiene tener la bgdc.import universal en la carpeta de pruebas :P
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)