Foros - Stratos

Programadores => General Programadores => Mensaje iniciado por: Cronodragón en 01 de Enero de 1970, 01:00:00 AM

Título: Canal alpha
Publicado por: Cronodragón en 01 de Enero de 1970, 01:00:00 AM
                                Hola,

Parece que el foro se ha ido quedando sin mensajes desde que esos payasos han venido poniendo scripts. Pero estoy seguro que lo siguen visitando los desarrolladores y que pronto se va a llenar de acción.

Mientras tanto podría alguien decirme cómo dibujo una textura con canal alpha? He estado revisando el PhotoShop y el PhotoPaint y no encuentro un formato de 32 bits que se pueda guardar como .bmp. Y luego de que tenga la textura cómo activo el canal alpha, o es automático?

Bueno, por otro lado, todas las imágenes con canal alpha son de 32 bits, o se pueden hacer imágenes con paleta de 8-bits + canal alpha, para dar un formato de 16 bits? Pregunto esto porque yo prefiero el formato de 8-bits para las texturas, me he dado cuenta que es más rápido de cargar y da muy buena calidad. Si pudiera usar un formato de 16-bits en vez de 32 sería genial.
                               
Título: Canal alpha
Publicado por: Mars Attacks en 01 de Enero de 1970, 01:00:00 AM
                                Usa tga's. En photoshop sólo tienes que añadir en la sección de capas una nueva, que al guardar te pedirá la opción de "con canal alpha" (esta frase parece redactada con el culo, espero que la entiendas). En Corel photopaint sólo tienes que crear una máscara y guardar el tga con la máscara. En el ambos casos se guarda como tga de 32 bits. Espero que te sirva :sonriendo:                                
Título: Canal alpha
Publicado por: Emotion en 01 de Enero de 1970, 01:00:00 AM
                                el formato .bmp no tiene soporte implementado para imagenes de 32 bits, ya que la estructura que utiliza es RGBQUAD, que solo tiene definidos los campos R,G,B y uno que han denominado RESERVED, para futuras ampliaciones en el formato (??).

Por lo tanto, creo que solo tendrias como posibles opciones escribir tu textura en formato RAW o en TGA, que creo que si soportaba los 32 bits

espero que esto te pueda servir de algo

un saludo                                
Título: Canal alpha
Publicado por: Lord Trancos en 01 de Enero de 1970, 01:00:00 AM
                                El formato PNG tb soporta canal alpha :riendo:
                               
Título: Canal alpha
Publicado por: BeRSeRKeR en 01 de Enero de 1970, 01:00:00 AM
                                Por cierto, el Photoshop 7 tiene un bug por el cual no se guarda el canal alpha en TGAs, pero ya ha salido un parche que lo soluciona.

Saludos
                               
Título: Canal alpha
Publicado por: Cronodragón en 01 de Enero de 1970, 01:00:00 AM
                                Aún no puedo dibujar nada con transparencia. Cuando entro a Photoshop le pido que me cree una imagen RGB con fondo transparente. Luego pinto una mancha con el spray y guardo el archivo como TGA de 32 bits/pixel, pero al cargar la imagen lo transparente me sale sólido.                                
Título: Canal alpha
Publicado por: BeRSeRKeR en 01 de Enero de 1970, 01:00:00 AM
                                Para que todo funcione bien, debes activar el alpha blending:

pDevice->SetRenderState(D3DRS_ALPHABLENDENABLE, TRUE);
pDevice->SetRenderState(D3DRS_SRCBLEND, D3DBLEND_SRCALPHA);
pDevice->SetRenderState(D3DRS_DESTBLEND, D3DBLEND_INVSRCALPHA);

y poner los texture stage states adecuados:

pDevice->SetTextureStageState(0, D3DTSS_ALPHAARG1, D3DTA_TEXTURE);
pDevice->SetTextureStageState(0, D3DTSS_ALPHAOP, D3DTOP_SELECTARG1);

con eso utilizas el canal alpha de la textura.


Saludos
                               
Título: Canal alpha
Publicado por: Cronodragón en 01 de Enero de 1970, 01:00:00 AM
                                Gracias, cuando pueda dibujar algo con transparencia lo probaré. :riendo: