Tag Archives: openprocessing

Stippling


Stippling.

Applet and source: stippleVerletReplay.
Made with Processing.

Anche io, come Robert Hodgin (e qualche anno dopo, a dire il vero) ho voluto implementare il mio algoritmo per ricreare le immagini con un pattern di punti – in inglese stippling. Sono andato oltre le immagini statiche e lo ho fatto con un video feed: partendo dalla webcam analizzo la luminosità ed in base a questa modifico massa e raggio di 5000 particelle che si respingono fra loro. Maggior massa e maggior effetto repulsivo; come al solito trovate il sorgente su openprocessing, dal link sotto al video, anche se lì per ragioni di performance ho limitato il particle system a 1000 elementi. Enjoy the stippling effect.

gridTyper


231174
75121
26426

gridTyperSet
gridTyper.

Applet and source: gridTyper.
Made with Processing + HE_Mesh.

L’estrusione dei pixel font ha destato il mio interesse già in passato 123 ma gridTyper è l’implementazione di un’idea di Jan Vantomme (vormplus) sul cui blog due o tre settimane fa ho trovato un interessantissimo post sul processo utilizzato per realizzare delle bellissime lettere in plastica acrilica delle dimensioni di 40 × 50 × 20 mm usate per la corporate identity di cloudswimmers. Sfortunatamente, nonostante abbiano realizzato questo set di lettere con Processing ed HE_Mesh – ambedue opensource – non hanno diffuso il codice sorgente; mi sono quindi permesso di seguire il processo descritto nel post per realizzare io stesso un tool che potesse estrudere un pixel font (direttamente sul keyPress a runtime) e smussarlo (Catmull-Clark); questi oggetti – se suddvisi ulteriormente possono divenire molto lisci al tatto – e possono essere salvati in .stl per poi essere stampati in 3D con shapeways o i.materialise tramite processi di selective laser sintering (SLS). Full credits a vormplus quindi per l’idea ma sopratutto grazie a Frederik che mi ha supportato nella realizzazione del tool, chiarendomi dubbi e perplessità su come procedere.

my Flickr PhotoSphere

fps04
flickrsphereboth
Applet and source code: http://www.openprocessing.org/visuals/?visualID=17064 Type a search term and press ENTER; UP/DOWN keys toggles images/descriptions. made with Processing.

This thread has lit the spark! Using the code provided by Gustav Bjordal in his PhotoWall sketch, I developed a very quick prototype wich a) connects to the Flickr API service and performs a query with a user-defined keyword, b) parses (with the proXML lib, tho I could have used the default processing xml parsing cababilities) the response, c) creates a matching number of texturized boxes, d) draws a sphere made of randomly sized boxes properly rotated along the surface. It is a signed Applet (Applets are normally executed in a sandbox that prevents them from accessing the local hard disk/network) so you’ll have to grant all the alerts that may pops up at first run.

Not the smartest way to query Flickr, but it’s been cool to code.
Applet and source here.
Merry Christmas, everyone!

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.

 

textrusion

two
letterExtruder http://www.openprocessing.org/visuals/?visualID=9401

Come già visto in qualche post precedente, l’oggetto PGraphics permette di disegnare offscreen; è possibile poi analizzare pixel-per-pixel l’immagine PImage generata ed utilizzare le informazioni come colore e posizione dei pixel per inventarsi qualcos’altro. Da qualche giorno ho scoperto una tecnica per scrivere in 3D partendo da ‘pixel font’ originariamente renderizzati in 2D (i pixel font sono caratteri appositamente realizzati per poter risultare leggibili a dimensioni ridottissime, molto usati nei siti Flash, senza antialias) su di un PGraphics. Ho realizzato queste due Applet dalle quali potrete capire il funzionamento ma avrete la pazienza di studiarvele senza ulteriori indicazioni. Intanto sto indagando ulteriormente per applicare della fisica con jBullet, al fine di poter simulare la collisione tra le forme. Posterò gli sviluppi.