PDA

Ver la versión completa : Transparencias con SDK de Mirko



Puck2099
12/10/2004, 21:07
Hola,

Me he bajado el SDK de Mr. Mirko porque al parecer es mejor que el propio de Game Park y ojeando la documentación tengo una dudilla.

Para pintar un color transparente hay que pasarle como parámetro un dato de 16 bits con el color que queremos que no se pinte.

Pues bien, ¿qué es exactamente lo que hay que pasar?, ¿la posición del color en la paleta (esto es lo que se hace en el SDK oficial)?. He probado con un bmp de 8 bits pasándole 0xFF9C (9C es la posición en la paleta) y también pasándole 0x009C pero no lo consigo...

Tiene que ser una tontería, pero no se me ocurre y la verdad es que tampoco está muy claro en la documentación Html de Mirko.

Gracias

Nuak
12/10/2004, 21:46
Usando color de 16 bits, solo le tienes que pasar el color que quieres que sea transparente. Un buen truco es generar un array de C a partir del bmp, y ver que color esta al comienzo y al final, generalmente el color de fondo que es el que usas como transparente, y ese es el color que le tienes que pasar a las funciones de dibujado.

Puck2099
12/10/2004, 21:57
Nuak, ¿podrías decirme de algún programa de Linux donde pueda ver el valor hexadecimal del color que le quiero pasar?

He mirado con el Gimp y en el color me salen 6 valores hexadecimales para cada color en lugar de los 4 que necesito, así que creo que estoy confundido y miro otra cosa...

Muchas gracias

Nuak
12/10/2004, 22:03
Haz el truco que te digo. Te explico, coje una imagen y coloreala del color que quieras que sea el transparente. Conviertela a un array de C con los programas bmp2bin y raw2c que vienen con el SDK. Una vez tengas tu .c, mira el contenido del array en el fichero, sera algo asi:
unsigned char pepito[2048] = {0x0FFF, 0x0FFF, 0x0FFF,..............};
El 0x0FFF sería el color transparente, y el valor que tienes que pasarle a las funciones es 0x0FFF.

Puck2099
12/10/2004, 22:05
Ah, claro, es que estaba un poco "espesito" :p

Muchas gracias, ya está todo solucionado :brindis:

Saludos