shader random Clicca QUI per vedere il messaggio nel forum |
rekotc |
mmm....ragazzi ma come si fa a far si che le celle della scacchiera vengano scelte in modo casuale?? Io ho diviso in celle...ma sono tutte alternate con regolarita...come faccio a fare in modo che siano random??...mi serve qualche suggerimento generico :D...thanks! |
Ste.dv |
Come si è detto nel thread sulla lezione di ripasso, non è possibile mantenere una memoria condivisa affinché lo shader sia applicato di volta in volta secondo parametri prestabiliti.
La chiave è la funzione noise, utilizzata nel modo giusto, poiché a parità di parametri restituisce lo stesso risultato. |
Hiei |
Originally posted by Ste.dv
Come si è detto nel thread sulla lezione di ripasso, non è possibile mantenere una memoria condivisa affinché lo shader sia applicato di volta in volta secondo parametri prestabiliti.
La chiave è la funzione noise, utilizzata nel modo giusto, poiché a parità di parametri restituisce lo stesso risultato.
e perche non usare la funzione random() ?
e nel caso non vada bene, come si usa il noise? mi faresti un esempio? non ho proprio capito...grazie |
jonny86 |
random = funzione a caso SENZA PARAMETRI e senza possibilità di "guidare" il risultato
noise = funzione "pseudocasuale" CON PARAMETRI e con possibilità di guidare il risultato
La noise funziona in 2d o in 3d. Se gli passi un parametro punto lavora in 3d, se gli passi 2 parametri float lavora in 2d.
E' pseudo casuale perchè per valori vicini nello spazio (o nel piano) la noise produce scostamenti lievi.
Detto ciò per sto shader la cosa importante è sapere che se x,y sono due numeri noise(x,y) a parità di x e y da sempre lo stesso risultato.
Quindi se per ogni "quadrante" della tua scacchiera usi la stessa combinazione di x,y otterrai sempre lo stesso valore (compreso tra 0 e 1)... quindi se poi lo usi per selezionare il colore....
Comunque sto link https://renderman.pixar.com/product...f/RISpec3_2.pdf punta alle specifiche di renderman. |
Hiei |
Tutto chiaro, grazie. Diciamo che erano cose che avevo intuito ma così mi hai tolto i dubbi.
Originally posted by jonny86
Quindi se per ogni "quadrante" della tua scacchiera usi la stessa combinazione di x,y otterrai sempre lo stesso valore (compreso tra 0 e 1)... quindi se poi lo usi per selezionare il colore....
questo mi lascia un po cosi...quando dici " se poi lo usi per selezionare il colore", intendi il valore (0 o 1) vero ? Perchè io ho fatto un if che decide come assegnare il colore proprio leggendo un valore che può essere 0 o 1. Ed è sempre casuale (le ho anche stampate a video per controllare), solo che niente... bah! |
IsaMetallo |
solo una cosa: dunque la scelta tra plastica e specchio non deve essere diversa ad ogni esecuzione ma semplicmente pseudo casuale ma costante? |
|
|
|