Interactive 3d experiences in real-time!

This interactive up here is my first render using WebGL canvas:
a 3d landscape with some interactive features like dragging, camera movement on button click and post-processing glitch.
Coded in Three.js.

My developer tools include so far Three.js, d3, CSS, jQuery, HTML5. 
And here below is my lab with experiments and projects! Enjoy.



An interactive music maker, built in three.js.
The user has the power to create melodies and enhanced looping visuals, just by mouse movements and clicks.
Deeply hidden in our brain, at the tiniest scale, our third eye resonates with the higher dimensions of existence. It’s our gateway to the Cosmos.
Music and repetition enables us to focus on this state of being, and the MANDALA of our mind is drawn: in looping, endless and ever-changing shapes.
Connecting mathematics, social sciences and consciousness studies, this game lets you meditate and resonate with the eye of your mind!

Online at

For desktop, tablet and smartphones.
Created by Marco Bagni - Audio Sarc:o

Mosaico Stellare


A Three.js experiment, fetching images from the Cassini NASA archive and displaying a spacey interactive environment. Images are clustered and infobox panels are being developed now.
It also features a colorful stop-motion like animation.

Finding Knowing Delight


Sarc:o new music album has a strong concept, and the process of discovery is the basis of this piece. 
The full project consists of: album cover, animated trailer, and interactive website.

Body Builder


This is a prototype of a custom 3d builder in real-time for browser.
Body Builder shows the person from a unique and interactive point of view.
For now funcionalities are just "on/off" for each layer; coming soon will be a more sophisticated and customizable experience. 



Hi-Knowledge is a web portal dedicated to scientific data visualisation.
The idea is to offer an interactive navigation between several “nodes” of information, visualizing hierarchies and data in an engaging and interactive way.


New Berliners Names


This beta version shows a map of all the names given to newborn berliners in the years 2012-2016, divided by district. It does not represent actual births, because sometimes one child can have more than one name.

Idea and Development: Marco Bagni + Max Zimmermann


Beta version online at

WebGL 2d Surfaces


Experimenting with tools to create interactive WebGL Canvas.
This is a collection of 2d prototypes that respond to mouse interactions, built with a modular javascript-node-based software called Cables.
More coming soon!


Finally interactive


Moving from motion to interactive... landing page.