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

Di RobyDx (del 02/08/2007 @ 17:58:51, in Shader Library, linkato 3050 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...

dividerMark
Di Ercand (del 18/02/2007 @ 10:30:18, in Shader Library, linkato 2103 volte)

Questa tecnica prende il nome di Glow e permette di migliorare la qualità dell’illuminazione della scena.

Una luce, infatti, genera intorno a se un alone luminoso che rende l’aspetto dell’oggetto più realistico, per capire cosa sia il Glow basta immaginare una fiamma o le luci al neon.

Passiamo a spiegare il funzionamento della demo.

La tecnica si divide fondamentalmente in tre passaggi da eseguire in questo preciso ordine:

  • Rendering dell’oggetto, o degli oggetti, che compongono la scena.
  • Rendering, su una Surface, dell’oggetto, o degli oggetti, che generano un alone.
  • Blur dell’immagine renderizzata sulla Surface. ...

    Vai all'articolo...

dividerMark
Di RobyDx (del 23/01/2007 @ 20:52:21, in Shader Library, linkato 1882 volte)

Questo demo mostra un effetto in post processing noto come traslucidità. L'effetto vuole simulare quei materiali che variano di colore a seconda di quanta luce ci passi al suo interno.

Esempio Shader Traslucency

...

Vai all'articolo...

dividerMark
Di RobyDx (del 21/01/2007 @ 13:15:18, in Shader Library, linkato 2072 volte)

L'HDR (High Dynamic Range) è un nuovo modo di creare la luce. Prendiamo ad esempio una foto che inquadra un oggetto ed una fonte di luce. Se con un programma diminuiamo la luminosità vedremo che l'oggetto diventa più scuro ma che anche la luce diventa più scura. Questo è sbagliato. La luce dovrebbe mantenere la sua luminosità molto più a lungo. Per ovviare a questo si usano come render target non più il backbuffer a 32bit( 8 per colore equivalenti a 256 variazioni) ma a 64 e 128bit (corrispondenti a 65536 e 4 miliardi di variazioni). Questo permette di dare ai colori maggiori differenze cromatiche. Di questa texture mostreremo a video solo un intervallo (lo schermo rimane sempre a 32bit)....

Vai all'articolo...

dividerMark
Di RobyDx (del 21/01/2007 @ 13:09:46, in Shader Library, linkato 3595 volte)

Ecco un sistema molto semplice per generare scariche elettiche. Il tutto si basa su una semplice funzione che sfruttando la coordinata texture del quadrato su cui si renderizza la scarica elettrica calcola il suo valore di luminosità. Il rettangolo è per ora messo a tutto schermo ma non è difficile posizionarlo dove serve e, sfruttando la trasparenza in alpha, poterlo disporre sui personaggi. ...

Vai all'articolo...

dividerMark
Di RobyDx (del 21/01/2007 @ 12:44:12, in Shader Library, linkato 1865 volte)

Ecco un semplice ma efficacissimo sistema per poter visualizzare effetti di rifrazione nelle vostre scene (fondamentale per poter visualizzare correttamente il fondo di recipienti d'acqua o del mare). La scene viene prima renderizzata su una texture e successivamente posizionata tramite vertex shader su un rettangolo che sarà il nostro specchio d'acqua. L'esempio mostra questo aggiungendo una texture per il bump e calcolando il valore della profondità per poter aggiungere il calo della trasparenza dovuta al fatto che l'acqua non è mai perfettamente pulita e quindi la visibilità diminuisce. La scena è renderizzata in dot product bump mapping.

Esempio Shader Rifrazione

 ...

Vai all'articolo...

dividerMark
Di RobyDx (del 21/01/2007 @ 12:36:44, in Shader Library, linkato 1912 volte)

Il fuoco è un elemento fondamentale per molti giochi. Realizzare un fuoco credibile è sempre stato difficile richiedendo migliaia di trucchi (immagini precalcolate, bump mapping etc). Oggi con i pixel shader 2.0 è possibile realizzare il fuoco calcolando in tempo reale il movimento della fiamma. Esistono moltissimi algoritmi. Ve ne propongo uno. La tecnica non fa altro che renderizzare su un quadrato a pieno schermo una fiamma generata da una noise map (una texture cubica che ha lo scopo di perturbare la fiamma) ed una linea contentente i vari colori della fiamma. L'algoritmo è un pò complesso ma di facile impiego.

Esempio Shader Fuoco

 ...

Vai all'articolo...

dividerMark
Di RobyDx (del 21/01/2007 @ 12:30:53, in Shader Library, linkato 1805 volte)

Questa tecnica è semplice ma efficacissimo sistema per migliorare le luci presenti nella scena. Ua luce infatti oltre ad illuminare la scena genera intorno a se un alone luminoso che ne risalta il colore. La procedura è relativamente semplice. Su una texture renderizziamo la scena normale mentre su una seconda solo le parti luminose...

Vai all'articolo...

dividerMark
Di RobyDx (del 21/01/2007 @ 12:20:59, in Shader Library, linkato 2136 volte)

Questo è uno shader creato da me che vuole simulare il tratto chiaro, scuro fatto con la china. L'effetto sfrutta numerosi passaggi per essere realizzato. Il primo passo è un rendering multiplo su tre texture. Nella prima viene renderizzata la scena normale illuminata in perPixel lighting, sulla seconda il depth space e sulla terza il normal space. Il depth space ed il normal space sono il rendering della scena in cui però il colore è utilizzato come informazione. Il depth compare come una scena in sfumature di grigio in cui più il colore è vicino al bianco e più la scena è lontana. Il normal space invece usa come colore la normale. Questi due spazi vengono utilizzati per generare il contorno tramite filtro sobel. ...

Vai all'articolo...

dividerMark
Di RobyDx (del 21/01/2007 @ 11:35:22, in Shader Library, linkato 1890 volte)

Nonostante perda gran parte, dell'interesse la perPixelLighting può essere effettuata anche senza una mappa normale, ma sfruttando le normali della mesh. Si perde la gestione del rilievo ma se non serve si ha comunque un miglioramento incredibile dell'illuminazione. La normale luce infatti viene per dire rovinata dal fatto che il calcolo è preciso solo nel vertice mentre il risultato è interpolato nel triangolo. Se non ci sono molti poligoni il modello mostra tutta la sua "triangolatura". Con la perPixelLighting anche un modello con pochi poligoni mostra una illuminazione assolutamente perfetta e pulita come potete vedere....

Vai all'articolo...

dividerMark
Pagine: 1 2
"I computer sono incredibilmente veloci, accurati e stupidi. Gli uomini sono incredibilmente lenti, inaccurati e intelligenti. Insieme sono una potenza che supera l'immaginazione."

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

19/03/2024 @ 07:48:50
script eseguito in 66 ms