notJustCode.it
 
\\ Home : Storico : DirectX9 (inverti l'ordine)
Di seguito gli interventi pubblicati in questa sezione, in ordine cronologico.

Di RobyDx (del 02/08/2007 @ 08:38:11, in DirectX9, linkato 1878 volte)

L'antialiasing è un processo atto ad evitare la seghettatura che inevitabilmente viene a crearsi durante il rendering di poligoni 3D. Soprattutto per risoluzioni non altissime l'effetto di aliasing può influire notevolmente sulla qualità grafica. Tuttavia in DirectX è possibile utilizzare questo effetto per migliorare sensibilmente la qualità ma a caro prezzo: l'antialiasing appesantisce molto il PC e di conseguenza il gioco subirà inevitabilmente dei rallentamenti su sistemi non sufficientemente potenti. L'effetto viene quindi consigliato come opzione per sistemi potenti....

Vai all'articolo...

dividerMark
Di RobyDx (del 02/08/2007 @ 08:41:49, in DirectX9, linkato 2348 volte)

Quando si realizzano giochi occorre sempre tenere presente tutti i possibili tipi di computer che il giocatore può avere. Una delle tante cose da tenere presente (forse la più banale ma non per questo meno importante) è la velocità del gioco. Cosa succede se il PC in cui gira il gioco è troppo debole: semplice andrà lento! Tuttavia se è troppo potente il gioco schizzerà a velocità altissime rendendolo ingiocabile. Se il primo caso richiede molte soluzioni complesse per il secondo è sufficiente tenere costanti i numeri di frame del gioco. Queste solitamente corrispondono al numero di giri che il ciclo principale effettua....

Vai all'articolo...

dividerMark
Di RobyDx (del 03/08/2007 @ 09:55:17, in DirectX9, linkato 1248 volte)

E' possibile in DirectX escludere uno o più dei quattro colori basi (rosso, verde, blu e alpha). La cosa è molto semplice.

device.RenderState.ColorWriteEnable = valore

valore è uno di questi valori.

ColorWriteEnable.Alpha
ColorWriteEnable.Blue
ColorWriteEnable.Green
ColorWriteEnable.Red
ColorWriteEnable.RedGreenBlueAlpha
ColorWriteEnable.RedGreenBlue

In Questo modo solo i colori specificati verranno visualizzati e tutta la scena assumerà quella tonalità.

Sono possibili combinazioni tramite OR (ColorWriteEnable.Red OR ColorWriteEnable.Blue ad esempio).

dividerMark
Di RobyDx (del 03/08/2007 @ 09:56:07, in DirectX9, linkato 1377 volte)

Come in DirectDraw è possibile anche in Direct3D creare velocemente dei rettangoli pieni di ogni colore sullo schermo. Questo tramite l'istruzione

device.ColorFill(superficie, rettangolo, Color)

Con questa istruzione potete facilmente riempire rettangoli su una qualunque superficie (estratta ad esempio anche dalle texture). Naturalmente anche il backbuffer è una superficie quindi potete usare direttamente questa

device.ColorFill(device.GetBackBuffer(0, 0, BackBufferType.Mono), New Rectangle(0, 0, 300, 300), Color.White)

In questo esempio riempio il backbuffer di bianco nel rettangolo specificato. Utile

dividerMark
Di RobyDx (del 03/08/2007 @ 09:58:19, in DirectX9, linkato 1753 volte)

La gamma correction è la gestione della luminosità dei colori sullo schermo. Ognuno dei 16 milioni di colori che le schede di oggi supportano ha un diverso grado di luminosità espresso con un valore da 0 a 65535 permettendo migliore resa grafica. Molte schede danno la possibilità di modificare la gamma del monitor ma DirectX permette di farlo dinamicamente nei giochi fullscreen. Possibilità? Potete ad esempio scurire tutti i colori per creare chiusure degli schermi o aumentarli per far sembrare più luminosa una stanza. Potete addirittura aumentare solo una tonalità per far virare i colori verso quello che volete....

Vai all'articolo...

dividerMark
Di RobyDx (del 04/08/2007 @ 09:09:34, in DirectX9, linkato 1298 volte)

Se dovete far diventare un oggetto gradatamente trasparente non c'è molto da fare: basta impostare l'alphablending con queste opzioni

device.RenderState.AlphaBlendEnable = True
device.RenderState.SourceBlend = Blend.SourceAlpha
device.RenderState.DestinationBlend = Blend.InvSourceAlpha
device.TextureState(0).AlphaArgument1 = TextureArgument.TFactor
device.RenderState.TextureFactor = Color.FromArgb(alpha, 255, 255, 255).ToArgb

Cambiando il colore nell'opzione TextureFactor potrete far virare il colore ed in particolare modificando il valore alpha del colore potrete deciderne il grado di trasparenza. Per tornare alla normalità impostare  l'alphaArgument a Diffuse. Nota fondamentale: come dovreste aver capito gli effetti di alphablending funzionano solo se gli oggetti vengono renderizzati in ordine dal più lontano al più vicino. Se invece l'oggetto più vicino verrà renderizzato prima di quello che gli sta dietro l'effetto non funzionerà.

dividerMark
Di RobyDx (del 04/08/2007 @ 09:12:23, in DirectX9, linkato 1542 volte)

Le superfici in DirectDraw sono come sappiamo degli array di numeri corrispondenti ai colori. L'array di colori viene estratto eseguengo una operazione chiamata accesso alla memoria che genera una matrice di dimensione larghezza x altezza. Ogni punto di questa matrice è un intero che tramite la classe color possiamo facilmente gestire per ottenere o inserire il colore. Prima che iniziate a procedere vi avverto che DirectDraw presenta un grosso bug in questa istruzione. Se avete aggiornato alla versione 9.0b questa funzionerà altrimenti non troverete questa istruzione e vi sarà impossibile compiere questa azione....

Vai all'articolo...

dividerMark
Di RobyDx (del 04/08/2007 @ 09:14:06, in DirectX9, linkato 2048 volte)

Come sappiamo in DirectX possiamo usare molti formati per le immagini come bitmap, jpeg o tga. Tutte queste però vengono gestiste come bitmap al momento dell'effettivo utilizzo sia dal punto di vista della memoria che della velocità. Esistono però alcuni formati speciali che vengono sfruttati in maniera migliore i DXT. Ci sono 5 formati da DXT1 a DXT5 che si differenziano per spazio occupato e velocità di rendering. Per utilizzare questi formati potete o caricare un immagine effettuando una conversione in questo formato o caricare un'immagine da file già in questo formato....

Vai all'articolo...

dividerMark
Di RobyDx (del 06/08/2007 @ 09:47:20, in DirectX9, linkato 1506 volte)

Il texture wrapping è semplicemente un sistema con cui le texture possono essere avvolte attorno ad un oggetto in modo automatico.

device.RenderState.Wrap0=WrapCoordinates.One

Il primo parametro indica da 0 a 15 le coordinata texture da avvolgere mentre l'ultimo la direzione.

Le opzioni sono

Zero: lungo U
One: lungo V
Two: lungoW
Three: lungo una ipotetica quarta coordinate...

Vai all'articolo...

dividerMark
Di RobyDx (del 06/08/2007 @ 09:48:43, in DirectX9, linkato 1603 volte)

Caricate una bitmap 32x32 su una superficie

Dim c As Surface
c = device.CreateOffscreenPlainSurface(32, 32, Format.A8R8G8B8, Pool.Default)
SurfaceLoader.FromFile(c, AppPath() & "\icona.bmp", Filter.None, Color.White.ToArgb)

ora assegnatela al device

device.SetCursorProperties(X, Y, c)

X e Y sono lo slittamento che il cursore avrà rispetto all'effettiva posizione del mouse (ad esempio impostando 16,16 il mouse cliccherà nel centro dell'icona mentre con 0,0 nell'angolo alto-sinistro). C è la superficie creata

device.ShowCursor(True)

Questa istruzione mostra l'icona. Va inserita nel ciclo, possibilmente immediatamente subito dopo il doEvents

Impostando a false invece il mouse sarà invisibile. Questo sistema è abbastanza inutile per cursori fissi mentre è utile per cursori in movimenti per la velocità di cambio.

dividerMark
Pagine: 1 2 3 4 5 6 7 8 9
"È più facile spezzare un atomo che un pregiudizio."

Albert Einstein


Cerca per parola chiave
 

Titolo
Articoli (4)
C++ (4)
Direct3D10 (30)
Direct3D11 (20)
DirectX9 (82)
DotNet (10)
English (9)
FanGames (22)
ManagedDX11 (2)
Materiale Utile (4)
News (39)
Shader Library (12)
SharpDX (1)
Software (25)
Tecnologia (19)
Varie (9)

Gli interventi più cliccati

Ultimi commenti:
If you wish to retai...
23/05/2013 @ 13:07:45
Di chanel outlet
You deficit of self-...
23/05/2013 @ 13:07:13
Di cartier watches uk
Reinforce your own l...
23/05/2013 @ 13:06:37
Di replica watches
Whenever you"re shiv...
23/05/2013 @ 13:06:11
Di swiss replica watches
It's likely you have...
23/05/2013 @ 13:05:02
Di chanel handbags
Cheap automobile ins...
23/05/2013 @ 13:04:28
Di replica watches

Titolo
Con quale tecnologia state realizzando o avete intenzione di realizzare i vostri progetti?

 DirectX11
 DirectX10
 DirectX9
 XNA
 DirectX8 o Precedenti
 OpenGL
 Motori grafici già pronti
 Altro

Titolo
Umorismo (17)

Le fotografie più cliccate



Ci sono 275 persone collegate
Sono state visualizzate  pagine

27/07/2024 @ 06:01:42
script eseguito in 47 ms