Progetto - RimLight Clicca QUI per vedere il messaggio nel forum |
Xabaras |
Visto che e' da gennaio che ci provo, ma nessuno sembra darmi una mano, posto quello che ho fatto, cosi' qualcuno spero lo implementi / mi dia dei consigli:
surface rimlight (float Ka = 1, Kd = 0.5, Ks = 0.5, roughness = 0.3; color specColor = 1)
{
// Vettore che identifica la luce fittizia
vector FLight = (-2.6,-1.5,-1);
color cWhite = color(1,1,1);
normal Nf = faceforward (normalize(N),I);
vector In = -normalize(I);
normal LightN = -normalize(FLight);
float cosAngle = Nf.LightN;
if( cosAngle < 0.75) // USA LA LUCE NUORMALE
{
Ci = Cs * (Ka * ambient() + Kd * diffuse(Nf)) + Ks * specColor * specular (Nf, In, roughness);
}
else //USA IL VETTORE FITTIZIO
{
Ci = cWhite * Ka * ambient();
}
Oi = Os = 1;
} |
ildiff |
Consiglio 1
L'unica cosa che ti dico riguardo al codice che hai postato è di buttare nel cestino quel blocco if-else dato che il contributo della luce fittizia va aggiunto in questa formula qua Ci = Cs * (Ka * ambient() + Kd * diffuse(Nf)) + Ks * specColor * specular (Nf, In, roughness). Per quanto riguarda il resto la base c'è e credo che l'hai anche capita, devi solo metterlo a posto (non poco).
Consiglio 2
Anzichè lamentarti che nessuno ti aiuta sul dsy, hai mai pensato di prendere ed andare al ricevimento di Viale e farti spiegare i tuoi dubbi riguardo una possibile implementazione dello shader? Bè io l'ho fatto e ti posso assicurare che è decisamente molto più istruttivo che chiedere e farsi dare la pappa pronta da consegnare al prossimo appello. Questo perchè:
1) Ti fai una cultura
2) Hai l'opportunità di farti rispiegare quello che non hai capito a lezione o gli argomenti che sono stati trattati con i piedi (vedi noise)
3) Poichè lo scrivi tu, capisci quello che c'è scritto nello shader cosa che poi ti tornerà utile durante l'esame (anzichè vedere un mucchio di istruzioni apparentemente senza significato). |
Xabaras |
Purtoppo non posso andare al ricevimento in quanto vivo e lavoro in olanda, per quanto riguarda lo sviluppo purtoppo devo arrangiarmi da solo, ecco perche' chiedo aiuto, oltre gli appunti che ho del corso, purtoppo le 1000 slide ti teoria e quelle di laboratorio non sono proprio d'aiuto per lo sviluppo dell'esercizio.
Ora sto stuiando su un libro sul linguaggio RSL, ma purtoppo in questo testo si interviene troppo sui file rib poco sullo shader, avete altro da consigliare?? Ci sono esercizi magari ben commentati dove posso dare un'occhiata??
Quello che voglio non e' la pappa pronta ma capire quello che viene fatto, se c'e' qualcuno che vuole sviluppare il progetto insieme posso dare il mio impegno, a patto di avere qualcosa su cui studiare, altrimenti a tentativi e' davvero dura.
Saluti |
|
|
|