prayash.io

Weightless: Combing Music & Software to Create Art

March 9, 2024

For years, I've dreamed of not just making songs, but also creating custom software visualizers for them—so I'm beyond excited to share Weightless, a project that finally brings both of these passions together in one place. It's a blend of acoustic and electronic music, real-time computer graphics, and videography. This work as a whole—song, interactive visualizer, and music video—embodies what kind of artist I want to be. It's an amalgamation of things I love the most, all served in a single package. In my Origins blog post, I've talked about how the holy trinity of art, for me, has always been music, visuals and code. This work is a manifestation of that.

Weightless
Screencap
GLSL Shader
Code
Weightless Ableton
Details


Music Composition

I wanted this track to fuse delicate acoustic guitar lines with an energetic electronic drop—something that feels both vast and intimate. I started by experimenting with my guitar in an altered tuning (D A D F# A E), which is a Dadd9 (D Major add 9) chord when all the strings are strummed in an open fashion. What I really love about altered tunings is that they can make the guitar sound massive, especially when playing open chords. In the key of A major, a Dadd9 chord becomes the IV chord (with the 9 as an extension). From there, I built a couple chord progressions starting with: I -> viii -> IV -> V for the intro / verse bits, then transitioning to IV -> vi -> V -> I for the main chorus parts. There are some other variations in there to help transition the different parts. You can hear the guitar parts combined with harmonics and some backing chords in this snippet (which builds on the IV -> vi -> V -> I structure). I really love how it turned out.

For me, the music making process centers heavily around chords and melody a lot more than timbre or rhythm, so it was only natural to employ another instruments during this phase.

Piano and violin are my go-to's, although it takes me a lot of takes to get them recorded properly. I have bad muscle memory when it comes to these instruments, but they help me break out of a mental box.

Weightless
Guitar
Weightless
Violin
Weightless
Piano


Sound Design & Production

I've been using Ableton Live since 2011, so it's my go-to DAW for all things audio. I leaned heavily on synth basslines—particularly experimenting with the Korg Minilogue in monophonic mode.

Korg Minilogue
Weightless DAW
2

I also sampled everyday sounds (like wind chimes, highway ambience, and even a little music box snippet) and ran them through my OP-1 to re-play them in a mangled manner. I wanted to focus on the atmospheric elements a lot so I was kind of embracing whatever sonic artifacts were awaited me while capturing these field recordings. These sounds can become super textural in the context of music, helping impart that organic feel that's quite pleasing.

Zoom H4N Recording
Weightless OP1 Top Down
Ableton Sampling

The drop was a big focus; I wanted it to be heavy and danceable, yet tinged with just enough lo-fi grit to keep it human. I struggled a ton with the lead melody that comes in during that, toiling for weeks trying out different ideas. It turns out, it was in front of me the whole time. The guitar snippet I shared above is what completed the puzzle for me.

Weightless Session
Overview
Weightless Ableton
Session

The sessions got pretty big and unwieldy. It's the most layered thing I've worked on. To be quite honest, I feel that I overcooked this song into oblivion. It took me years of chipping away and over that course of time I went through many versions of throwing so many sounds at it in desperate attempts to revive the initial spark I felt when making it. There's something to be said for moving fast when inspiration strikes. I wish I had fleshed all my ideas out during the initial session to 80% so that I wouldn't overthink it and judge it so much later on. I overthought everything, the mix, the lead melody lines, the structure. It was an immense mental struggle to overcome. The most valuable thing I learned is to just not doubt yourself when you are blissed out by an idea and to follow through with it while you're in that 'honeymoon phase' with a 16 bar loop.

Making songs can be a deeply personal experience. I went through some very emotional moments when writing this song, and so much of it felt like personal breakthrough. It's no chart topper by any means. There's maybe, I dunno, a few hundred people that have ever heard it and perhaps felt something, and that still feels like a success in my mind.

Visualizer


Weightless Screencap
2
Weightless GLSL

3D graphics and software is so fascinating that to me, it feels like an extension the music I'm making. The real-time visualizer is my attempt at conjuring up a visual representation of how the song itself makes me feel. The world of software is such an ocean of possibilities, with so many avenues for exploration, and this is just one facet. I've been inspired by many creative coders and generative artists, so this felt like the perfect outlet for that sorta thing.

In terms of 3D assets, I modeled the low-poly mountain landscape in Blender. I used Meta's PIFuHD model to convert a picture of myself into a 3D mesh, and used Genie by Luma AI (text-to-3D app) to generate a model of an acoustic guitar. I combined these into a gLTF model within Blender. None of these needed to be a polished high resolution model as the scene a foggy silhouette anyways. So it worked out well for my use case. It would be a very time consuming process to model these things by hand, so I'm thankful that we have free AI tools out there that can make this process much more accessible.

Blender Shot

With the assets in place, I was able to spin up a barebones React app and drop in three.js via R3F. I could then import these models, set up a scene with camera and lighting and had a decent canvas to start with. I love writing custom code that reacts to music in real time, so this visualizer was a perfect playground to experiment with lots of interesting concepts like different types of attractors, flocking patterns, post processing effects and to be quite honest, I was hooking up the FFT analysis to everything on-screen just to see how it looks when everything is parameterized. I used a mix of GLSL shaders and three.js' imperative API within my app's draw loop to use incoming FFT to drive various visual parameters.

Weightless DAW
2 Silhouette

After I had an overwhelming amount of things on screen, I decided to keyframe all of these elements and manually handpicked specific values for each section of the song. As the song moves along, different elements change their appearance to reflect the mood and energy at any given moment. This is one of the most time consuming parts, because you're playing the role of a curator, deciding on the art direction of the whole experience as it moves along.

Video

To bring it all home, I put together a music video that merges performance footage and B-roll with imagery from the visualizer. With the help of my lovely wife Pallavi, we filmed some videos at our apartment and also by Devil's Bunker in Pacifica, CA.

Weightless
Pacifica

In the end, Weightless is a just a song about a feeling. I hope it makes you dance, maybe cry, and most of all, feel a little lighter. Let's be real, art is never finished and only abandoned (thanks da Vinci). I could spend many more hours tweaking the code and playing around with ideas, but it feels good enough to stop here. I spent many late nights alone at my computer, drafting ideas, struggling with the math to make the visualizer look a certain way, or for it even to function at all. Many hours into filming and editing the video, and more hours than I care to admit trying to finish just the song itself. Making art is such a battle sometimes that it feels insurmountable, but pushing through it is worth it. I'm just stoked to share this little bundle of code along with a song that is dear to me, so you can really feel it as a singular piece of art. I'm just proud that I was able to ship this.

You can check out the music video on YouTube. The song is also available on Spotify and Apple Music.


Prayash Thapa

Hello! Thank you so much for visiting my blog. I hope you enjoyed your time here. Let's also connect on Instagram or Twitter.