Archive for the ‘Visual Art’ Category

tldr; I did lots of steps and connected lots of pipes together to control audio and visuals in real time with a MIDI controller + Ableton + Unity + MIDI-OX (this was the secret sauce)

Intro

(FYI: This is a really really long explanation of my process with no code and no links to download it. Its mostly a record for myself, but maybe there is something here that will help you!)

I’ve been doing Houdini tutorials and was inspired by complex shapes I could make through combining simple functions like Subdivision, Taper, Twist & Copy To Points.

2021-03-28 – Clawed Ball, Houdini

From this, I wanted to manipulate the object in real time with a MIDI controller and decided to re-create the Houdini functions in Unity. The tweet below is the result:

There are 2 things I’d like to talk about here:

  1. Tendril Ball – The visuals
  2. MIDI Control – Using a MIDI controller to manipulate Ableton Live (audio) & Unity (visual) simultaneously

Tendril Ball

It’s a ball made of tendrils, hence the name.

First, I started by creating a mesh of a cube.
I used this site: http://ilkinulas.github.io/development/unity/2016/04/30/cube-mesh-in-unity3d.html

Then I added a parameter to add subdivisions to the cube along the Y-Axis.

Cube mesh with subdivisions.

Then I added a Twist parameter. Each “layer” starting from the bottom is rotated clockwise.

Next, I added a Taper parameter. Each “layer” starting from the bottom get smaller until the size is 0 at the top.

I now have a single “tendril”.

Tendril: Twisted and tapered.

Then I needed to find a sphere without too many vertices on it. I ended up using a “cube sphere” from https://catlikecoding.com/unity/tutorials/cube-sphere/ with a Grid Size of 2. This resulted in a sphere with 26 vertices.

Emulating Houdini’s Copy to Points node, I instantiated one tendril per vertex on the sphere, resulting in the Tendril Ball below.

Tendril ball: Copy to points

I then exposed 3 parameters:

  1. Distance
  2. Length
  3. Twist Amount

MIDI Control

For many years now I’ve been trying to find a good solution to send MIDI from a controller to Ableton Live and Unity simultaneously. Finally I found the missing piece of the puzzle and I have actually been on their website multiple times without realising the answer was always there! This is probably the main reason I wanted to write this blog post.

The answer is MIDI-OX (http://www.midiox.com/). It lets me take a signal from my MIDI controller (Behringer X-Touch Mini) and split/send it to 2 virtual MIDI ports. I am on Windows 10 and I use loopBe30 for virtual MIDI ports.

MIDI-OX

In Ableton, I receive MIDI input from the virtual port “01. Internal MIDI”. I loaded a Wavetable synth and mapped the macros to the first 3 knobs on the X-Touch Mini.

In Unity, I receive MIDI input from the virtual port “02. Internal MIDI”. I used Minis by keijiro (https://twitter.com/_kzr) to receive MIDI input. I map they first 3 knobs on the X-Touch Mini to control the 3 values on my Tendril Ball (Distance, Length & Twist Amount).

Behringer X-TOUCH MINI Midi Controller: Amazon.co.uk: Musical Instruments
Behringer X-Touch Mini

And thats it!

Sorry, not sharing any code because this is part of long ongoing project of mine and this is just one small piece of a much larger execution. I don’t really expect anyone to read all this anyway!

The next problem to solve is using the Push 2. The knobs are endless/relative encoders. Turning a knob doesn’t send a value from 0-127. Instead it sends a value saying whether it increased (< 0.5) or decreased (>0.5). I need to do more research into 2’s Compliment). When I turn the knob in one movement, Unity (Minis) is only receiving one event even though I can see many events being triggered in MIDI-OX and in the Unity Input Debugger. So if I turn a knob from 0 to max in one go, in Unity its only incrementing the value by a small amount.

On Friday the 26th of June 2015, a collaborative VR artwork between Vaughan O’Connor and myself was exhibited at the MCA. The 2 artworks, a holographic print and a Virtual Reality (VR) experience were both based on 3D scans of quartzite rocks from Oberon, NSW.

The artworks were on display at the Museum of Contemporary Art (MCA) ARTBAR – Futures, curated by Dara Gill. Facebook event link here.

I created the VR component of the artwork based on the scans that Vaughan supplied.

Inspiration

Inspiration came from lyrics to a song by Covenant called Bullet.

“As the water grinds the stone,
we rise and fall.
As our ashes turn to dust,
we shine like stars.”

Idea

The idea behind the artwork is that it is a place outside of time. Here, concepts such as gravity, space and time do not behave as you would expect. Tempus Incognito. The events that occur here, in the event horizon, cannot affect an outside observer. The 4 classical elements, fire, air, water and earth are present in this place, reflecting the essential building blocks for all things. Even though we are outside of time, matter still exists albeit in a rather astonishing manner.

Technology

The Quartzite VR artwork was created using Unity (a game engine) and experienced via the Oculus Rift DK2 (a virtual reality headset). The ambient soundscape was composed in Ableton Live and is binaural.

Photos
MCA ARTBAR 'Futures' 01MCA ARTBAR 'Futures' 11MCA ARTBAR 'Futures' 02MCA ARTBAR 'Futures' 03MCA ARTBAR 'Futures' 04MCA ARTBAR 'Futures' 06MCA ARTBAR 'Futures' 05MCA ARTBAR 'Futures' 07MCA ARTBAR 'Futures' 08MCA ARTBAR 'Futures' 09MCA ARTBAR 'Futures' 10

Some photos by @mightandwonder

 

Observations

A few interesting things that happened on the night:

  • one of the computers decided to misbehave (no audio, no projector)
  • someone decided to walk about 2 metres away from the desk. The Oculus is plugged into a computer!
  • 2 people decided to look under the desk
  • a lot of people stood up to experience the artwork rather than sit down in the seats provided
  • People were amazed at the Oculus Rift
  • People found the experience soothing, calming and meditative.
  • Some people wanted to stay in side the artwork forever!
  • People asked a lot of questions about the technical aspects of the artwork
More

Futures also featured performances, lectures and music by: Vaughan O’Connor & Ben X TanMichaela GleaveJosh Harle, 110%, Mark Brown, Eddie Sharp & Mark Pesce, Andrew Frost, Claire Finneran & Alex Kiers, Kate MacDonald, Sitting & Smiling, Baden Pailthorpe, Hubert Clarke Jr, Polish Club and Ryan Saez.

Rahrah Bazaar

Posted: December 2, 2013 in 3D, Visual Art

Made this guy today using 123D Creature on iPad. Ordered a 3D printed version of him too. Can’t wait to get it!

2013-12-02 Rahrah Bazaar

Cute Redhead

Posted: September 19, 2013 in Pen, Visual Art
Tags: , , , , ,

Black & White
Colour

Image

Inspiration from: http://store.goodfuckingdesignadvice.com/product/don-t-fucking-procrastinate-mug-don-t-fucking-procrastinate-mug

Download the Photoshop file here: benxtan – Don’t Fucking Procrastinate.psd

Which one’s your favourite?

Font downloaded from:

Background images downloaded from:

Cup Face

Posted: November 1, 2011 in Pen, Visual Art

Cup Face - 2011 - Sharpie on paper cup.

Cup Face – 2011 – Sharpie on paper cup.

Mushroom Cup

Posted: November 1, 2011 in Pen, Visual Art

Mushroom Cup - 2011 - Sharpie on paper cup

Mushroom Cup – 2011 – Sharpie on paper cup

(WIP = work in progress)

Copy of Elephantmen #6 cover (WIP) – Heres the reference http://www.comicartfans.com/gallerypiece.asp?piece=594821&gsub=73013

Heres something really quick I made at a Flashback 2011 (http://www.defame.com.au/flashback.php)

Pretty much learnt it there and then thanks to help from the Internet, and Mr. Johnny Jim Jams.

Managed to get first place in the wild compo with KMIDIC (http://pmidic.com) too!
http://www.defame.com.au/voting/

Digital Art – Where design and visual art meets programming

Having all this free time is great. I finally have a chance to explore and play with things that have been sitting in my todo list, collecting (digital) dust.

Today’s topic of interest is digital/generative art and my weapon of choice is Processing. Check out the links below for some truly beautiful works of art.

Artworks:

Tools:

After doing some research, I started playing around with Processing. I began messing around with the built-in examples and started a program that uses the mouse speed to draw circles (speed affects radius) and generate a sine wave (speed affects volume and frequency). I soon tired of this and began the task of getting Processing to talk to Ableton and my Novation Launchpad. The idea is that eventually, I can make an aesthetically pleasing visual display that is controlled by a combination of pre-programmed audio coming from Ableton, and a live performance from me using the Launchpad via MIDI, all working together as one synchronised unit.

Heres a screenshot of a work in progress:

What it does:

  • Launchpad buttons light up when you press them
  • Launchpad buttons light up when pre-programmed drum samples are triggered
  • Processing screen lights up exactly the same as what is on the Launchpad
  • Processing screen shows what the buttons are mapped to (currently hard-coded…but wouldn’t it be awesome if it was automatic?!)

Sounds pretty simple…but it was a bit of a challenge getting all the settings right! I still have some issues to iron out, and hopefully try and simplify the system more.

I’m very keen to check out Open Frameworks and Max for Live as well. Theres a 30% discount on Max for Live that ends in 4 days, and I’m very very tempted to buy it.

Ableton Live, Processing, Max for Live, Launchpad, iPad, Kinect, Open Frameworks…all wonderful tools to explore and play with. Somewhere in there is just the right combination of hardware and software that will allow me to create something awesome. Something that combines my love of music and programming…

Oh, heres one more link. Its a TED talk on research being done on improvisation (jazz and rap). It doesn’t really reveal much that is new, but its an entertaining talk and opens up some interesting questions. http://www.ted.com/talks/charles_limb_your_brain_on_improv.html