Author: robertofaziostudio

Mi ha sempre affascinato l’idea di lavorare con i dati: manipolare e interpretare le informazioni per visualizzare o creare delle installazioni interattive è uno dei processi che amo di più nel mio lavoro. Non sono un esperto di data visualization e nemmeno aspiro ad esserlo. Raccontare con i dati, investigare per visualizzare delle informazioni è un processo interessante in quanto oltre che facilitarne la lettura si possono creare delle visualizzazioni estetiche molto funzionali. Non essendo questo il caso, sono più interessato a usare il cambiamento di un dato in tempo reale per attivare un processo nelle mie installazioni ( come in Natura non nisi parendo vincitur o 8 Minutes ).

Ho avuto il piacere di essere stato coinvolto insieme ad Enrico Viola nel progetto La Cura di Salvatore Iaconesi e Oriana Persico, dove stiamo preparando un workshop chiamato We are not Numbers. In questo workshop cercheremo di esplorare metodi di interazione con i dati grezzi provenienti dal mondo dei big data, nello specifico utilizzando le API di Human Ecosystem. Trovate una dettagliata documentazione sugli Endpoint di Human Ecosystem sul GitHub di Salvatore Iaconesi. Ecco una breve panoramica sulle loro API:

Per esempio se vogliamovisualizzare le statistiche relative alla distribuzione di emozioni nella città di Bologna sui Social Network. Usiamo l’endpoint tools-getProjectStatistics.php?w=bologna

Ora vi mostrerò come visualizzare una semplice esperienza interattiva caricando e ‘parsando’ un file JSON dentro Unity3D utilizzando una libreria per .Net chiamata LitJson DLL e a questo link potete scaricare la stessa già compilata pronta per essere importata dentro Unity nella folder Assets/Plugins. Una volta importata la dll dentro Unity dobbiamo creare un nuovo script che chiameremo LoadJson.cs e la prima cosa da fare è includere la libreria compilata LitJson sopra la classe:

{{using LitJson;
}}

Nello script LoadJSON.cs  avremo bisogno di leggere il file JSON.

{{
 IEnumerator Start () 
 {
 
     string HE_BO = "http://human-ecosystems.com/HE_BO/API/tools-getProjectStatistics.php?w=bologna";

     WWW www = new WWW(HE_BO);

     yield return www;

     if (www.error == null && www.isDone )
     { 
         //Sucessfully loaded the JSON string
         Debug.Log("Loaded following JSON string" + www.text);

         //Process JSON file
         LoadJsonLaCuraStatistics();
     }
     else
     {
        Debug.Log("ERROR: " + www.error);
     }
 }

}}

In Unity esistono le Coroutine, funzioni speciali che permettono l'esecuzione e l'interruzione delle stesse usando lo stato yield. Con yield return specifico quando riprendere l'esecuzione della funzione.  In sostante anteponendo IEnumerator a Start() do la possibilità di ritornare nuovamente nello stato di inizializzazione.

L’oggetto www riferito alla classe WWW mi permette di accedere ad un link web e di scaricarlo. In questo caso scarichiamo il JSON all’indirizzo http://human-ecosystems.com/HE_BO/API/tools-getProjectStatistics.php?w=bologna. Se non ci sono errori e si è scaricato totalmente il file  richiamo la funzione LoadJsonLaCuraStatistics() mostrata di seguito

{{

void LoadJsonLaCuraStatistics()
{
    string jsonString = www.text;
    JsonData emotionsObject = JsonMapper.ToObject(jsonString);

    Datas datas = new Datas();
    print("Emotions: " + emotionsObject["emotions"].Count);

    int numEmo = emotionsObject["emotions"].Count;
    GameObject[] emotions = new GameObject[numEmo];


    temp = new GameObject("temp");
    for(int i = 0; i < emotionsObject["emotions"].Count; i++)
    {
       float angle = i * Mathf.PI * 2 / emotionsObject["emotions"].Count;

       float[] values = new float[numEmo];
       values[i] = float.Parse(emotionsObject["emotions"][i]["value"].ToString()) / 100;
       print(emotionsObject["emotions"][i]["label"].ToString() + values[i]);

       Vector3 gapPos = new Vector3(i * 22, 0, 0);

       emotions[i] = Instantiate(myPrefab, gapPos, Quaternion.Euler(Vector3.forward)) as GameObject;
       emotions[i].transform.parent = temp.transform;
       emotions[i].transform.localScale = new Vector3(40, values[i], 40);
 

      emotions[i].GetComponent<Renderer>().material.color = new Color32( 255, 0, 0, 255);
 
 
 }
}}

Vediamo le istruzioni principali della funzione LoadJsonLaCuraStatistics() Per prima cosa converto la stringa jsonString caricata in un oggetto JsonData chiamato emotionsObject con la classe statica JsonMapper come segue:

JsonData emotionsObject = JsonMapper.ToObject(jsonString);

Ora analizziamo per un momento il nostro file JSON e con una web application JSON Viewer apriamo lìindirizzo : http://human-ecosystems.com/HE_BO/API/tools-getProjectStatistics.php?w=bologna
Io ho usato questo: http://codebeautify.org/jsonviewer

{{
{
    "contents": "149257",
    "users": "121326",
    "geocontents": "143260",
    "emotions": [
        {
            "label": "Joy",
            "value": "33737"
        },
        {
            "label": "Love",
            "value": "20548"
        },
        {
            "label": "Trust",
            "value": "15744"
        },
        { 
         .......
}}

Ora possiamo accedere agli oggetti definiti nel JSON. Per esempio se volessimo stampare in console quante emozioni ci sono usiamo :

print("Emotions: " + emotionsObject["emotions"].Count);

emotionsObject[“emotions”] è un array di emotions e in modo semplice possiamo usare il ciclo for per iterare all’interno di esso per estrapolarci successivamente le “label” delle emozioni, e “value” per il valore riferito alla quantità di messaggi che parlano di quella determinata emozione.

{{

for(int i = 0; i < emotionsObject["emotions"].Count; i++)
{
   print(emotionsObject["emotions"][i]["label"].ToString()); 
}
}}

Con la stessa logica vado a estrapolarmi i valori delle emozioni e li salvo in una array di float values che divido per 100 per comodità di scala in Unity

{{
float[] values = new float[numEmo];
values[i] = float.Parse(emotionsObject["emotions"][i]["value"].ToString()) / 100;

}}

Ora vogliamo creare un array di GameObject dentro il quale istanzieremo successivamente dei cubi. Infine lo riempiamo con la quantità massima di emozioni trovate.

{{

      int numEmo = emotionsObject["emotions"].Count;
      GameObject[] emotions = new GameObject[numEmo];

}}

Sempre all’interno del ciclo for definisco una variabile Vector3 gap che è la distanza tra ciascun cubo nell’asse delle X. Instanziamo poi il prefab cubo per ogni posizione nell’array di GameObject emotions. Per semplicità definisco la quantità di messaggi assegnando il valore nella localScale.y di ciascun cubo.

{{
Vector3 gapPos = new Vector3(i * 22, 0, 0); 
emotions[i] = Instantiate(myPrefab, gapPos, Quaternion.Euler(Vector3.forward)) as GameObject;
emotions[i].transform.localScale = new Vector3(40, values[i], 40);
}}

Il risultato finale è la visualizzazione di 13 cubi che rappresentano le 13 emozioni trovate nel file json. Niente di esteticamente sorprendente ma è un primo approccio per iniziare a lavorare con i dati con Unity e stimolarvi per ideare visualizzazioni interattive.
data viz unity

Potete scaricare l’intero progetto open source sul mio repository di BitBucket a questo link :

https://bitbucket.org/robertofazio/humanecosystem_lacura ( work in progress )

0

Nella società contemporanea il tema delle interfacce e della comunicazione uomo­macchina diventa sempre più centrale, smartphone e social network hanno contribuito a trasformare il mondo della rete in un mondo di relazioni e partecipazione degli utenti. Contenuti che escono dagli schermi tradizionali, interfacce che rispondono a gesti naturali o diventano wearable contribuiscono a cambiare i paradigmi comunicativi e a rivolgersi ad ambienti in continuo aggiornamento. La realtà aumentata si pone in questo panorama come approccio innovativo in grado di rimodulare i concetti stessi di comunicazione e realtà.

Obiettivi Per realtà aumentata si intende una tecnica in cui oggetti 3D virtuali possono essere sovrapposti nello spazio fisico e visualizzati attraverso la fotocamera e lo schermo dei dispositivi mobile. Il workshop intende fornire una panoramica completa sulle potenzialità di questa tecnologia in vari settori, tra i quali Beni culturali, Design e Pubblicità. I partecipanti avranno la possibilità di comprendere i fondamenti metodologici e strumentali necessari per sviluppare un’applicazione mobile di realtà aumentata e per progettare esperienze utente funzionali sperimentando l’integrazione di contenuti 3D aumentati nella visualizzazione dello spazio fisico attraverso un dispositivo mobile.

DATE: Sabato 05 e Domenica 06 Dicembre 2015
LOCATION: Le serre dei Giardini Kilowatt, Bologna
COSTO: 150€
ISCRIZIONIhttp://goo.gl/6Ynpzq

Sconto di 50€ per chi partecipa al successivo workshop sulla Realtà Virtuale.

EVENTBRITEhttps://arworkshop.eventbrite.it/

DOWNLOAD PROGRAMMA DETTAGLIATO

When I discovered UDOO team I was surprised that they had the office very closed to my actually home, so I immediately met the crazy people behind the awesome embedded board. First I wanted to try a Unity3d build in order to test it was realistic to develop something like game withUnity3d and UDOO. After some hours I also got a deploy with a simple Augmented Reality project by using Vuforia. Before fly to Perù for the presentation of my VR Installation NATURA NON NISI PARENDO VINCITUR I was interviewed by the crazy team UDOO (altro…)

Che cosa vuol dire visualizzare dati?

L’arte di visualizzare dati e informazioni quantitative è di fatto un processo complesso e multidisciplinare. Se per rappresentazione intendiamo quel processo che si occupa di mappare  informazioni astratte con elementi visibili, le fasi e i processi necessari per la realizzazione di un progetto di visualizzazione possono essere molteplici e di una discreta complessità. Fortunatamente la tecnologia ci viene incontro, (altro…)

BANNER-BLOG-WS05

1. Che cos’è per te il parametric design ?

Definirei il parametric design come una disciplina progettuale che fa uso di tecnologie di disegno parametriche, ovvero capaci di incorporare nel processo progettuale flussi di dati in grado di variare nel tempo (parametri) e di utilizzare tali flussi per informare ed organizzare processi logici (altro…)

Oggi vi presento una figura di riferimento nel campo delle live performance in tempo reale, Andrew Quinn. Prima di tutto Andrew è un caro amico e con lui condividiamo spesso pensieri relativi alle potenzialità delle nuove tecnologie applicate all’arte, proprio per questo abbiamo deciso di proporre un workshop improntato sul suo strumento principale Touch Designer(altro…)

Qualche anno fa mi sono avvicinando al meraviglioso mondo del creative coding e quindi ho iniziato a fare delle ricerche in merito cercando di creare una rete di contatti che mi permettessero di addentrarmi meglio in questo settore. Dopo un po’ di ricerche ho conosciuto via internet Luca Lolli  e due anni fa ho avuto il piacere di conoscerlo personalmente in occasione del Resonate Festival a Belgrado.

 (altro…)

Il secondo appuntamento dell’Educational Programme in Interactive Arts è dedicato ad openFrameworks un toolkit opensource e cross-platform basato su C++ . Sono felice di presentarvi Enrico Viola, creative coder italiano che vanta prestigiose collaborazioni come Onformative , Marco TempestMuseo della Scienza e della Tecnologia di Milano e St Gallen Art Museum. Conosciamolo meglio con questa intervista.

 (altro…)

Dopo aver passato gli ultimi anni a sviluppare progetti commerciali di video mapping (alcuni portati a buon termine e tanti altri sfumati nel nulla) posso cercare di fare una rapida stima di quella che è la situazione italiana sulla sensibilità sociale relativa alla creatività e all’innovazione tecnologica. Purtroppo credo che ci sia un problema di fondo, ovvero una mancanza di apertura verso il nuovo e una crescita sociale e culturale molto lenta. In quanto sempre più spesso realtà innovative hanno bisogno di soffocare i propri stimoli e le proprie potenzialità in funzione di una richiesta di mercato che va dalla parte opposta.

 (altro…)

0

Workshop : 3D INTERACTIVE PROJECTION MAPPING UNITY3D
Date : 1, 2 , 3 Nov 2013
Location : Cascine di Buti, Pisa IT

Il 3D projection mapping è una tecnica di video proiezione che permette di trasformare qualsiasi superficie in uno schermo su cui proiettare contenuti video creati a partire dalle caratteristiche delle sue geometrie.Si è ormai affermata come una delle forme più innovative e diffuse di approccio alle video proiezioni e con le sperimentazioni più attuali e innovative si sta indirizzando verso l’interattività e le sue differenti applicazioni.
Durante questo workshop verranno analizzati tutti gli aspetti teorici e pratici dello sviluppo produttivo di un progetto di interactive video mapping. I partecipanti avranno modo di affrontare i vari stadi di lavorazione e comprendere le potenzialità legate al mapping interattivo utilizzando Unity3D, nello specifico si getteranno le basi per realizzare un video game interattivo sulla facciata di un’architettura.
Unity3d è un toolkit cross-platform per la creazione di video games 3d. La sua intuitività e la facilità d’uso ne hanno fatto uno degli strumenti più usati nel settore, oltre ad aprirne l’utilizzo ai progetti più disparati, quali installazioni interattive, applicazioni per il vjing, per il teatro o per l’esposizione di progetti architettonici.
La teoria e le realizzazioni del workshop verranno concretizzate con la proiezione di un elaborato finale realizzato dai partecipanti sulla facciata dell’ex cinema Vittoria di Cascine di Buti.

Struttura del workshop

Venerdì 01 Novembre, ore 10.30-18.30
Introduzione ed Iter progettuale
  • Overview e analisi di progetti di video mapping
  • Valutazione della fattibilità di un progetto di 3D Projection Mapping
  • Analisi della struttura architettonica e valutazione degli spazi
  • Concept , ricerca e linguaggio visivo (tono, feeling, stile grafico), storyboard testuale o visuale
  • Foto rilievo e modellazione 3D
  • Impostazione del progetto e preparazione scena virtuale 3d in Cinema 4D
Sabato 02 Novembre , ore 10.30-18.30
Ideazione e Progettazione:
  • Sviluppo dei contenuti 3d, animazione, texturing and lighting con Cinema 4D
  • Introduzione e breve overview alla stereoscopia applicata al video mapping. Introduzione a Element.Map, custom software opensource per la diffusione di contenuti 3d stereoscopici
  • Gestione della parte tecnica e panoramica sugli strumenti di lavoro.
Domenica 03 Novembre , ore 10.30-18.30/Proiezione ore 21
Interaction Projection Mapping:
  • Introduzione a Unity3D, Interfaccia + Scripting C#
  • Gestione dei modelli 3D in Unity importati da C4D, Bake Textures e Animazioni
  • Sound Reactive Unity3D, OSC, controllo via iPad e Syphon
  • Kinect openFrameworks e KinectA app
  • Set-up videoproiettore
  • Finalizzazione del progetto e proiezione dell’elaborato finale
Per chi:
Il workshop è rivolto a: video designers, creativi e studenti che vogliono approfondire come si sviluppano progetti di video mapping professionali destinati ad eventi in contesti commerciali e culturali.
Prerequisiti:
Nessuno, anche se è consigliata una buona conoscenza dei maggiori programmi di grafica e di editing video ed una conoscenza base di modellazione poligonale 3d, animazione, texturing, lighting e rendering in Cinema 4D o altro programma simile. Preferita ma non indispensabile familiarità con i linguaggi di programmazione. Si consiglia di munirsi degli strumenti di lavoro già installati per velocizzare le operazioni di set up.
Gallery : goo.gl/Fp1aBY

Teacher : Roberto Fazio
Assistant : Pedro Cesar Gennai

Participants :
Alessandro Ruggeri, Agnés Vanlerenberge, Dario Timpani, Diego Tomasello, Federico La Piccirella, Germana Marchioni, Leonardo Olivito, Livio Talozzi, Marco Rossetti, Matteo Parenti, Matteo Iori, Michelangelo Giorgini, Massimiliano Micela, Michele Pio di Pasquale, Matteo Semprini, Samuele Cruscanti, Valerio Viperino, Vincenzo Ardagna and the Drone

Photos and Shooting : Daiana Salucci
Production : Associazione Il Miglio

0

Our planet is literally enveloped by an artificial electromagnetic sheath that, as an immense and immaterial neural cortex, disseminate information and knowledge all around, in every corner of every known land.

This powerful and widespread global infrastructure is invisible to us, as it relies on satellite communication that, in its most part, takes places well behind the limits of our perception. Nevertheless, inside this apparently insubstantial sphere some of the most important processes of our time take place every second: entertainment, finance, military affairs, commerce, personal communication, scientific research, everything flowing inside this electromagnetic skin wrapped around the planet earth.

With this project we are trying to give visibility to a little portion of this immense and invisible system, mapping the technological device that relies at its core: the satellite itself. The interactive visualization shows the complete database of all the active satellites actually orbiting around the earth. Data are from Union of Concerned Scientists 

The vizualization is showing each satellite – represented as a short line – with its specific features: year of launch (position in the circle) and mass (line length). Interacting with the visualization you can discover other features such as nationality and purpose (military, commercial, ecc..)

This data-visualization is an ongoing project and is the final product of a three day workshop Adventures in data visualization part of the Educational programm in Interactive Arts and Technology.

_________________________________________________________

Project page : http://www.robertofazio.com/2014/the-moon-is-not-alone/index.html

Workshop Leader : Fabio Franchino , Todo

Interview : http://www.robertofazio.com/presentazioneworkshop-06-fabio-franchino/

Credits :

Francesco Carletto
Roberto Fazio
Stefano Perna

Dataset source 

0

Last 5 October 2013 I was invited by Filip Visnjic  ( CreativeApplications.net ) and MIGZ Festival to host a workshop on Unity3d and projection mapping in occasion of the Educational Programme for the Moscow International Festival “Circle of Lights” in the Digital October Centre at the Red October district.

I had the good opportunity to meet and make friends know many artists and creative coders that I admire very much among which as Andreas Muller (Nanikawa), Klaus Obermaier (Exile), Alexandros Tsolakis (United Visual Artists), Elliot Woods (Kimchi and Chips), Peter Kirn (Create Digital Motion), Filip Visnjic (Creative Applications Network), Alexey and Alexander (MIGZ Festival) and many others…

The festival was focused mainly on the projection mapping and unfortunately I have to admit that it confirmed what I’ve been thinking for a long time : this kind of architectural projection mapping has became boring since there is no artistic and technology research and development neither. No More than a nice 3d render that communicates with the front and maybe that tells a story. In Russia this kind of performance is appreciated. In order to do not let this happen we need to trust in R&D. And I’m quite certain of it.

3 2 1

WORKSHOP : Methodologies and Design of 3D Interactive Projection Mapping with Unity3d
This workshop is intended for video designers, designers, and students who want to learn how to develop professional video mapping projects for events, trade and cultural contexts. During the  workshop, the participants will learn how to realise a 3d interactive projection mapping project. 3D projection mapping is an experimental technique that transforms a surface, as an object or a building, into a screen where to project 3d video contents based on the surface geometry itself. In recent years it has became one of the most innovative and popular approach to video projections in various fields, from entertainment to marketing. During the workshop participants will analyse all the theoretical and practical aspects of mapping project development. The workshop will follow a reverse engineering process focusing on a work realised by Roberto Fazio.

The objectives include to learn all the various aspects/stages of a video mapping project, learn how to elaborate a video mapping project from end to end and finally an overlook of the new possible applications of this technique.

Workshop Requirements: Basic editing video knowledge and familiarity with 3d environments like Cinema4d or similar. It is appreciated though not required previous experience with any programming language or scripting. Laptop with Cinema4d r13, Unity3d 4.0 , Photoshop, Illustrator and After Effects. Additional plugins Cinema4d : Transform pluginNitroBake,

Unity3d : MegaFiersSyphon for Unity3d, OSCKinect (you can bring your own) kinect or elementMap or Millumin. The platform used during this workshop will be Mac OSX 10.8 . It is advisable to have appropriate work tools already installed to speed up the set up.

0

Workshop Video game mapping al Festival Fuochi Fatui 2013, a Feltre (BL) dal 3 al 5 Settembre.

Photo Gallery : Link

Introduzione ed Iter progettuale

Martedì 3 settembre
Overview e analisi di progetti di video mapping 1.0 e 2.0;
Valutazione della fattibilità di un progetto di 3D Projection Mapping;
Analisi della struttura architettonica e valutazione degli spazi;
Foto rilievo e modellazione 3D sulla chiesa di San Rocco.
Impostazione del progetto e preparazione scena virtuale 3D in Cinema 4D

Ideazione e Progettazione:

Mercoledì 4 Settembre
Concept , ricerca e linguaggio visivo (tono, feeling, stile grafico), storyboard testuale o visuale;
Sviluppo dei contenuti 3D, animazione, texturing and lighting con Cinema 4D;
Introduzione e breve overview alla stereoscopia applicata al video mapping (limiti e pontenzialità);
Gestione della parte tecnica e panoramica sugli strumenti di lavoro.
Introduzione a Element.Map, software opensource proprietario per la diffusione di contenuti 3D

Finalizzazione:

Giovedì 5 Settembre
Accenni al mapping Interattivo e Kinect;
Introduzione a Unity3D;
Finalizzazione del progetto;
Set up videoproiettore in Piazza Maggiore;
Proiezione dell’elaborato finale.

0

Telenoika Mapping Workshop

Date  : 5-9 november 2012
Location : Fabra i Coats, fàbriques per a la creació. Barcelona
Thx: Fabra i Coats, Mira! festival, LaAgencia, Beep-Epson, Mackie, Ajuntament de Barcelona, Generalitat de Catalunya.

Staff
Teachers: Joanie Lemercier (AntiVj), Roberto Fazio (RFStudio), Santi Vilanova (Playmodes/Telenoika) and Eloi Maduell (Playmodes/Telenoika)
Director: Eduard Llorens (Telenoika)
Assistant: Carlos Padial (Telenoika)
Camera+edit: Omar Prole (Telenoika)

telenoika.net/tallers