Academia.eduAcademia.edu

Dance with the Swarming Particles - Project Report

2010

DANCING WITH SWARMING PARTICLES is an interactive installation and performace that intends to explore the relationship between a physical user/performer and a virtual performer the “avatar” which has the physical characteristics of morphing flocking particles. The installation’s interactive environment is a media space that includes a physical space and a virtual space. The virtual space is initially composed of floating data which, through the interaction with the physical user/ performer, will become organized structures and take the shape of complex landscapes. The avatar’s body is composed by flocking particles that initially float in the virtual space without any apparent order. It is through the energy of the physical user/performer’s movements that the particles will start to morph into the avatar’s body. The ultimate form of the avatar and of the virtual and physical spaces, will result from the data generated by the user actions/performance and will be represented by the graphic visualisation of this interaction. In this way each interaction/performance will have a unique outcome.

|| | DANCING WITH SWARMING PARTICLES Real time interaction with an avatar made of a swarm of particles in a generative virtual world RODRIGO GUERREIRO VAZ GUEDES DE CARVALHO institution: Specs [Synthetic Perceptive, Emotive and Cognitive Systems group] supervisor: Anna Mura under the INOV-ART program (DGA-ARTES - Ministério da Cultura - Portugal) || || DANCING WITH SWARMING PARTICLES || FIGURE 1 // Photo from the live performance 25-02-2011 UPF ABSTRACT In which the particles morph into the avatar’s body, DANCING WITH SWARMING PARTICLES is an interactive installation and performace that intends to explore the relationship between a physical user/performer and a virtual performer the “avatar” which has the physical characteristics of morphing flocking particles. The installation’s interactive environment is a media space that includes a physical space and a virtual space. The virtual space is initially composed of floating data which, through the interaction with the physical user/ performer, will become organized structures and take the shape of complex landscapes. The avatar’s body is composed by flocking particles that initially float in the virtual space without any apparent order. It is through the energy of the physical user/performer’s movements that the particles will start to morph into the avatar’s body. The ultimate form of the avatar and of the virtual and physical spaces, will result from the data generated by the user actions/performance and will be represented by the graphic visualisation of this interaction. In this way each interaction/performance will have a unique outcome. || RODRIGO CARVALHO | SPECS - UPF | INOVART 2 || || DANCING WITH SWARMING PARTICLES || INDEX INTRODUCTION/CONCEPT pag. 04 AVATAR “ 05 THE FLOCKING “ 06 THE SPACE “ 09 INTERACTION “ 10 NARRATIVE “ 11 STORYBOARD “ 13 TECHNICAL DESCRIPTION system scheme how it works installation setup “ “ “ 15 16 18 PERFORMANCE “ 19 ANNEX [state of the art references] [additional work in Specs] [credits] “ “ “ 24 28 29 || RODRIGO CARVALHO | SPECS - UPF | INOVART 3 || || DANCING WITH SWARMING PARTICLES || INTRODUCTION / CONCEPT DANCING WITH SWARMING PARTICLES is and interactive installation, that intends to explore the interaction between a physical performer/user and a virtual performer or avatar in a mixed media space. It intends to show and mix two similar parallel words (the real and the virtual) in order to create a mixed media space. The user/performer must explore and discover the space and create a relation with his/her avatar. The physical and the virtual are not overlapping, instead they are distinct but continuous. The border between the two environments is the projection screen that acts like a dynamic all seeing bi-directional eye. This installation is an experiment in interactive narrative and explores the potential of virtual reality and augmented feedback technologies as tools for artistic expression. The space and the avatar will evolve rebuilding and mutate themselves depending on the user’s behaviour. The tracking data from the physical performer movements is used as a parameter in the generation of the virtual world content. In this way each performance will generate a different scenario, a different avatar, …. The final form of the avatar, and the scenery will be the result of the data generated by the performer interaction, that is what makes each performance unique. || RODRIGO CARVALHO | SPECS - UPF | INOVART 4 || || DANCING WITH SWARMING PARTICLES || AVATAR The Avatar’s body is composed by a cloud/swarm of particles. This particle system has a flocking behaviour attached to it and its behaviour is controlled by a learning system. A tracking systems follows the body movements thus grabbing the position points of the physical performer’s skeleton (see Figure 2) . Through the physical performer, the single particles of the avatar(s), which are pure data forms, will start to morph into a system(s) that learns and behave but that can also adapt to dramatic disruptive changes induced by the environment, that is the physical performer behaviour….. Each group of particles have rules to “fly” together and a gravitational centre that attracts them. The position points form the skeleton will define these gravitational centres. This way the particles will be attracted to them and form the avatar body. FIGURE 2 // Skeleton tracking points, and particles being attracted to this points to from the avatar body || RODRIGO CARVALHO | SPECS - UPF | INOVART 5 || || DANCING WITH SWARMING PARTICLES || THE FLOCKING The flocking is formed by a group of 22 small groups of particles. Each group is composed by around 20 – 40 particles that fly around a gravitational & target center. These centers are connected with the joints of the human skeleton to form a humanoid figure. The flocking system is based on Craig Reynolds Boids, the artificial intelligent program which simulates the flocking behaviour of birds. “Boids” refers to “bird like object”. Craig Reynolds work was presented in a paper in 1987 in ACM SIGGRAPH conference. The boids are individual agents that have attached a set of rules: - separation (steer to avoid crowding) (see Figure 4); - alignment (steer towards the average heading of other boids) (see Figure 5); - cohesion (steer to move to the center of the mass of the group) (see Figure 6); FIGURE 3 // steer angle FIGURE 4 // alignment || RODRIGO CARVALHO | SPECS - UPF | INOVART FIGURE 5 // cohesion FIGURE 6// separation 6 || || DANCING WITH SWARMING PARTICLES || FIGURE 7 // Snap shoot from the original Craign Reinolds´s boids FIGURE 8 // Snap shoot from the original Craign Reinolds´s boids As individual agents, the Boids work as cellular automata, they act autonomously and in reference to what surrounds them. So , just as in John Conway´s Game of Life, each cell/individual will act in reference to his neighbours, The behaviour of each individual is based on a set of rules that makes reference his group. Apart from the rules attached to each Boid, other rules are added to the flocking system. Each group of Boids have a target assigned. So, the all group will seek and float around a target point. These target points are the skeleton joints of the physical user. The tracking of the skeleton is achieved using the “Kinect” camera and OpenNi application. FIGURE 9 Xbox Kinect camera Kinect (see Figure 9) is a peripheral sensor device, made originally for XBOX games, that allows a cheap computer vision tracking system in 3-Dimensions. It is composed by an infra-red light, and infra-red camera and a RGB camera. The combination of the RGB camera image and the infra-red provides the depth information of each point that allows the reconstruction of the 3dscene. Apart from the 3d motion capture the NITE (www.openni.org) software allows the skeleton tracking. * Reynolds, Craig (1987), “Flocks, herds and schools: A distributed behavioral model.”, SIGGRAPH ‘87: Proceedings of the 14th annual conference on Computer graphics and interactive techniques (Association for Computing Machinery): 25–34, doi:10.1145/37401.37406, ISBN 0-89791-227-6 http://www.red3d.com/cwr/boids/ http://www.vergenet.net/~conrad/boids/pseudocode.html UNITY FLOCKING CODE http://www.unifycommunity.com/wiki/index.php?title=Flocking JOHN CONWAY´S GAME OF LIFE http://en.wikipedia.org/wiki/Conway%27s_Game_of_Life Openni [industry-led, not-for-profit organization formed to certify and promote the compatibility and interoperability of Natural Interaction devices, applications and middleware.] www.openni.org || RODRIGO CARVALHO | SPECS - UPF | INOVART 7 || || DANCING WITH SWARMING PARTICLES || FIGURE 10 - 18 // Screen captures from the swarming particles in different phases || RODRIGO CARVALHO | SPECS - UPF | INOVART 8 || || DANCING WITH SWARMING PARTICLES || THE SPACE The aesthetics of the scenery is inspired by futuristic visions and science fiction from the past i.e. movies like “Tron” (1982) or “THX 1138” (1971). In the virtual world, the white void reinforces the sensation of a parallel universe that share some similarities with the real world, but where the laws of physics and logic don’t function exactly in the same way. FIGURE 19 // Screen captures from the scenery FIGURE 20 // Screen captures from the scenery || RODRIGO CARVALHO | SPECS - UPF | INOVART FIGURE 21 // Screen captures from the scenery 9 || || DANCING WITH SWARMING PARTICLES || THE INTERACTION As said before the Kinect camera his used to track the performer body skeleton. The Kinect is able to track the skeleton in a 3,5x3,5m area. So the performance is reduced to this tracking area. The skeleton tracking algorithm needs a calibration pose from the user for 5 seconds in a way it can understands the bodyform and identify the bodypoints. This pose, it’s a “hands on the air” pose, frontal and straight position, with the hands on the air. The pose had to be integrated in the performance dance. (see Figure 22 & 23). FIGURE 22 & 23 // Integration of the “Calibration Pose” in the dance performance After the body is detected and the skeleton tracking has started the physical user/performer must explore the physical space and its interactivity to identify the features of virtual space. He/she will find in the physical world some elements (5 spotlights in this installation) that he/she must activate in order to trigger events in the virtual world. Each time the user activates these 4 elements, a new level of complexity is reached in the virtual world, and more particles morph together to give form to a complete avatar. (see Figure 24). FIGURE 24 // Dancer clicking in the spotlight botton to activate it || RODRIGO CARVALHO | SPECS - UPF | INOVART 10 || || DANCING WITH SWARMING PARTICLES || NARRATIVE The user/performer must explore and discover the space and create a relation with his/her avatar. The narrative is based in a “creation loop”, a creation of life and destruction to create again and again and again. This life cycle of the virtual space evolves around the performer interaction with the 5 elements (the spotlights that he/she must trigger) which are part of the physical world (stage and dance choreography). The performer should discover and collect and full fill the meaning of these four elements to close the “creation loop”, so the virtual world is destroyed and the cycle starts again. This life loop is disclosed in two different ways: -The physical performer interaction with the physical space, the stage and the movements, and the creation of the virtual world; -The creation of the virtual performer, the Avatar. The scenery of the virtual world is a white void waiting to be filled with data from the physical performer interaction. The characteristics of the landscape are going to be generated dynamically with random parameters and inputs from the performer behaviour. || RODRIGO CARVALHO | SPECS - UPF | INOVART 11 || || DANCING WITH SWARMING PARTICLES || NARRATIVE The physical performer must first explore and discover the physical space and though the activation of the 4 elements he/she will activate the virtual world. With the energy released by his/her movements, the particles that inhabit the virtual world will be following the performer and thus will learn his/her movement. Through this process the avatar starts to gain form. The performer is in a “creation” process. While he/she discovers the space and activates new elements the avatar accumulates more data and knowledge. Step by step the avatar body is formed. Particles are flying all around and moving nervously submitted to different and opposite forces. On the one hand the particles have their natural flocking flying behaviours, but on the other hand there forces that attract them to form the avatar body. When the physical performer has just activated all the four performative elements, and all the trees are generated, the creation phase is completed. The world is created and the avatar is completely formed. Now the world is full of data, the world is entering again in a chaos mode and will start to collapse.The lifecycle of the world is reaching the end. Strange gravitational forces are pulling the particles away and devastating the virtual world. The avatar particles fall apart and the world is destroyed. || RODRIGO CARVALHO | SPECS - UPF | INOVART 12 || || DANCING WITH SWARMING PARTICLES || STORYBOARD A) -The world is empy; -The virtual camera is floating around. B) LEVEL 0 -The User is tracked, the virtual camera changes and points to the interaction area; -The particles and dancer move around without any apparent order. C) LEVEL 1 -The dancer aproaches the first spotlight, and activates it; -A group of partciles are attached to the dancer´s body; -Dancer moves around and starts to understand that this group of particles are following him; D) LEVEL 2, 3 & 4 -Dancer goes for the next spotlights; - As the spotlights are activated more particles are being attached to the body; - Now its possible to move the arms and legs and feel the feedback from the particles; -The body is starting to form. || RODRIGO CARVALHO | SPECS - UPF | INOVART 13 || || DANCING WITH SWARMING PARTICLES || STORYBOARD E) LEVEL 5 - All point lights are activated; - The body is completly formed; - Dancer and avatar are dancing together; - Layers of sound are being added to the athmosferic sound. F) LEVEL 6 - CHAOS - The world enters in the caos mode; - Everything is out of control; - Particles explode; - The dancer moves and tries to get back the control of the particles. tries to activate again the spotligths, but they are not working anymore; -The sound is caotic, huge amount of noise and out of sync samples. G) LEVEL 5 - Dancer falls on the floor; - Swarming particles fly awaY; - The virtual camera zooms out; - Fade out to black. F) END || RODRIGO CARVALHO | SPECS - UPF | INOVART 14 || || DANCING WITH SWARMING PARTICLES || TECHNICAL DESCRIPTION System scheme FIGURE 25 // Architecture of the system || RODRIGO CARVALHO | SPECS - UPF | INOVART 15 || || DANCING WITH SWARMING PARTICLES || TECHNICAL DESCRIPTION How it works 1// INSTALLING THE KINECT To work with the Kinect camera, first you need to install the drivers, and the apllication that does the skeleton tracking (NITE) A) download the OpenNI binaries from http://www.openni.org/?q=node/2 (in this case: OpenNI 1.0 Alpha build 23 binaries for Win32); B) download the NITE SDK from http://www.primesense.com/?p=515 (in this case: NITE 1.3 Beta build 17 SDK for Windows); C) download SensorKinect from https://github.com/avin2/SensorKinect; D) install OpenNI; E) install NITE SDK and use the following free license key frop openni.org: 0KOIk2JeIBYClPWVnMoRKn5cdY4=; F) unzip the SensorKinect file; G) connect the Kinect device; H) open the device manager (Start > Run... > devmgmt.msc) and verify that ‘Xbox NUI Motor’ is in the list (but with an exclamation mark); I) Right-click on the device and choose ‘Update Driver’ and make windows look for a driver in the avin2-SensorKinect-b7cd39d\Platform\Win32\Driver folder. This will install a device called ‘Kinect Motor’.; J) reboot your computer when asked; K) After rebooting, two new devices will be found. Repeat the same process by pointing the wizard to the driver folder. One of the two new devices will fail to install (the one for the audio), the one that will succeed will add a new device called ‘Kinect Camera’; L) install the executable the zip file in the folder avin2-SensorKinect-b7cd39d\Bin; M) run C:\Program Files\OpenNI\Samples\Bin\Release\NiUserTracker.exe to test if everything works; N) if it fails, run C:\Program Files\OpenNI\Tools\vcredist_x86.exe; O) install the OSCELETON (https://github.com/Sensebloom/OSCeleton). This application sends the sckeleton information by OSC to any software with OSC receiver. * This drivers are from January 2011, it’s recommended to check for updates in the referred links || RODRIGO CARVALHO | SPECS - UPF | INOVART 16 || || DANCING WITH SWARMING PARTICLES || 2 // STARTING THE APPLICATION After the installation of the drivers we can now start our application: A) Plug in the kinect camera with the computer; B) start the application OSCELETON. (this will be running in the background. Reading the skeleton tracking and sending the info by OSC); C) start the application “Dancing with Swarming Particles” 3// INTERACTION WITH THE APPLICATION The application is divided in different levels. Starting from –1 till 6. A) Level –1 ,the beginning of the application. Virtual cameras are floating around the scenery. In this point the performer can enter in the interaction space, he will be detected by the camera, but his skeleton is not detected yet. He must do the “calibration pose” for 5 seconds to start the detection; B) Level 0,skeleton detection. When the detection is activated the space virtual camera turns off, another virtual camera located in the interaction area starts. We are now ready to perform and dance with our avatar; C) From level 1 to 5, the avatar will be sequentially created. In the first level, only a few particles are following the dancer, and in level 5 the particles have completely formed the dancer. To pass throw the levels an human operator must click in the keyboard in the keys “1”, “2”, “3”, “4” and “5”. The moment that he must click this keys, is the exact moment that the performer in the stage clicks in the spotlights; D) After some while in the level 5, the human operator must decide when is the moment to go to the next level, the chaos level (where the particles explode and the dancer loses control of his avatar). This decision is in the hands of the human operator in a way he can surprise the dancer and the explosion and chaos become more realistic. So the human operator must click in the key “6”. E) The chaos level, (level 6) is divided in different sub levels : 1 (the explosion), 2 (lost of control), 3 (second explosion), 4 (particles return to their original flocking group, and fly around), 5 (camera changes, to fly virtual camera, and zooms out). Here the user must click in the key “z” to go up in the levels. After the second explosion (sub-level 3 ) the dancer must fall in the floor, while the particles return to their original position (sub-level 4) and the camera starts to fly around and zoom out (sub-level 5). *all the files are in the “Dancing with Swarming Particles” DVD. In the installation of Kinect || RODRIGO CARVALHO | SPECS - UPF | INOVART 17 || || DANCING WITH SWARMING PARTICLES || TECHNICAL DESCRIPTION Installation setup FIGURE 26 // Setup of the installation || RODRIGO CARVALHO | SPECS - UPF | INOVART 18 || || DANCING WITH SWARMING PARTICLES || PERFORMANCE FIGURE 27 & 28 // Photo report from the performance at UPF, 26, 02, 2011 || RODRIGO CARVALHO | SPECS - UPF | INOVART 19 || || DANCING WITH SWARMING PARTICLES || PERFORMANCE FIGURE 29 & 30 // Photo report from the performance at UPF, 26, 02, 2011 || RODRIGO CARVALHO | SPECS - UPF | INOVART 20 || || DANCING WITH SWARMING PARTICLES || PERFORMANCE FIGURE 31 & 32 // After the performance, the audience was invited to try the installation || RODRIGO CARVALHO | SPECS - UPF | INOVART 21 || || DANCING WITH SWARMING PARTICLES || PERFORMANCE FIGURE 33 & 34 // After the performance, the audience was invited to try the installation || RODRIGO CARVALHO | SPECS - UPF | INOVART 22 || || DANCING WITH SWARMING PARTICLES || ANNEX || RODRIGO CARVALHO | SPECS - UPF | INOVART 23 || || DANCING WITH SWARMING PARTICLES || REFERENCES Specs – “Re[per]curso” http://www.iua.upf.edu/repercurso Performance presented in 2007 at the MACBA (Museu d’Art Contemporani de Barcelona) and in 2008 at the Art Futura festival at the Mercat de Les Flores. Also presented as talk in ACM SIGRAPH 2008 conference in Las Vegas. Mura A. et al. re(PER)curso: an interactive mixed reality chronicle. ACM SIGGRAPH 2008 Ole Kristensen – “Body Navegation” http://www.recoil-performance.org/ || RODRIGO CARVALHO | SPECS - UPF | INOVART 24 || || DANCING WITH SWARMING PARTICLES || REFERENCES Memo Akten – “Reincarnation” http://www.vimeo.com/3047446 Adrien Mondot – “Cinematique” http://www.vimeo.com/9782048 || RODRIGO CARVALHO | SPECS - UPF | INOVART 25 || || DANCING WITH SWARMING PARTICLES || REFERENCES Robert Hodgin – “Flocking birds” http://www.vimeo.com/197323 Kyle Macdonald – “Clouds Are Looming” http://www.vimeo.com/9782048 || RODRIGO CARVALHO | SPECS - UPF | INOVART 26 || || DANCING WITH SWARMING PARTICLES || REFERENCES Freider Wess http://www.frieder-weiss.de/works/all/ 1024 architecture – “Euphorie” http://www.1024architecture.net/en/2010/02/euhorie-2/ || RODRIGO CARVALHO | SPECS - UPF | INOVART 27 || || DANCING WITH SWARMING PARTICLES || ADDITIONAL WORK IN SPECS Collaboration in a project on data visualization in a mixed reality enviroment called XIM (the Experience Indiction Machine). “DEALING WITH DATA DELUGE – emboided interaction with complex neuronal data in mixedreality” We built a 3D real-time visualization system to graphically represent the massive connectivity of neuronal network models in the eXperience Induction Machine, an immersive space equipped with a number of sensors and effectors that we constructed to conduct experiments in mixed-reality. Using this infrastructure we developed an embodied interaction framework that allows the user to move freely in the space and navigate through the neuronal system. The project was submitted as technical paper for SIGGRAFF2011 (“Computer Graphics and Interactive Techniques Conference” in Vancouver). We are currently waiting for the results. In this project I worked together mainly with Alberto Betella (PhD Student at Specs). I was in charge of the 3d visualization and Interaction under Unity3d (3d engine) and it implementation in the XMI. For the submission to SIGRAFF2011 I was also in charge for the presentation video, illustrations and photos. || RODRIGO CARVALHO | SPECS - UPF | INOVART 28 || || DANCING WITH SWARMING PARTICLES || CREDITS PROJECT MADE BY Rodrigo Carvalho [[email protected]] INSTITUTION Specs [Synthetic Perceptive, Emotive and Cognitive Systems group] Universidad Pompeu Fabra - Barcelona SUPERVISOR Anna Mura under the INOV-ART program DGA-ARTES - Ministério da Cultura - Portugal Barcelona 2010 - 2011 SPECIAL THANKS FOR HELPING ME TO :: Sytse, Elena, Henrique, Alberto and everyone at Specs. || RODRIGO CARVALHO | SPECS - UPF | INOVART 29