Di VinceDX (del 07/05/2007 @ 21:36:57, in Tecnologia, linkato 1260 volte)
L'altro giorno Roby ci ha parlato di come i prossimi videogames potranno leggere il nostro stato d'animo. Oggi invece io vi faccio vedere qualcosa di altrettanto sconvolgente. Detto in una parola: fotorealismo.
Vi ricordate quando Neo per la prima volta entra in "Struttura", un programma simil Matrix in cui si può caricare ciò che si vuole? La prima cosa che vede sono un paio di poltrone in pelle... e lui, da buon informatico si chiede: "Questo... non è reale? O_O
Bene, è la stessa espressione che ho avuto io quando ho visto questo demo di nVidia, che verrà rilasciato per poter dimostrare la potenza della loro nuova scheda video di punta. Questa qualità visiva non è nuova... ma la novità sta nel real-time. Mostruoso!!!
Di robydx (del 13/05/2007 @ 10:50:33, in Direct3D10, linkato 1778 volte)
Passiamo ora ad un nuovo modello di illuminazione, il Phong , quello di default per le vecchie DirectX (con la differenza però che noi calcoliamo tutto nel pixel shader evitando i difetti dell'interpolazione lineare ed ottenendo una qualità molto più elevata).
Il modello di illuminazione phong riprende il modello lambertian inserendo però l'effetto speculare (il bagliore delle auto è un esempio di specular).
La luce speculare dipende sia dall'oggetto, attraverso le normali, sia dalla posizione dell' osservatore.
Di robydx (del 13/05/2007 @ 20:51:14, in English, linkato 2940 volte)
A shader code let us to manage our graphics by transforming our vertices from what comes from vertex buffer to one or more float4 that will become our colors on the screen. Let’s examine better the shader
A shader it’s very similar to a generic C code, but much more simple and without pointers. In the code it’s possible to define functions, structures and also include other files (in this mode we can separate effects in fx files).
At end of file there is the technique that describes what functions will be used into device for vertex,pixel and geometry shader as i’ve said in previous tutorials, the shader it’s executed for each vertex and pixes that are called in the Draw() function. This means that it’s difficult to have a complete control of single pixel or vertex of a primitive. It’s important to remember this the first input it’s vertex buffer that contains vertices of scene. In previous tutorial we have saw how, with vertex layout and semantics, it’s possible to get vertices contained in the buffer. For each vertex of vertexbuffer , the device executes shader code. Then a first mode to insert data it’s the vertex buffer, using his variables. This for data that must be unique for each vertex. But there is some data that are in common for all vertices. These informations are called constans. A const data must be inserted in the shader code but out from functions (like global variables). These are visible in all the shader but they cannot be modified from code (if you modify a const variable you will not get an error, but it’s value will return to initial state in the next cycle). This won’t let you to store data (for example, understand how many times have you done a cycle) the only way to set a const value it’s by passing it by device....
Di robydx (del 20/05/2007 @ 19:44:48, in Direct3D10, linkato 1885 volte)
Il rastering è il processo che partendo dalla descrizione dei poligoni (in DirectX solo di tipo triangolare), genera a video i triangoli. Nei precedenti tutorial è già stato spiegato in teoria come funziona il processo: il vertex shader valorizza i vertici, il rasterizer calcola tutti i pixel necessari per riempire il triangolo e per ognuno di questi fa una media pesata tra i 3 vertici in base alla posizione mandando il risultato al pixel shader.
Su questo processo è possibile intervenire. A differenza di DirectX9, in DirectX10 tali settaggi vengono fatti da codice shader (anche se vi mostrerò come poterlo fare comunque da codice).
I settaggi vengono contenuti in una variabile RasterizerState nel codice HLSL e passati tramite l’istruzione SetRasterizerState all’interno del pass....
Di robydx (del 20/05/2007 @ 19:50:14, in FanGames, linkato 2022 volte)
Vi segnalo il gioco Tanks A Lot realizzato da Matteo ed il suo gruppo. E' stato rilasciato sotto licenza GPL e quindi potete collaborare al gruppo per migliorarlo.
Di robydx (del 28/05/2007 @ 20:54:54, in Direct3D10, linkato 1914 volte)
Normalmente ogni volta che DirectX effettua un rendering, aggiorna i pixel del backbuffer con quelli del nuovo oggetto. L'alphablending è una caratteristica di DirectX che permette invece di effettuare un' operazione di confronto tra il pixel che si sta per mandare a video e quello già presente sullo schermo. In questo modo si possono creare ad esempio effetti di trasparenza impostando l'alphablending in modo che l'oggetto che si sta renderizzando sia una media tra lo sfondo e l'oggetto.
Il colore finale dei pixel dell'oggetto che si sta renderizzando rispettano questa formula
Final Color = ObjectColor * SourceBlendFactor + PixelColor * DestinationBlendFactor
Dove ObjectColor è il colore dell'oggetto, PixelColor quello del backbuffer in quel punto (quindi ciò che è già stato renderizzato) mentre SourceBlendFactor e DestinationBlendFactor sono le impostazioni dell'alphablending. ...
Di RobyDx (del 07/06/2007 @ 00:17:19, in Software, linkato 1512 volte)
E' uscita la nuova SDK di DirectX (ogni due mesi non si scappa). Come al solito bug fix, miglioramenti a codice e tool e qualche sano grattacapo per chi come me cerca di stare dietro ad un programma di lezioni.
Per chi segue i miei corsi DirectX10 dovete fare un cambiamento agli shader. Definite questa variabile
DepthStencilState EnableDepth {
DepthEnable = TRUE;
DepthWriteMask = ALL;
DepthFunc = LESS_EQUAL;
};
nel pass mettete
SetDepthStencilState( EnableDepth, 0 );
In pratica hanno deciso che di default lo ZBuffer è disabilitato. Quando avrò tempo correggerò i tutorial (queste settimane sono stato pieno di lavoro e quindi ho dovuto mettere da parte un attimo il sito).
Continuate a seguirci e vi ricordo che potete partecipare pubblicando vostri tutorial e programmi.
Di RobyDx (del 16/06/2007 @ 09:14:06, in Software, linkato 1107 volte)
Sul sito nvidia è stata rilasciata la beta del nuovo FX Composer, l'editor di shader della nVidia. Ad una prima rapida occhiata, l'editor è migliorato notevolmente nonostante mantenga quell'approccio un pò complesso che di certo non ne semplifica l'utilizzo all'utente newbie (a volte neanche a quello più esperto). Vi consiglio un bel download, il prodotto è valido e soprattutto ricco di esempi. Unico grandissimo difetto è che l'editor è DirectX9. Questo significa che ad oggi non ho ancora un editor per scrivere shader in DirectX10 (che debba farmelo da solo?!).
Di robydx (del 17/06/2007 @ 09:22:41, in News, linkato 1169 volte)
Come promesso ho aggiornato i demo per correggere il problema della gestione della profondità. Ricordo infatti che con la versione di Giugno della SDK lo ZBuffer è impostato a false di default quindi dovrete abilitarlo per vedere il rendering correttamente.
Di RobyDx (del 20/06/2007 @ 12:14:19, in News, linkato 1192 volte)
Come avrete notato il forum è giù in quanto misteriosamente abbiamo consumato tutta la banda che altervista ci metteva a disposizione. Di conseguenza per un pò il forum non funzionerà, ci scusiamo per i problemi.
Anche il vecchio spazio non funziona più, se dovete vedere i vecchi tutorial non ancora uppati sul nuovo sito andate su www.robydx.altervista.org.
Intanto lancio una domanda a tutti voi: conoscete un buon forum free funzionante in ASP/ ASP.Net che utilizzi come database Access o file di testo?
"Un computer ti fa fare più errori e più velocemente di qualunque altra invenzione dell'uomo – con l'eccezione forse delle armi da fuoco e della tequila."