Logo

¡Bienvenido a Stratos!

Acceder

Foros



Color Transparente En Allegro

Iniciado por Sacrifai, 23 de Enero de 2005, 10:25:45 PM

« anterior - próximo »

Sacrifai

 ¿Pues eso, como se define el color transparente en allegro? Porque no lo encuentro por ningun lado  :rolleyes:  . Gracias.

Warchief

 Del manual:

#define MASK_COLOR_8 0
#define MASK_COLOR_15 (5.5.5 pink)
#define MASK_COLOR_16 (5.6.5 pink)
#define MASK_COLOR_24 (8.8.8 pink)
#define MASK_COLOR_32 (8.8.8 pink)
Constantes que representan los colores usados para enmascarar los pixels transparentes de los sprites para cada profundidad de color. En resoluciones de 256 colores es cero, y en modos truecolor es rosa fucsia (rojo y azul al máximo, verde a cero).


En spanish:
http://es.tldp.org/Allegro-es/web/online/allegro.html

Si lo que quieres es pintar algo en transparente puedes usar:

int color = makecol(255,0,255);
clear_to_color(mibitmap, color); // o cualquier primitiva de dibujo

Si lo que quieres es un bmp con transparencia entonces con rojo a 255 y azul a 255 (verde 0) (para los bitmaps de 24 bits).

Y si lo que quieres no es transparencia sino translucidez (distintos niveles de transparencia) entonces recomiendo que pases a png con libpng + loadpng + zlib.

Sacrifai

 Por alguna extraña razon no me funciona ni con negro ni con fucsia : ( . ¿No hay que ponerlo en un modo especial o usar un blit especial?

StraT

quot;Solo hay dos cosas infinitas, el universo y la estupidez humana, aunque de lo primero no estoy muy seguro\\\" Einstein

Warchief

 Sí, draw_sprite o masked_blit. El modo puedes poner alpha si quieres, aunque por defecto es trans que funciona. El alpha es para rgba de 32 bits (translúcidos).
set_trans_blender
set_alpha_blender

Sacrifai

 ¡Funciona! Lo he puesto ha 32 bits ( set_color_depth(32) ) por que si no lo declaras no se que profundidad trae y así no habia forma. Muchas gracias : ) .






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.
Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.