processing sound visualizer explained

Nikolaus Gradwohl2019-01-22T05:07:16+00:00

I have been asked to share the code of the sound visualizer I wrote in processing about a year ago, so I decided to write a blogpost explaining what I did

The program has two main parts - the autocorrelation function that creates the wiggly line and a glsl filter for the lens-distortion effect.

read more ...

SynthJam 01 2019

Nikolaus Gradwohl2019-01-20T10:21:36+00:00

Yesterday it came to my mind, that in the last few weeks I've spent more time working on my music equipment than actually making music - I created a new stand for my Mother32 and my DFAM, I made a midi to trigger signal box based on an arduino, I wrote a controller script for my KMI SoftTouch2 so I can controll bitwig with my feed while jamming - all very important tasks that will help me focus on making music - but currently it feels like all those task are eating my time for making music.

So I recorded a quick synth jam using the repro1 plugin from uhe and the mother32 in Bitwig Studio. I also added some drums from the Volca Beat, the volca sample and the DFAM.

So - without further ado - here is my first syth jam of 2019

read more ...

blender 2.80 experiment 7 - keyframes

Nikolaus Gradwohl2019-01-14T05:20:22+00:00

This blender experiment is based on the curve generation python script from my erlier post - Ths time I added keyframes to the locations of the bezier curve vertices and their handles.

Keyframing a curve vertex from a python script is pretty simple. All that is required is calling the keyframe_insert method on the point object and specifing the path to the attribute that should be keyframed.

For example

b.bezier_points[i].co = (1,1,1)

inserts a new keyframe for the position of a curve vertex at the current frame of the scene.

to change the frame i used


you can download the blend file here

keyframed curve vertices

read more ...

blender 2.80 experiment 6 - fresnell

Nikolaus Gradwohl2018-12-17T05:40:32+00:00

for this blender experiment I started to experiment with node based materials for eevee. I used a fresnell input node to blend between two diffuse shaders. The mesh is a subdivided cube with a displacement texture.

you can download the blend file here

blender eevee experiment

read more ...

blender 2.80 experiment 5 - scripted curve

Nikolaus Gradwohl2018-12-12T05:30:07+00:00

For this blender 2.80 experiment I created four bezier curves using the blender python api. There have been some changes in the api, but porting existing python scripts to 2.80 is pretty easy - the main changes required for older code to run is how the objects get added to the scenes, because of the new collections in blender 2.80

you can download the blend file here

scripted curves

to run a python script open a texteditor and run a script with ALT-p

read more ...

blender 2.80 experiment 4 - vertex hook

Nikolaus Gradwohl2018-12-10T04:47:58+00:00

For this animation I wanted to use the modeling tool a little bit - so I subdivided a plane, inset the faces and extruded them. Then I selected the top faces of my object and hooked them to a empty, so I can control them in an amiation.

It took me some time to figure out how to navigate the new menues and where to find things, but I still think the new menues make a lot more sense than the blender 2.79 ones once you get used to them

The animation was again created by keyframing the location, rotation and scale values of the control empty.

you can download the blend file here

Vertex hook

For this animation I used the blender compositor in combination with eevee for the first time. I like the dof effect created in the compositor better than the dof settings you can create in the eevee render settings panel - but that is my personal preference you can get decent results with both of them.

read more ...

blender 2.80 experiment 3 - displacement

Nikolaus Gradwohl2018-12-06T03:34:59+00:00

for my third blender experiment I used a displacement modifier with a voronoi texture on a subdivided plane. The displacement modifier is controlled by a keyframed empty to make the texture move and change.

you can download the blend file here


I'm still not satisfied the shadows created by eevee - a decent shadow setup seems to be more complicated than i expected it to be - especially when animating things. Will have to do some more experiments on this

read more ...

blender 2.80 experiment 2 - array modifier

Nikolaus Gradwohl2018-12-04T04:21:01+00:00

For this blender experiment I used two array modifiers applied to a default cube - one that shifts the cube along the x-axis and one that shifts the array of cubes from the first modifier to the y-axis. Both are controlled by an empty.

I then keyframed the rotaion and location of the keyframes to create moving and swirling boxes - lots of them :-)

I wanted to see how well eevee can handle overlapping objects, since bi and cycles had some wired artefacts when faces overlapped in the beginning - but eevee seems to be fine with them. But again - rendering scenes with lots of objects make things pretty slow.

you can download the blend file here

array modifiers

What surpriced me a bit is the new timeline - you select a frame by right-clicking - whicht is kind of funny - the only object where you could select things with the left mousebutton in blender 2.79 now uses the right button :-)

Other than that i really like the new ui - it's much more consistent and I start getting used to the new icons.

read more ...

blender 2.80 experiment 1 - particles

Nikolaus Gradwohl2018-12-03T05:24:50+00:00

Blender 2.80 beta has been released! yea! party!

ok - for real now - blender 2.80 is the next big release of blender, 3 years in the making and packed with new features, a new render engine, support for 2D animations, a new ui, ... lots of new stuff to learn and explore

So I started a new series of "blender experiments" this time featuring blender 2.80

I will explore and test various new features and create 10s animations for each one and blog my findings, what I like or don't like about it, how easy it was to use and so on.

If you have any suggestions or want me to try things add a comment below

The first new feature I want to explore, is the new rendering engine eevee which replaced the blender internal engine - and I'm obviously going to explore the new UI - would be hard to create eevee animations without using the new UI :-)

I really like particle systems and used them a lot sooooo its a pretty obvius choice for me to use as my first blender experiment using eevee. And here i present you my first particle system animation rendered with EEVEE

you can download the blend file here

particles in eevee

Selecting things with the left mouse-button was easier to adjust to than I expected, and most of the keyboard shortcuts I normally used in blender 2.7x still work so I was pretty fast in clicking together the animation - what surpriced me a bit was how long it took eevee to render my animation on my machine - eevee doesn't seem to like scenes with lots of objects and starts to get really slow. I also need to do some more research on shadows - they don't quite behave like I expected them.

read more ...

Bitwig Studio Controllerscript for SoftStep2

Nikolaus Gradwohl2018-11-30T07:10:56+00:00

I wrote a Bitwig Studio Control-Script for the KMI Softstep2. This script switches the Softstep 2 into hostmode and controls it directly, so no presets have to be stored on the board itself and no host program has to be running - this also means that the script runs on linux machines, it only uses the usb-midi interface to control the Softstep.

To install it download the zip file and unpack it into the Controller Script folder of bitwig like described in the controller script installation guide

the source code is available in my github repository


This control-script is based on the python program Foococo by Matthieu Amiguet. Many thanks for figuring out how to switch the Softstep into hostmode and controling the Screen

read more ...