Newsgroup: it.comp.hardware.video-3d
Titolo: hull shader e domain shader

Non è che qualcuno è così gentile da tradurre in pratichese maccheronico 
le spiegazioni tecniche a riguardo? mi sembra di aver capito che, per 
l'uso del tessellator, le directx 11 punteranno principalmente 
sull'algoritmo di Catmull e Clark Approssimato di Loop e Schaefer, e che 
le due fasi in questione servano a calcolare i vertici necessari, solo 
che mi servirebbe qualche informazione in più a riguardo. Qualcuno mi aiuta?
p.bes

 ha scritto nel messaggio 
news:fQXtk.50459$Ca.1...@twister2.libero.it...

non so cosa vuoi sapere esattamente in soldoni...
il tessellator divide la patch in triangoli ( o primitive a 4 vertici ) ma 
non può intervenire direttamente sui vertici creati se non attraverso i 
parametri di tessellazione passati dal hull shader, ogni vertice cosi 
ottenuto è passato al domain shader che coordinerà tutti i dati sui vertici 
per poi passarli al geometry shader (prima di farlo può intervenire su ogni 
vertice in base ai parametri stabiliti)
se vuoi dettagli sulla Catmull-Clark:
http://research.microsoft.com/~cloop/msrtr-2007-44.pdf
http://faculty.cs.tamu.edu/schaefer/research/slides/ACCPatches.pdf
ma non credo di aver capito, vuoi dettagli su quest'ultima?
 

> le spiegazioni tecniche a riguardo?
letteralmente, spiegazioni semplici:
(tanto non c'è bisogno di tradurti le cose dall'inglese)
Hull Shader
This programmable unit allows transforms on input data to be performed as it 
runs at the source control mesh frequency. When discussing applications of 
the pipeline, we often mention performing a basis change in this shader, 
from one surface representation to another-for example, from Catmull-Clark 
quad mesh to Bezier patch controls.
Domain Shader
This unit executes once for every generated vertex, and as such is the place 
where surface formulations are evaluated. The inputs to this stage are 
provided in surface U,V domain ready for parametric surface evaluation.
 

 intervenire su ogni vertice in base ai parametri stabiliti)
Ok, e fin qui siamo d'accordo. Ma adesso ti spiego il mio problema: si 
tratta di tradurre tutto questo in esempi semplici, perché il mio lavoro 
in fondo consiste nel cercare di capire cose mediamente complesse e 
spiegarle in modo approssimato ma comprensibile. Spiegare a che servano 
pixel, vertex, geometry e anche compute shaders non è un problema, 
perché in fondo ciascuno di loro compie un lavoro abbastanza concreto e 
facilmente spiegabile. Il problema salta fuori con questi due nuovi 
arrivati che, contrariamente agli altri, fanno un lavoro altamente 
specializzato e legato a una funzione specifica, la tessellation. Posso 
cavarmela piuttosto facilmente, dicendo che ognuno di loro contribuisce 
alla nuova "catena di montaggio" fornendo i giusti parametri e la 
necessaria coordinazione dei vertici, ma sarebbe un po' come barare. 
Vorrei capirne meglio il funzionamento io per primo, insomma, e devo 
ammettere che la specificità dell'argomento, stavolta, mi ha messo in 
difficoltà.
Comincio a rimpiangere di avere mollato l'università...
p.bes

 p.bes
Perchè non provi a chiedere qualche spiegazione a qualcuno del team di 
progettazione dei driver ATi?
Penso che saranno abbastanza contenti di darti ragguagli ed esempi su 
una feature caratteristica delle dx 10.1, soprattutto se sanno che sei 
della stampa specializzata.