Di RobyDx (del 09/02/2007 @ 16:47:36, in English, linkato 4747 volte)
Welcome to the first tutorial about DirectX10. For people who could be new in this programming-side, we can say DirectX10 it’s an API, a library given by some programmers, with which it’s possible build games and graphics-application, for PC but also for some consoles (XBOX360, for example)
Togheter with the open source library OpenGL, it’s used for 99% (but mabye also 100%) of all graphics application for pc and cosoles.
DirectX offers some components and functions that let us manage 2D and 3D graphics, music and sounds, input from keyboard, mouse and joysticks, and also some network features (to help us build multiplayer games). With passing of years DirectX evolved itself signing the developing of hardware, and in particoular video card’s one, that are evolving togheter DirectX....
Di RobyDx (del 11/02/2007 @ 13:09:33, in DirectX9, linkato 3298 volte)
I vertex shader rappresentano senza dubbio la più importante tecnologia nell’ambito della computer grafica in real time permettendo effetti unici ed impensabili appena pochi anni fa. Ma cosa sono esattamente?...
Di RobyDx (del 11/02/2007 @ 13:40:27, in DirectX9, linkato 7385 volte)
Osservate questa immagine. Questo schema rappresenta il processo che DirectX compie a partire dal modello 3D che gli diamo (vertex data) fino al compimento degli ultimi calcoli tra cui spiccano i vari testing (come ad esempio lo stencil) ed il blending.
Come vedete ci sono 2 punti in cui il processo si separa (non contate le Tesselation). Nel primo vedete i vertex shader e il "trasformation and lighting engine". I vertex shader infatti si pongono come alternativa al normale processo di trasformazione dei vertici proponendo sistemi completamente nuovi e personalizzabili (vedi ad esempio il cell shading). Se i vertex shader servono per la manipolazione dei vertici, i pixel shader servono per personalizzare il processo di elaborazione finale di ogni singolo pixel in base al colore di base e alle texture....
Di RobyDx (del 11/02/2007 @ 13:56:17, in DirectX9, linkato 1640 volte)
Usare i vertex shader non è facile ma ancor meno lo è scrivere dei codici assembler. La cosa è senza dubbio interessante per la possibilità di creare effetti come ad esempio il Cell shading. A parte la spettacolarità degli effetti i vertex shader permettono di anche di generare dei codici utili per ogni occasione. Potete infatti inserire il codice per il tweening (una tecnica per l’animazione dei poligoni) all’interno del codice assembler con un guadagno enorme sulla velocità. ...
Di RobyDx (del 11/02/2007 @ 14:08:05, in DirectX9, linkato 1422 volte)
Esistono diversi tipi di linguaggi per i pixel shader con differenze più o meno marcate. Le prime 4 versioni sono molto simili e per questo raggruppate in un unico tutorial....
Di RobyDx (del 11/02/2007 @ 14:14:07, in DirectX9, linkato 1671 volte)
La versione di Pixel shader 1.4 si differenzia completamente dalle precedenti non solo per il maggior numero di registri texture e temporary a disposizione ma soprattutto per l’introduzione di un meccanismo articolato in 2 fasi, uno in cui elaborare le texture fin dal posizionamento delle coordinate e l’altro in cui fondere i risultati. Questo tuttavia modifica notevolmente la situazione facendo perdere di significato molte istruzioni e cambiando addirittura significato ai registri....
Di RobyDx (del 13/02/2007 @ 09:22:45, in DirectX9, linkato 1760 volte)
La grande novità di DirectX9 è il perfezionarsi della tecnologia degli shader che diventano sempre più importanti per il rendering di effetti nuovi ed innovativi. I vertex shader arrivano fino alla versione 3.0. In questo tutorial introdurrò il funzionamento della versione 2.0 dei vertex shader che portano un gran numero di funzionalità. Oltre al maggior numero di istruzioni la nuova versione include nuovi registri, l'introduzioni di cicli di controllo e soprattutto la possibilità di creare subroutine all'interno del codice shader. Ora i vertex shader possono realizzare davvero l'impossibile permettendo ad esempio di gestire con un solo shader più effetti tramite l'utilizzo di istruzioni if then else o di ripetere una stessa funzione un numero qualsiasi di volte tramite il loop. L'esempio riportato in fondo al tutorial mostra come sia possibile tramite vertex shader utilizzare un numero qualsiasi di luci puntiformi in una scena, ben oltre le otto ottenibili con le schede più recenti....
Di RobyDx (del 13/02/2007 @ 09:39:06, in DirectX9, linkato 1512 volte)
La tecnologia shader già affermatasi con l’introduzione di DirectX8 continua ad evolversi e diventare sempre più presente nei giochi e nelle applicazioni di oggi. Molti giochi ormai usano effetti shader che portano la grafica a livelli altissimi e sempre più simili alla realtà. Con DirectX9 vengono introdotte nuove versioni dei linguaggi assembler destinati ai vertex e pixel shader. In questo tutorial vi illustrerò il funzionamento dei pixel shader 2.0 supportato ad oggi solo sulle schede di ultima generazione. La nuova versione shader ritorna come meccanismo di funzionamento alle prime 4 versioni di pixel shader (dalla 1.0 alla 1.3) eliminando la scomoda, seppur utile, doppia fase. Tuttavia i miglioramenti introdotti sono tali da rendere le precedenti versioni completamente antiquate ed inutili....
Di RobyDx (del 15/02/2007 @ 20:06:39, in Direct3D10, linkato 3004 volte)
In questo tutorial approfondirò ciò che è stato spiegato nel precedente. Abbiamo creato i nostri oggetti principali: il device, responsabile delle operazioni, lo swap chain, che è la destinazione su cui vedremo i nostri oggetti, ed il RenderTargetView che è la zona di memoria su cui il device andrà a lavorare. Il procedimento dovrebbe essere chiaro. Il device legge i poligoni, li elabora negli shader e scrive i pixel sul RenderTargetView. Al termine il target view sarà copiato sullo schermo tramite il swap chain.
Esiste anche un'altra superficie: il Depth Stencil Buffer. ...
Di RobyDx (del 16/02/2007 @ 15:50:53, in English, linkato 3599 volte)
Let’s continue with D3D10 introduction. In the first part we have seen togheter what D3D10 is and their pourpose, a little bit of story and some examples. Now we will incentre our forces on rendering, the passes to create the image on the screen....