|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Apr 2005
Messaggi: 296
|
[OPENGL] Textures RGBA16 e BGRA16
E' possibile,in OpenGL,usare texture con i pixel
in formato RGBA16 (R5:G5:B5:A1) e BGRA16 (B5:G5:R5:A1) ? Tutti i comuni file bitmap (.BMP,.DIB) a 16 bit sono in formato BGRA16,e dovrei trovare un modo per usare tali texture in opengl Ah ovviamente senza convertirle in 32 bit intendo Ultima modifica di GordonFreeman : 02-03-2006 alle 22:20. |
|
|
|
|
|
#2 | |
|
Senior Member
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
|
dovrebbe essere possibile dalla versione 1.2.1 in poi:
Quote:
__________________
|
|
|
|
|
|
|
#3 | |
|
Member
Iscritto dal: Apr 2005
Messaggi: 296
|
Quote:
ma funziona solo per i 32 bit non 16 bit mi sembra |
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
|
ah... non c'avevo fatto caso...
ma scusa... le BMP sono a 24 bit che io sappia.. un canale ciascuno x RGB a 8 bit e senza canale alpha = 24 bit... un altro formato è invece dato dalle BMP a 8 bit, ma se non erro lì i colori sono dati da una palette e quindi si hanno 256 colori (anzi forse un pò di meno....sicurmanete di meno per le BMP di "sistema", ma x quelle normali non ricordo) scelti tra un totale di 16.777.216 (i soliti 24 bit) o sbaglio???
__________________
|
|
|
|
|
|
#5 | |
|
Member
Iscritto dal: Apr 2005
Messaggi: 296
|
Quote:
ora,consideriamo quelle a 16 bit,che esistono in quanto specificate fra i possibili formati,e considera che il Paint è uno dei pochi programmi di disegno che non le supporta , infatti quando fai Salva con Nome ci son solo le opzioni 24 bit RGB e 8 bit (con la palette indicizzata come dici tu) per le BMP..... ma se usi qualsiasi altro programma di disegno come Photoshop e Paint Shop Pro,o Corel Draw o altri,essi possono creare anche bitmap a 16 bit RGB o RGBA in quanto alla distinzione,in questo caso,al formato RGB16(5:6:5),RGB15(5:5:5:X),e RGBA16(5:5:5:1) , c'è da dire che TUTTE le bitmap a 16 bit hanno 5 bit per componente R,G,B ma in ordine inverso,quindi nei primi 15 bit ci trovi le componenti BGR partendo dal meno significativo,e l'ultimo bit sarebbe il valore alpha...diciamo che lo puoi usare come valore alpha,infatti se apri tali bitmap con i tool della DirectX SDK puoi leggerla come una texture BGRA16,e la DirectX stessa supporta i formati RGBA16 e BGRA16 La GDI di Windows ignora il bit alpha,e quindi per essa le BMP a 16 bit sono tutte BGR15(5:5:5:X) , mentre la DirectX non la ignora,cioè dipende se gli dici tu che è nel formato RGBA16 o RGB15 uff che discorso lungo |
|
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
|
ah ok capito!
ti riferivi alle DIB bitmap prova a vedere se questo ti può servire in qualche modo: http://msdn.microsoft.com/library/de...l/msdn_gl5.asp
__________________
|
|
|
|
|
|
#7 | |
|
Member
Iscritto dal: Apr 2005
Messaggi: 296
|
Quote:
io comunque volevo sapere come cavolo fare a usare glTexImage2D o glBuild2DMipmaps per specificare una texture RGB o RGBA a 16 bit,dato un buffer di pixel in tale formato...mi sa che la silicon graphics non ci ha pensato... io direi che è meglio Direct3D nota bene: comunque le texture che dico non sono solo le bitmap,ma soprattutto i file più comunemente utilizzati come texture , quali i TARGA (.TGA) e i TIFF (.TIFF), ma anche le immagini JPG,PNG,PCX... |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 00:42.



















