Skip to content

webGL: esperimento 2

Ciao a tutti,

come prima cosa, ecco il risultato: aperricone.altervista.org/wegl2/

ultimamente mi è venuta la pazza idea di convertire un mio esperimento openGL in WebGL,  l’esperimento è visionabile qua: https://www.youtube.com/watch?v=qhwlZcrYKFc, in esso utilizzo una sorgente luminosa sferica: ha una  posizione è un raggio. La ragione per cui l’ho fatto è che ho sempre trovato l’illuminazione da area light più realistica delle altre, e una sfera è una buona approssimazione da applicare al real time.

Continue reading webGL: esperimento 2

Leave a Comment

La perry-camera

Quest’oggi parliamo della distorsione prospettica nelle camere reali :). Come sicuramente quelle 2/3 persone che leggeranno questo post sapranno, diverso tempo fà ho lavorato in un videogioco di pallavolo, quando questo sport viene trasmesso in tv accade, come in tutti gli altri sport, che venga ri-trasmessa l’ultima azione, come riempitivo di un momento morto o perché particolarmente spettacolare (nella pallavolo il primo caso è il più comune). Nella pallavolo alcune volte il replay fa uso di una telecamera grandangolare piazzata altezza rete… ed ovviamente la trasposizione videoludica non si poteva esimere dall’avere lo stesso effetto distorto e incomprensibile. Dopo un po’ di esperimenti cercando di riprodurre questo effetto, notai che mentre solitamente si proietta la scena 3D su un piano davanti alla telecamera, dove ogni punto è su un piano come se fosse parallelo allo schermo, per ottenere un’effetto distorto dovevo trattare la proiezione come fosse su una sfera, quindi se solitamente abbiamo sx=\frac{x}{z} e sy=\frac{y}{z}  , dove x,y e z sono le coordinate 3d da proiettare e sx e sy i punti proiettati, per la visione a “occhio di pesce” avevo d=\sqrt{x^2+y^2+z^2}  e quindi sx=\frac{x}{d}  e sy=\frac{y}{d}  .

Continue reading La perry-camera

Leave a Comment

MFC & CUDA

Io e le MFC abbiamo una lunga storia alle spalle, le ho sempre viste come una cosa che non mi serve, una complicazione in un sistema semplice e bello come quello a messaggi di windows. Alla fine invece bisogna vedere mfc come quello che è: un semplice strato tra i messaggi e un sistema a classi, arcaico, progettato così così, basato su define più che su classi, ma di una potenza senza eguali nella programmazione windows. Basta vedere le librerie codejock o quelle BCGSoft (integrate in visual studio 2008) per vedere cosa si puo’ e cosa fanno con MFC. Continue reading MFC & CUDA

Leave a Comment

Trovare un medico di famiglia

Ciao a tutti, oggi mi sono alzato con uno scopo nobile in mente, prepararmi per andare a fare la richiesta per un medico di famiglia. Ricordo che quando stavo a Padova ci ho messo circa 4 anni per decidermi, el l’ho fatto solo perché avevo un problema serio ad un ginocchio per farlo. Dopo una velocissima ricerca sono arrivato a questa pagina dell’ASL… 13 indirizzi e nessuna idea di dove siano… Google maps risolverà! con pazienza ho trovato l’indirizzo più vicino. Ora dovrei decidere quale dottore, così vado a questa pagina PDF…  28 pagine di girca 15 indirizzi ognuna, per un totale di circa 400 indirizzi, controllo di quale distretto, vado a controllare rimangono più di 200 dottori!! Ma caspieterina! Vuoi vedere che sono capitato nel distretto più popolato di dottori dei 5?!?! Siccome sono nerd e di controllare 200 indirizzi a mano per trovare il più vicino non ci penso proprio, ho cominciato a guardare l’help delle API di google maps… Continue reading Trovare un medico di famiglia

4 Comments

manikin!

manichin 1.1

AGGIORNAMENTO!! migliorato anti-aliasing e aggiunta ombra. ora sì che è figo 🙂

AGGIORNAMENTO!! seguendo il consiglio del grande Paolo Calloni ho evidenziato il punto del manichino che si posiziona dov’è il mouse così da essere più chiaro l’utilizzo del programma. L’idea iniziale era di colorarlo in verde o giallo ma poi il mio daltonismo ha preso il sopravvento e l’ho fatto magenta 😮

Ecco qua il mio ultimo lavoretto! cominciamo con un pò di note sul programma e di seguito il mio solito sproloquio/Post-morten 🙂

 

Continue reading manikin!

5 Comments

Outline

Ieri mattina mi sono alzato con tanta voglia di fare… fortunatamente poi è andata scremando…

Quello che volevo fare era un prototipo di posizionamento manichino, un pezzo del programma di paint che ho in mente, in cui renderizzato un manichino (tipo quelli di legno per artisti) e poi col mouse selezioni gli arti e li orienti come più ti piace. L’idea sarebbe questa: click semplice cambi selezione, ruotando tra tutte le possibili in quel punto, click e trascina decidi la direzione dell’attuale arto, e rotellina ruoti più o menol’arto verso la camera. A parole sembra bello, ed è per questo che volevo fare un prototipo.

Continue reading Outline

1 Comment

Una mia skylight

Tempo fà stavo guardando i vari esempi dell’SDK nVidia, senza cercare niente in particolare, così tanto per passare il tempo. E sono rimasto colpito da un’esempio riguardante l’ambient occlusion. A prima vista non sembra un grande esempio, intanto per avere risultati decenti ci mette molto più del tempo richiesto dal rendering real-time (diciamo 2 sec) e poi il risultato mi sembrea sempre un pò sbagliato…

Questo esempio propone di utilizzare le Shadowmap per calcolare l’ambient occlusion, renderizzando tante volte la scena con le ombre proiettate in diverse direzioni, e poi fa la media dei vari rendering. Continue reading Una mia skylight

Leave a Comment

Sul radiosity real-time

Sono un pò di giorni che penso a questo problema della computer grafica moderna, ho guardato un pò in giro e oltre ENLIGHTEN non sono presenti sul mercato soluzioni simpatiche, molte alternative sono illustrate in questa pagine qua, che però essendo mantenuta da  Stepan Hrbekè un pò di parte, infatti non nomina ENLIGHTEN probabilmente perché è nettamente superiore al suo. Da notare poi come la sua tecnica sia “Realtime radiosity” mentre le  altre sono chiamate col loro vero nome :). Vediamole un pò:

C’è “Instant Radiosity” una tecnica molto simpatica la quale crea una serie di sorgenti luminose secondarie per simulare la luce riflessa, se poi si crea un sistema stabile che crea ombre per tutte le luci si riescono ad avere risultati davvero notevoli, certo che fare l’ombra di… mettiamo 300 punti luci è un pò fuori dal realtime, il problema è che anche essere illuminati da 300 luci quasi tutte direzionate (le luci in di riflesso non illuminano in modo uniforme in tutte le direzioni) e di cui una possibilmente con ombra si vede che il metodo non è proprio istantaneo…

Continue reading Sul radiosity real-time

1 Comment