|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Mar 2006
Città: Provincia di Lecco
Messaggi: 321
|
[C# & DirectX] Creare vertici trasparenti, come faccio?
Ciao a tutti!
Sto completando la mia tesina di maturità. Una parte di essa rappresenta le funzioni in due variabili, solo che ho un problema con il campo di esistenza della funzione. Mi spiego meglio: prendendo la stringa inserita dall'utente, contenente l'espressione analitica della funzione, faccio passare con due cicli for uno dentro l'altro le variabili x e y, le sostituisco nell'espressione analitica e passo il tutto al parser che mi restituisce il risultato. I risultati vengono salvati in una matrice di larghezza e altezza opportune, a seconda dell'intervallo in cui voglio calcolare la funzione. Solo che se il parser dà errore (cioè non può essere eseguita l'operazione, come ad esempio il log di un numero negativo) devo gestire il problema in qualche modo... Senza gestirlo mi ritrovo ad avere una funzione in cui l'altezza dei vertici (che in teoria non dovrebbero nemmeno esserci) è 0. Devo trovare un modo per non rappresentare quei triangoli, oppure, come ho pensato, farli trasparenti. Quindi la domanda è appunto: come faccio a creare dei vertici trasparenti? O ancora meglio (dato che sono quelli che ho io nel mio programma e altrimenti ne devo creare di nuovi): si possono convertire dei vertici PositionNormalColored in vertici trasparenti in qualche modo??
__________________
CONFIGURAZIONE PC FISSOAlimentatore:Levicom X-Alien 450W.CPU:Intel Core 2 Duo E6600 @2975MHz per ora...VGA:Sapphire x1950 xt 256 mb @634/945 MOBO:P5N-E SLI RAM:2Gb Corsair XMS2 6400 cas4||BENCHMARK PC FISSO 3dMark05:12810 3dMark06:6546||Internet:Fastweb 6mbit/s||PORTATILEAcer Aspire 5920G.CPU:Intel Core 2 Duo T5550.VGA:nVidia 8600M GT 512mb.RAM:3 gb.HDD:160gb |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Mar 2006
Città: Provincia di Lecco
Messaggi: 321
|
Nessuno??
Non c'è bisogno di leggere la parte lunga in alto del mio primo post, la domanda è quella e basta, la prima parte era solo un'introduzione...
__________________
CONFIGURAZIONE PC FISSOAlimentatore:Levicom X-Alien 450W.CPU:Intel Core 2 Duo E6600 @2975MHz per ora...VGA:Sapphire x1950 xt 256 mb @634/945 MOBO:P5N-E SLI RAM:2Gb Corsair XMS2 6400 cas4||BENCHMARK PC FISSO 3dMark05:12810 3dMark06:6546||Internet:Fastweb 6mbit/s||PORTATILEAcer Aspire 5920G.CPU:Intel Core 2 Duo T5550.VGA:nVidia 8600M GT 512mb.RAM:3 gb.HDD:160gb |
|
|
|
|
|
#3 | |
|
Senior Member
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
|
Quote:
ma non dovrebbe bastare settare il canale alpha a zero per quel triangolo in modo da ottenere una trasparenza assoluta?
__________________
|
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Mar 2006
Città: Provincia di Lecco
Messaggi: 321
|
Non posso agire sui triangoli, ma sui vertici, perché sono quelli gli oggetti, e non esiste nessun canale alpha per un vertice... Credo di dover usare le texture, anche se spero di no perché ho visto delle parti di codice ed è abbastanza complesso...
__________________
CONFIGURAZIONE PC FISSOAlimentatore:Levicom X-Alien 450W.CPU:Intel Core 2 Duo E6600 @2975MHz per ora...VGA:Sapphire x1950 xt 256 mb @634/945 MOBO:P5N-E SLI RAM:2Gb Corsair XMS2 6400 cas4||BENCHMARK PC FISSO 3dMark05:12810 3dMark06:6546||Internet:Fastweb 6mbit/s||PORTATILEAcer Aspire 5920G.CPU:Intel Core 2 Duo T5550.VGA:nVidia 8600M GT 512mb.RAM:3 gb.HDD:160gb |
|
|
|
|
|
#5 | |
|
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
Quote:
Mi riferisco al canale ARGB del colore: setti il canale "A" (Alpha Channel) a 0, non opaco (il max dovrebbe essere 255, massima opacità). Spero di non aver fatto confusione
|
|
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
|
Nemmeno io ho mai usato DirectX, ma ad esempio con OpenGL è molto simile, per ogni vertice che disegni devi anche specificarne il colore con glColor*(), e lì ne puoi impostare anche l'opacità (con glColor4f()). Dovrà esserci sicuramente qualcosa di analogo.
__________________
C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai! |
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
|
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Mar 2006
Città: Provincia di Lecco
Messaggi: 321
|
XD ah, il canale Alpha è indicato con "A"??? XD XD XD Allora ho capito cosa devo modificare, appena posso provo. Avevo risolto momentaneamente il tutto impostando l'altezza dei vertici non validi ad un valore che sta fuori della visuale della telecamera!! XD
__________________
CONFIGURAZIONE PC FISSOAlimentatore:Levicom X-Alien 450W.CPU:Intel Core 2 Duo E6600 @2975MHz per ora...VGA:Sapphire x1950 xt 256 mb @634/945 MOBO:P5N-E SLI RAM:2Gb Corsair XMS2 6400 cas4||BENCHMARK PC FISSO 3dMark05:12810 3dMark06:6546||Internet:Fastweb 6mbit/s||PORTATILEAcer Aspire 5920G.CPU:Intel Core 2 Duo T5550.VGA:nVidia 8600M GT 512mb.RAM:3 gb.HDD:160gb |
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: Nov 2005
Messaggi: 1545
|
Il canale alpha ce l'hai se hai definito il colore come RGBA. Se usi la pipeline programmabile ricordati che devi ritornare l'alpha nel pixel shader.
Non devi per forza averlo sui vertici. Ricorda che le primitive semi-trasparenti vanno disegnate per ultime in ordine dalla piu` lontana alla piu` vicina. |
|
|
|
|
|
#10 | |
|
Senior Member
Iscritto dal: Mar 2006
Città: Provincia di Lecco
Messaggi: 321
|
Quote:
__________________
CONFIGURAZIONE PC FISSOAlimentatore:Levicom X-Alien 450W.CPU:Intel Core 2 Duo E6600 @2975MHz per ora...VGA:Sapphire x1950 xt 256 mb @634/945 MOBO:P5N-E SLI RAM:2Gb Corsair XMS2 6400 cas4||BENCHMARK PC FISSO 3dMark05:12810 3dMark06:6546||Internet:Fastweb 6mbit/s||PORTATILEAcer Aspire 5920G.CPU:Intel Core 2 Duo T5550.VGA:nVidia 8600M GT 512mb.RAM:3 gb.HDD:160gb |
|
|
|
|
|
|
#11 |
|
Senior Member
Iscritto dal: Mar 2006
Città: Provincia di Lecco
Messaggi: 321
|
Ho letto una parte di codice su Internet, e ho provato ad attivare l'alpha blend dal device (Device.RenderState.AlphaBlendEnable=true) solo che non cambia nulla... Potrei, in caso estremo, impostare il colore dei vertici che non devono essere visti come lo sfondo, ma se attivo l'illuminazione si vedrebbero... Non so come potrei fare... Spero di ricevere una spiegazione esauriente...
__________________
CONFIGURAZIONE PC FISSOAlimentatore:Levicom X-Alien 450W.CPU:Intel Core 2 Duo E6600 @2975MHz per ora...VGA:Sapphire x1950 xt 256 mb @634/945 MOBO:P5N-E SLI RAM:2Gb Corsair XMS2 6400 cas4||BENCHMARK PC FISSO 3dMark05:12810 3dMark06:6546||Internet:Fastweb 6mbit/s||PORTATILEAcer Aspire 5920G.CPU:Intel Core 2 Duo T5550.VGA:nVidia 8600M GT 512mb.RAM:3 gb.HDD:160gb |
|
|
|
|
|
#12 | |
|
Senior Member
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
|
Quote:
![]() o ricordo male io?
__________________
|
|
|
|
|
|
|
#13 |
|
Senior Member
Iscritto dal: Mar 2006
Città: Provincia di Lecco
Messaggi: 321
|
Ci sono riuscito, solo che ora ho altri problemi (che casino gestire sto campo di esistenza...). Comunque bisogna impostarlo a 0. 0=completamente trasparente, 255=completamente opaco
__________________
CONFIGURAZIONE PC FISSOAlimentatore:Levicom X-Alien 450W.CPU:Intel Core 2 Duo E6600 @2975MHz per ora...VGA:Sapphire x1950 xt 256 mb @634/945 MOBO:P5N-E SLI RAM:2Gb Corsair XMS2 6400 cas4||BENCHMARK PC FISSO 3dMark05:12810 3dMark06:6546||Internet:Fastweb 6mbit/s||PORTATILEAcer Aspire 5920G.CPU:Intel Core 2 Duo T5550.VGA:nVidia 8600M GT 512mb.RAM:3 gb.HDD:160gb |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 23:38.




















