fade()

fade(<% red>, <% green>, <% blue>, <velocidad>)

Descripción:

Inicia un fundido de los colores de la paleta del juego hasta que se alcancen los porcentajes de visualización (desde 0% hasta 200%) de las componentes red (rojo), green (verde) y blue (azul) que se indican como parámetros.

El último parámetro indica la velocidad a la que se va a realizar el fundido de colores, normalmente se define un número desde 1 (muy lentamente) hasta 10 (muy rápidamente).

Si se indica como velocidad un número mayor o igual que 64, el fundido se realizará de forma instantánea.

El fundido se irá realizando gradualmente en las sucesivas visualizaciones del juego (en los siguientes fotogramas).

Si se ponen las tres componentes a 0 se hará un fundido a negro, si se ponen a 200 se hará un fundido a blanco, y si se ponen a 100 se recuperarán los colores originales de la paleta del juego.

Un valor inferior a 100 en una componente apagará su color, mientras que un valor superior a 100, saturará el color.

Se recuerda que el fundido no se realiza al ejecutarse la función fade(), sino en las siguientes sentencias FRAME. Mientras se está realizando un fundido la variable global predefinida fading valdrá cierto (un número impar que en este caso será 1) y cuando se termine el fundido (se alcancen finalmente los valores de visualización de color establecidos), esta variable pasará a valer falso (un numero par, el número 0).

Programa ejemplo:
PROGRAM ejemplo_fade;
BEGIN
    load_fpg("help\help.fpg");
    put_screen(0, 1);
    write (0, 0, 0, 0, "Pulsa [ESPACIO] para ir realizando los efectos.");
    LOOP
        IF (NOT fading AND key(_space))

            fade(rand(0, 200), rand(0, 200), rand(0, 200), 5);

        END
        FRAME;
    END
END


En el ejemplo se carga una pantalla como fondo y se imprime un mensaje; después, cada vez que se pulse la barra espaciadora, si no se está realizando un fundido (IF (NOT fading ...)), se iniciará uno con la función fade() con las tres componentes de color elegidas al azar entre 0% y 200% (con la función rand()) y a velocidad 5.


Ver: fading - fade_off() - fade_on() - load_pal()