- Subject: Re: Generare Adiacenze
- From: Mim-R
- Data: Sat, 5 Jul 2008 15:15:34 +0200
- Newsgroups: it.comp.giochi.sviluppo
Il mio shadow volume della sfera non sembra molto diverso da quello che ho
fatto io.
Ad ogni modo invece la funzione D3DX10 che ho menzionato serve proprio a
generare le adiacenze nel modo corretto: ci sono vari demo che la usano e
funziona anche bene.
mi sembra di essere arrivato ad un vicolo cieco :(
"Gianpaolo Ingegneri" <
info@tmind.com> ha scritto nel messaggio
news:
486f61dc$0$17943$5fc30a8@news.tiscali.it...
>> Grazie mille per l'interessamento.
>> Bhè per il blending possiamo pensarci dopo, mi interesserebbe prima far
>> almeno
>> funzionare le ombre in modo decente.
>>
>> Ho fatto una scena un pò piu' normale (scusate se è penosa, ma non ho
>> ancora un
>> framework decente, scrivo in D3D10 "pure")
>>
>> http://img61.imageshack.us/img61/4351/img3bu3.jpg
>> Questa è l'ombra completa (che non funziona)
>>
>> Questa è la cosa che non mi convince
>> http://img378.imageshack.us/img378/3286/img2vs0.jpg
>>
>> Questo è il wireframe dello shadow volume (che mi sembra a posto)
>> http://img378.imageshack.us/img378/2936/imgvx1.jpg
>
> Da quello che vedo mi sembra il risultato negativo sia dovuto alla
> presenza di poligoni inutili all'interno dello shadow volume. Ho visto
> anche il secondo messaggio ed il buffer è più pulito come dici tu perchè i
> poligoni interni sembrano essere scomparsi. Comunque devi migliorare
> l'algoritmo per le adiacenze, è sicuramente lì che si annidano i difetti.
> Se può esserti utile ho trovato il seguente demo:
>
> http://rainwarrior.thenoos.net/dragon/effects.zip
> http://rainwarrior.thenoos.net/dragon/effects.html
>
> cliccando V puoi vedere in tempo reale il wireframe di uno shadow volume
> praticamente perfetto. Inoltre ti consiglio di fare attenzione a questa
> parte dell'articolo:
>
> "The egde between them is the silhouette edge, which must now connect to a
> second set of points that is the silhouette edge projected to infinity (in
> practice either the near or far clipping plane). Finding this edge can be
> computationally expensive, but there is a way to quickly approximate the
> shape of a shadow volume using the vertex shader. Simply using the normal
> at any particular vertex we can determine if that vertex faces the light,
> and if it does not, project it onto the near or far clipping plane."
>
> sembra che tu debba usare una ben precisa tecnica per poter implementare
> gli shader ed ottenere il risultato migliore (che non significa ancorarsi
> alle direct: puoi implementare quel modello e specializzarlo eventualmente
> per gli shader, se è tuo interesse).
>
>
>
> Gianpaolo Ingegneri
> www.texturemind.com
>
>