notJustCode.it
 
\\ Home : Storico (inverti l'ordine)
Di seguito tutti gli interventi pubblicati sul sito, in ordine cronologico.

Di RobyDx (del 02/08/2007 @ 08:34:22, in DirectX9, linkato 1221 volte)

Quante volte può essere utile salvare in una immagine lo schermo del vostro gioco (tipo le foto che si vedono sulle recensioni dei giochi sulle riviste)? Di sicuro molte volte. Potete quindi o usare i tasti (stamp+ctrl) e poi copiare sul paint (molti non conoscono questo banale trucco per copiare l'immagine corrente dello schermo) o meglio ancora agire in modo più professionale e cioè farlo fare a directX.

Basta semplicemente prendere il backbuffer (che è una superficie) e salvarla.

SurfaceLoader.Save(path, ImageFileFormat.Bmp, device.GetBackBuffer(0, 0, BackBufferType.Mono))

Basta una riga. Simpatico se dovete salvare la situazione di gioco con una immagine vicino!

Articolo (p)Link   Storico Storico  Stampa Stampa
dividerMark
Di RobyDx (del 02/08/2007 @ 08:35:27, in DirectX9, linkato 1385 volte)

Dovete caricare una texture ma volete prima conoscerne le caratteristiche? Esiste una semplice istruzione per questo

Dim info As ImageInformation
info = TextureLoader.ImageInformationFromFile(path)

Dove path contiene il percorso della immagine

Info ora contiene tutte le informazioni sulle immagini come larghezza, altezza, formato ecc...

Articolo (p)Link   Storico Storico  Stampa Stampa
dividerMark
Di RobyDx (del 02/08/2007 @ 08:38:11, in DirectX9, linkato 1919 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...

Articolo (p)Link   Storico Storico  Stampa Stampa
dividerMark
Di RobyDx (del 02/08/2007 @ 08:41:49, in DirectX9, linkato 2383 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...

Articolo (p)Link   Storico Storico  Stampa Stampa
dividerMark
Di RobyDx (del 02/08/2007 @ 17:58:51, in Shader Library, linkato 3108 volte)

Il normal mapping è una tecnica ormai di uso comune in computer grafica. La logica dietro è abbastanza semplice. Invece di utilizzare le normali che si trovano nei triangoli, si utilizzano particolari texture (le normal map) i cui colori RGB rappresentano la direzione della normale in quel pixel. In questo modo l'illuminazione non è uniforme in tutto il triangolo ma dipenderà dalla normal map. Un esempio immediato è quello di un muro. Invece di utilizzare migliaia di mattoni si può utilizzare una normal map per simulare il rilievo. Invece di migliaia di mattoni e quindi migliaia di triangoli, basterà un rettangolo con una normal map appropriata per dare un effetto di rilievo (nei limiti ovviamente del possibile).

 

...

Vai all'articolo...

Articolo (p)Link   Storico Storico  Stampa Stampa
dividerMark
Di RobyDx (del 03/08/2007 @ 09:55:17, in DirectX9, linkato 1283 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).

Articolo (p)Link   Storico Storico  Stampa Stampa
dividerMark
Di RobyDx (del 03/08/2007 @ 09:56:07, in DirectX9, linkato 1405 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

Articolo (p)Link   Storico Storico  Stampa Stampa
dividerMark
Di RobyDx (del 03/08/2007 @ 09:58:19, in DirectX9, linkato 1780 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...

Articolo (p)Link   Storico Storico  Stampa Stampa
dividerMark
Di Ercand (del 03/08/2007 @ 19:54:55, in Varie, linkato 5558 volte)

Una Cube Map è una texture 3D composta da sei immagine (appunto come le facce di un cubo) così disposte

 

Ciò che faremo in questo tutorial è creare una Cube Map partendo da zero, in particolare creeremo un bel (si spera) cielo stellato usando esclusivamente un programma per la grafica 2D come Photoshop.

Apriamo Photoshop e creiamo una nuova immagine ( File->New ) con una risoluzione di 1027x768 (così da avere una risoluzione finale della cube map di 256x256, ma nessuno vi impedisce di utilizzare una risoluzione maggiore); come abbiamo visto nella prima immagine dovremo andare a creare sei immagini con delle posizioni ben precise, per farlo ci sarà utile creare delle guide da usare come riferimento.

Per creare questi riferimenti dovremo portare il cursore nella guida dell’immagine (attivabile con la pressione dei tasti CTRL + R) tenere premuto il bottone sinistro del mouse e trascinare la guida fino alla posizione di 256 pixel. ...

Vai all'articolo...

Articolo (p)Link   Storico Storico  Stampa Stampa
dividerMark
Di RobyDx (del 04/08/2007 @ 09:09:34, in DirectX9, linkato 1332 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à.

Articolo (p)Link   Storico Storico  Stampa Stampa
dividerMark
Pagine: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
"L'importante è non smettere di fare domande."

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 929 persone collegate
Sono state visualizzate  pagine

22/11/2024 @ 16:09:39
script eseguito in 62 ms