Monthly Archives: May 2010

Typo Mishap

typomishap
Typo Mishap. Rendered with P5Sunflow.

Typo Mishap. Applet and source code: http://www.openprocessing.org/visuals/?visualID=9333

Come anticipato, inizio a studiarmi jBullet – il Java port di Bullet Physics (open source collision detection, rigid and soft body dynamics library), visto che é proprio quello che serve per aggiungere convincenti effetti di fisica agli oggetti 3D disegnati in Processing; la lib é molto complessa ed espone centinaia di classi e metodi per calcolare collisioni, primitive, inierzia, posizioni, piani, velocità, accelerazioni, punti di contatto, shapes convesse e concave, eventi, algoritmi ecc… Si é reso necessario un decompiler per leggere le classi (.java) contenute nel .jar della demo Applet originale; questo é l’unico modo per poter affrontare le API di Bullet Physics almeno per identificare chi-fa-cosa. In questa situazione iniziale é chiaro che per comprendere, devo ricostruire la demo base trovando però un punto di contatto efficiente tra le funzionalità di disegno (rendering) in Processing e quelle di calcolo di forme e comportamenti in Bullet. Comunque – e questa é la parte che mi entusiasma – non ci sono limiti a ciò che si può realizzare, perché questa libreria é scelta come framework per le simulazioni da almeno 3 su 10 tra le Top Game Companies che sfornano videogames per Wii e PS3.

r003
lettercam
Kill ‘em all! Posso creare forme e lanciarle nella direzione del lookAt point della camera partendo dalla posizione della stessa. Delle vere e proprie cannonate!

Nello sketch in cui ho tentato di usare per la prima volta Bullet, riprodotto nel video in alto, ad ogni key press la lettera o il numero corrispondente vengono creati e per effetto della gravità piombano sul piano sottostante; le forme sono dei veri e propri corpi rigidi che si fermano sui loro punti di contatto senza attraversarsi. La versione con cui si può ‘giocare’ sotto forma di Applet corredata di sorgente, è come al solito disponbile su OpenProcessing. Col mouse e tasto sx si ruota, col dx si fa zoom, e con la tastiera si creano i Characters.

Il poter simulare la matericità delle cose, ottenere reazioni in seguito ad azioni (come avviene nel mondo che ci circonda) suscita in me la stessa ‘frenesia creativa’ che potrebbe avere un pittore messo di fronte alla più grande tela bianca che potesse desiderare.