
[{"content":"Hi, and welcome to my website!\nMy name is Carlos and I create generative art, working at the intersection of code, visuals, and music. I was trained as a software engineer and specialized in computer graphics, but my work has always been driven by a deeper interest in digital art, animation, and game development.\nI had the opportunity to teach at my university right after completing my master’s degree. My thesis explored the relationship between music and procedural animation, and you can find more information about it here.\nI also perform as a VJ, accompanying live music acts. Using TouchDesigner, I\u0026rsquo;ve been developing a custom real-time system for producing generative visuals that respond directly to sound and performance. I’m particularly drawn to fluid-like simulations, audio-reactive particles, deformations, and organic forms emerging from systems such as reaction-diffusion simulations. Simple rules leading to endlessly complex behaviors have always fascinated me.\nSome examples of my work and performances are available on my instagram page.\nOutside of work, I’m passionate about listening to and playing music, reading, art, and mindfulness.\nYou can download my CV here .\n","date":"18 May 2026","externalUrl":null,"permalink":"/about/","section":"Digital Divergence","summary":"","title":"About","type":"page"},{"content":"","date":"18 May 2026","externalUrl":null,"permalink":"/","section":"Digital Divergence","summary":"","title":"Digital Divergence","type":"page"},{"content":"\rA Moden Take on Visual Music\r#\rA short composition that marks first experiment in authoring both music and visuals. The result is a playful animation where every musical element has its visual counterpart.\nThe piece draws inspiration from Norman McLaren and Oskar Fischinger’s pioneering work in visual music. Fortunately, we no longer need to draw frame-by-frame on microfilm or suspend hundreds of cardboard cutouts to achieve similar effects!\nUsing TouchDesigner alongside Ableton, the visuals respond in real-time to the music. Each moving square corresponds to a musical note, while other aspects such as the size of the bass rectangle and the fading opacity of percussion elements are driven by the dynamics of their respective tracks.\nVisual elements were designed with their corresponding sounds in mind: percussion is shown as ample, but remains sparse, while notes are expressed through movement within a grid. The design of the visual space also influenced the composition. For example, since each graphical element is fairly large and excessive movement can tire the eye, the number of different instruments was kept small. I also used a 2D grid for the notes, which I found worked best if I limited myself to nine notes (3x3) on both the bass and the harmony sections.\n","date":"16 April 2026","externalUrl":null,"permalink":"/entries/boop/","section":"Entries","summary":"","title":"boop²","type":"entries"},{"content":"","date":"16 April 2026","externalUrl":null,"permalink":"/entries/","section":"Entries","summary":"","title":"Entries","type":"entries"},{"content":"\rFrame reconstruction through simple geometry\r#\rAn audiovisual piece exploring iterative approximation as a form of self-portraiture, inspired by Buddhist concepts of impermanence and non-self, particularly the notion of kalāpas, transient, composite units of phenomena, reflected here in the construction of images from simple geometric primitives.\nYour browser cannot play this video. Download video.\nThe work uses a Python-based greedy optimization process to approximate each video frame. For each target frame, the algorithm iteratively adds white rectangles with randomized position, scale, and opacity, evaluating each candidate by its reduction in mean squared error (MSE) against the target image.\nAt each iteration, the shape that produces the greatest improvement is selected, gradually building up a coarse reconstruction of the frame through accumulated primitives. The video is exactly that progression.\nThe final project was was rendered in TouchDesigner and linked to Ableton Live, allowing synthesizer parameters to be modulated directly by the progression of reconstruction error. As the image converges, the audio translates visual mismatch into a gritty evolving sonic texture.\nMade for the GENUARY 2026.\n","date":"25 January 2026","externalUrl":null,"permalink":"/entries/self-portrait/","section":"Entries","summary":"","title":"self-portrait","type":"entries"},{"content":"\rfor marimba • theremin​​​​​​​\r#\rA short audiovisual piece that combines bauhaus aesthetics, ortographic projection and playful musical notes.\nCreated with TouchDesigner and Ableton Live.\nMade for the GENUARY 2026.\n","date":"16 January 2026","externalUrl":null,"permalink":"/entries/study-21/","section":"Entries","summary":"","title":"study 21","type":"entries"},{"content":"\rA Projection Mapping System for Stone Architecture\r#\rS.A. Bar Galeria | Ponte de Lima | Portugal\r#\rOver three collaborative musical performances at S.A. Bar Galeria, I developed and iterated on a controllable generative visual system, exploring new techniques and combinations with each edition, in particular projection mapping on the space itself.\nThe stage and dancefloor at S.A. Bar Galeria are framed by a traditional rustic stone wall with highly visible individual elements. Rather than treating the wall as a neutral projection surface, my goal was to bring it to life, using light and motion to emphasize depth and rhythm, aiming for an augmented spatial experience that blured the boundary between the physical space and projected images.\nThe stone wall was 3D scanned using Polycam, generating a detailed mesh of the surface geometry.\nYour browser cannot play this video. Download video.\nDuring the performance\u0026rsquo;s setup, this model was aligned in TouchDesigner using CamSchnappr.\nHaving this new layer, unlocked interesting interactions with the existing generative system, for instance, keeping the architectural mesh continuously present and introducing effects in a subtractive manner, allowing form to emerge through shadow.\nFor the third performance, the system was extended to enable individual control of each stone. The wall’s UV map was remapped into a grayscale-coded representation, in which each stone occupies a unique luminance value, effectively turning the physical surface into a set of addressable elements.\nUsing a histogram-based technique, arbitrary images or generative patterns could then be used to drive the activation of individual stones, allowing complex spatial animations to emerge from arbitrary source imagery.\nYour browser cannot play this video. Download video.\nYour browser cannot play this video. Download video.\nThis approach is applicable to structures with similar topologies and can be adapted to architectural façades, ruins, and historical sites. The system can also be extended with cameras or other sensors to introduce interactivity, enabling architectural elements to respond directly to the audience and their movement.\n","date":"5 November 2025","externalUrl":null,"permalink":"/entries/bright-stones/","section":"Entries","summary":"","title":"bright stones","type":"entries"},{"content":"\rA Projection Mapping System Driven by Performer Motion\r#\rThis project explores projection mapping as a way to extend a live acrobatics performance, allowing the performer’s motion to generate light that remains spatially aligned with the body in real time.\nThe core intention was to create a light-tracking effect in which the performer’s shape and motion are captured and re-projected onto the body, producing a tight coupling between physical movement and projected imagery.\nTo achieve accurate alignment, the system requires estimating the relative pose between the depth camera and the projector, as well as the projector’s intrinsic parameters. A calibration procedure was implemented using Python and OpenCV. It involves projecting a known pattern into the scene at multiple depths and capturing the result with the camera. From the point correspondences between the projected and captured images, the camera’s position and orientation relative to the projector are reconstructed, allowing a projection matrix to be computed that aligns camera space with projected space.\nBuilding on this alignment, a trail effect was implemented in which a sequence of past depth captures is projected simultaneously. This creates a set of moving sillouetes that complemented the performance by allowing the audience to look simultaneously at present and past motion.\nFuture development will focus on collaborations with dance and theatre, using this system as a foundation for more narrative-driven live performances.\nThe spatial alignment and tracking system developed here also became the foundation for sandbox, an interactive installation exploring participant-driven interaction with projected particles.\n","date":"11 May 2025","externalUrl":null,"permalink":"/entries/augmented-acrobatics/","section":"Entries","summary":"","title":"augmented acrobatics","type":"entries"},{"content":"\rAn Interactive Light Installation for Contemplative Play\r#\rsandbox is an immersive augmented reality installation that invites participants to enter a playful slice of projected light. A depth camera captures each participant’s shape and movement, allowing them to interact with flowing grains of virtual sand.\nIn its original configuration, the particles move along a circular flow, inspired by the Ensō, a Japanese Zen symbol associated with mindfulness, presence, and the act of being rather than arriving.\nYour browser cannot play this video. Download video.\nThe installation was conceived with no concrete goal and no correct way to engage. Instead, it offers an open-ended environment for contemplative play, encouraging participants to reconnect with their bodies and the present moment, and to experience awareness through movement and visual feedback, rather than intention.\nsandbox was developed alongside Augmented Acrobatics, adapting the same camera–projector alignment system for audience-driven interaction.\n","date":"11 May 2025","externalUrl":null,"permalink":"/entries/sandbox/","section":"Entries","summary":"","title":"sandbox","type":"entries"},{"content":"\rTowards Music-Driven Procedural Animation\r#\rThe main video result of my master\u0026rsquo;s thesis, where I investigated audio-visual complementarity and developed an integratetd 3D environment that allowed me to use musical and audio information to direct a procedural animation of a growing tree in the wind.\nThe thesis was condensed into a paper that can be found here.\n","date":"16 November 2019","externalUrl":null,"permalink":"/entries/dancing-trees/","section":"Entries","summary":"","title":"Towards Music-Driven Procedural Animation","type":"entries"},{"content":"","externalUrl":null,"permalink":"/authors/","section":"Authors","summary":"","title":"Authors","type":"authors"},{"content":"","externalUrl":null,"permalink":"/categories/","section":"Categories","summary":"","title":"Categories","type":"categories"},{"content":"","externalUrl":null,"permalink":"/series/","section":"Series","summary":"","title":"Series","type":"series"},{"content":"","externalUrl":null,"permalink":"/tags/","section":"Tags","summary":"","title":"Tags","type":"tags"}]