void set_trans_depth( unsigned char profundidad )
Descripción:
Especifica lo translucidos que han de ser las imágenes que cuyo proceso tenga la variable "flags" en modo transparente, por defecto será 127 que es un 50% de transparencia, la profundidad va desde 0 a 255 (invisible a opaco).
En modos de 8 bits deberá llamar a esta función antes de cargar la paleta de colores, en caso de no hacerlo así dicha función no tendrá efecto hasta que de vuelva a cargar dicha paleta.
En modos superiores a 8 bits la llamada a esta función tendrá efecto inmediato cambiando lo translucidos de todos las imágenes inmediatamente.
MAIN_PROGRAM_CDIV PRIVATE int i; BEGIN_PROGRAM set_gfx(GFX_AUTODETECT_WINDOWED); set_trans_depth( 127 ); set_mode(m320x200); load_fpg("../help.fpg"); x = 160; y = 100; graph = 100; flags = 4; put_screen(1, 1); write (0, 0, 0, 0, "[ ESCAPE ] para salir."); LOOP FRAME; END_PROGRAM
En este ejemplo vemos como se inicializa la profundidad de translucidez del sistema antes que se carga una paleta gráfica esto es necesario en modos de 8 bits.
MAIN_PROGRAM_CDIV PRIVATE int i; BEGIN_PROGRAM set_depth(16); set_gfx(GFX_AUTODETECT_WINDOWED); set_mode(m320x200); load_fpg("../help.fpg"); x = 160; y = 100; graph = 100; flags = 4; put_screen(1, 1); write (0, 0, 0, 0, "[ESPACIO] para apagar y encender imagen."); LOOP{ if( key(_space) ) { for( i = 255; i > 0; i -= 20 ) { set_trans_depth( i ); FRAME; } for( i = 0; i < 256; i += 20 ) { set_trans_depth( i ); FRAME; } } FRAME; } END_PROGRAM
En el ejemplo vemos como al pulsar la tecla espacio, el proceso se transparente y se oscurece, si hubiese más de un proceso con el "flags" de transparencia les sucedería lo mismo.
Ver: set_fps() - m320x200 ... m1024x768