►
From YouTube: MindBuffer + Nannou — Rust in Arts 2021
Description
The story behind the creation of nannou and how MindBuffer utilises it to create large-scale art installations.
https://rustfest.global/2021/schedule/
A
And
we're
back-
and
this
is
sadly
the
last
session
for
rest
in
arts-
it's
been
an
amazing
day,
but
it's
not
over
quite
yet.
I'm
very
happy
that
I
can
like
bring
this
little
conference
like
in
a
full
circle
to
a
full
circle
moment.
A
In
the
first
talk
today
we
had
doing
generative
art
with
a
rest
framework
called
nanu,
and
for
the
last
session
we
will
have
basically
the
minds
behind
nanu
a
a
studio
called
mindbuffer
based
in
australia,
and
they
created
this
framework
and
they
do
amazing
things
with
it
and
we're
gonna
learn
a
little
bit
about
like
how
they
do
their
work.
How
nunu
was
created
and
yeah
yeah,
please
give
it
up
for
mitch
and
josh
from
mindbuffer
and
an
exploration
of
nanu.
B
A
B
Russ
fest
to
russell
2021:
this
will
be
a
little
presentation
on
mind
buffer
and
how
we
use
nano
so.
C
C
C
So
maybe
we'll
talk
about
like
just
what
we'll
present,
in
a
short
time,
yeah
just
a
little
bit
about
who
we
are
and
the
kind
of
work
that
we've
been
doing
with
rust
and
with
nano
which
we'll
talk
a
bit
more
about
later,
how
I've
used
it
for
projects
over
the
last
couple
of
years
and
yeah
how
we
can
get
you
guys
involved.
I
mean
going
forward
so
maybe
just
to
quickly
demonstrate
what
it
is
that
we've
done
with
this
I'll
just
show
a
little
teaser
just
outline
some
snippets.
B
Music
yeah,
so
there's
a
lot,
there's
a
lot
going
on
there
that
hopefully
gives
you
an
idea
of
the
kind
of
work
that
we're
doing.
We
love
to
play
with
anything
that
we
can
plug
into
like
lasers,
or
projections
audio
originally
both
josh
and
I
started
out
as
musicians.
This
is
this
little
slide
gives
an
idea
of
how
history
and
how
we
got
to
how
we
got
to
where
we
are
yeah.
So
I
started
with
violin
just
like
the
trumpet.
B
But
then
it
turns
out
that
if
you'd
want
to
play
around
with
audio
audio,
just
happens
to
be
one
of
the
most
performance
demanding
sort
of
domains
that
you
can
get
into
for.
For
software,
so
that
led
us
down
the
rabbit
hole
of
getting
into
c
plus
and
experimenting
with
open
frameworks
and
yeah.
I
think
working
with
health
plus
sort
of
left
a
lot
to
be
desired
in
terms
of
how
we
structured
our
work
and
because
we're
also
both
self-taught
programmers.
B
So
you
can
just
imagine
what
our
early
c
plus
code
bases
probably
look
like,
but
yeah.
Eventually
we
sort
of
stumbled
upon
rust
and
it
turns
out
that
rust
just
won't.
Even
let
you
compile
your
program
unless
you've
cleared
all
of
these
certain
safety
guarantees.
You
know
that
if
you
do
compile,
then
there's
at
least
the
whole
class
of
problems
that
can't
happen,
and
so
that
was
extremely
appealing
because
it
sort
of
let
us
be
it.
Let
us
think
about
the
artwork
more
so
than
the
code,
because
you
know
the
code
getting
past.
B
C
C
We've
we've:
we
launched
three
projects
which
we'll
talk
about
later,
that
are
running
for
next
15
years
and
we
haven't
heard
from
them
since
they
launched
three
years
ago
and
they're
still
running
and
thanks.
I
thanks
for
to
rust.
For
that
you
know.
I
just
don't
think
that
our
friend
frameworks
applications
would
have
done
that
and
not
you
know,
probably
says
more
to
our
for
our
coding
ability
at
the
time.
But
you
know
russ
has
really
been
a
bit
of
a
lifesaver
for
us.
B
Yeah,
that's
another
thing
as
well:
it's
like
having
used
rust
now
for
the
past
few
years
and
like
built
so
much
stuff
with
it.
We
could
probably
go
back
to
something
like
open
frameworks
now
and
now
that
we
have
more
of
an
understanding
and
why
these
things
are
the
way
they
are.
We
would
just
sort
of
naturally
code
with
a
better
practice,
but
that's
also
something
that
you
just
I
don't
know
it's
much
easier
to
learn
with
ross
than
through
trying
to
solve
sex
folds
for
weeks
at
a
time
exactly.
C
Yeah
so
yeah,
so
I
guess
the
one
of
the
interesting
things
that
we
found
ourselves
in
as
mitch
said
we're
not
computer
science.
Students
is
our
background.
C
We
come
from
it
from
a
musical
point
of
view
and
we
we
bumped
into
this,
just
wanting
to
express
ourselves
in
ways
that
existing
tools
wouldn't
let
us
so
it
turns
out
that
this
whole
subfield
of
creative
coding,
which
probably
isn't
as
niche
anymore
as
it
was
when
we
got
into
it,
but
they
have
lots
of
tools
out
there
like
p5js
and
processing
and
open
frameworks
and
even
touch
designer.
C
I
guess
you
call
creative
coding
that
allow
a
lot
of
people
to
get
into
this
field
now
and
kind
of
like
blurs
the
the
boundary
between
the
domain
you
may
be
coming
from
in
a
domain.
You
haven't
worked
in
before
so,
for
example,
you
know
you
might
be
working
you're
used
to
working
as
a
musician
and
having
a
sonic
output,
but
suddenly
you
can,
you
can
start
putting
things
like.
C
You
know
depth
cameras
in
or
sensors
and
then
getting
the
data
from
that
and
instead
of
having
a
keyboard
import,
you're
sonifying
the
result
of
like
you
dancing
around
or
anything
so.
B
Yeah
totally,
I
think
that
was
one
of
the
big
revelations
for
us
getting
into
it
like
being
both
musicians
beforehand.
Our
inputs
were
sort
of
just
like
our
compositional
ideas
and
the
outputs
were
between
20
hertz
and
20
kilohertz,
but
like
once,
we
got
into
programming
and
we
realized
like
how
easy
just
to
plug
into
everything
and
how
you
can
represent
everything
with
numbers
basically,
and
that
information.
It
became
not
just
playing
from
20
hours
to
20
kilohertz,
but
just
all
of
information.
And
so
now
we
kind
of
see
our
work
as
yeah.
B
C
We've
also
found
a
lot
of
richness
in
like
taking
data
and
going
to
multiple
outputs
simultaneously
so
yeah
having
functions
that
not
just
go
to
an
audio
output
or
a
visual
output,
but
like
massaging
this
one
output
to
go
to
multiple
different
domains
totally,
it's.
B
Like
sort
of
extracting
the
the
pattern
generation
and
the
composition
away
from
the
actual
specific
outputs
or
the
inputs
and
yeah
thinking
about
how
we
can
write
it
in
a
way
where
yeah,
whatever
it
is,
that
you're
playing
with
you,
can
sort
of
sit
down
for
a
couple
days
and
throw
something
awesome
together
and
based
on
work
that
you've
already
done
and
yeah
yeah.
So
yeah.
C
C
And
yeah,
obviously
it
was
inspired
by
the
previous
attempts
at
doing
creative
coding,
but
we
yeah,
we
did
really
feel
like
rust,
with
all
of
its
benefits
could
be
something
really
interesting
for
the
creative
coding
community
as
well,
and
so
we
really
wanted
to
kind
of
stand
on
the
shoulders
of
giants
in
that
sense
of
being
inspired
by
what
has
come
before
us,
but
really
leveraging
the
the
rust
programming
framework
and
making
it
open
source
for
going
forward.
C
B
Then,
if
seat
plus
is
the
only
option,
then
it's
just.
It
was
obvious
that
russ
had
such
great
potential
for
something
along
the
lines
of
like
frameworks
of
processing,
so
yeah
there's
many
years
of
getting
all
the
necessary
libraries
together
and
building
up
a
sort
of
foundation
and
now
yeah,
as
you
can
see,
we've
got
a
few.
This
is
just
sort
of
like
the
surface.
C
C
B
C
A
C
Larger
portion
of
the
rust
ecosystem,
so
maybe
just
an
example
of
just
some
of
the
syntax
of
how
easy
it
is
to
get
started.
You
know
it
really
tries
to
be
a
battery's
included
framework
where
everything
is
just
as
easily
as
accessible
as
possible,
so
that
the
creativity
is
kind
of
put
to
the
forefront.
C
So,
for
example,
if
you
just
want
to
draw
a
bunch
of
circles
onto
a
canvas,
then
you
know
you've
got
a
a
a
build,
a
chain,
a
building
method
that
we
use
here
for
specifying
all
of
this,
and
it's
kind
of
as
easy
as
this
yeah.
This.
B
B
It's
artists
who
want
to
make
work
with
computers
to
make
things
that
they
couldn't
do
otherwise
or
make
computers
do
things
that
people
maybe
think
they
shouldn't
be
able
to
do,
and
so
approachability
is
like
a
really
big
thing
for
us
as
well
trying
to
keep
trying
to
keep
the
canvas
as
simple
and
clean
as
possible
so
that,
when
you
do
feel
like
creating,
you
can
just
sort
of
get
right
in
there
and
get
sketchy
really
quickly.
Yeah.
C
So
yeah
I
mean
obviously
graphics
and
audio
is
just
one
side
of
it,
but
there's
like
actually
many
domains
that
at
least
us
as
mine
buffer
are
very
interested
in
working
with
laser
projectors,
and
you
know
lighting
fixtures
using
artnet
and
dmx
all
the
way
to
different
communication
protocols
for
sending
open,
sound
control
or
working
with
external
hardware
yeah.
So.
C
A
way
of
targeting
all
these
different
outputs
yeah
within
nano
itself,
I
guess
probably
that
has
been
inspired
by
just
what
we
see
is
a
bit.
I
mean
I
guess
we
I'll
show
this
slide
here.
We
we
originally
started
out
when
we
started
as
as
musicians
wanting.
A
C
A
visual
element
to
our
show
and
yeah.
It
was
just
getting
a
little
bit
crazy
that
we
had
separate
software
for
each
different
stage
that
we
wanted
to
play
with
and
in
the
end,
you
just
have
to
start
writing
these
huge
kind
of
networks
of
interchangeable
software
elements
which
gets
confusing
very
quickly
if
you're
yeah,
especially.
B
When
you're
in
front
of
an
audience
and
you're
about
to
play
for
an
hour
and
you've
got
like
so
many
different
pieces
of
stuff,
we're
open-
and
I
remember
for
this
particular
gig
josh
josh-
was
compiling
processing
sketches
while
playing
live
and
then
like.
How
do
you
know
what
you're
doing
to
crossfade
between
the
windows.
C
Compilation,
I
don't
know
yeah
yeah
so
and
then
you
know
if
we
wanted
to
start
working
with
with
other
types
of
software
like
lasers,
then
obviously
like
there's,
you
know
pangolins
the
industry
standard
for
this
sort
of
stuff,
but
then
it
requires
you
to
have
a
pangolin
license
and
then
same
with
like
projection.
Mapping
is
mad
mapper
and
I'm
sure
there's
other
software
out
there,
but
it
definitely
seemed
like
there
was
all
of
these
domains
had
their
own
siloed
bits
of
software.
That
required
you
to
have
a
number
of
licenses.
C
C
B
I
don't
know
it's
much
more
open
generally,
I
guess
and
yeah
but
yeah
for
lots
of
these
stranger
pieces
of
hardware.
There's
it's
crazy.
The
hoops
that
you're
going
to
jump
through
just
to
send
some
sweet
patterns
and
then
once
you
do
buy
all
the
software,
then
you've
got
to
hope
that
your
vision
fits
into
whatever
their
20
year
old
piece
of
software
actually
lets.
You
do
so
yeah.
C
Yeah
so
hence
the
reason
why
we
developed
now
and
have
open
source
it
and
allow
access
to
all
these
these
tools
behind
the
scenes,
and
so
yeah
really
wanting
to
liberate
artists
to
work
with
all
these
domains
and
not
feel
like
they
have
to
be
siloed
into
one
or
the
other
yeah
yeah.
We're
definitely
standing
on
the
shoulders
of
giants
with
all
of
this.
So
we
want
to
acknowledge
that,
but
it
I
guess
it's
a
big
team
effort.
If
we
all
work
together,
we
can
we
can
totally.
B
Advertise
this
space
and
and
do
cool
it's
like
all
of
these
kinds
of
things
like
these
fancy
pieces
of
hardware
and
protocols
and
stuff
the
beauty
about
doing
it
open
source
is
that
we
can
all
collaborate
on
it
together
and
solve
each
of
those
things
one
time,
and
then
we
can
all
sort
of
like
benefit
from
it
and
like
the
stuff
that
really
matters
is
the
stuff
that
we
make
on
top.
But
you
can
kind
of
see
nano
is
like
this
big
sort
of
shed.
B
C
Maybe
now
is
a
good
time
to
just
show
some
projects
that
mitch-
and
I
have
previously
done
with
nano
and
talk
a
little
bit
behind
how
they
were
used
just
so,
you
can
get
an
idea
of
what
it
looks
like
out
in
the
wild,
so
this
first
one
was
actually
called
lattice
that
we
did
for
a
museum
called
scienceworks
in
melbourne
victoria,
where
we
had
300
square
meters
of
this
scream
and
five
three
watt
laser
projectors,
and
we
actually
wrote
all
of
this
in
a
month
and
had
the
whole
thing.
C
B
Totally
yeah
for
a
lot
of
these
projects,
you'll
notice
that
we
kind
of
like
we
picked
the
works
based
on
what
we
want
to
actually
drive
forward
and
landing
as
well.
So
at
this
point,
there's
not
a
lot
of
hardware
left
actually
but
yeah.
It's
awesome
so
yeah
this
one
is
oracle.
It's
more
of
a
concept
artwork!
We
almost
landed
it
for
a
particular
gig,
but
it
didn't
work
out
with
the
venue
for
some
reason,
but
yeah
lots
of
fun.
B
The
idea
is
just
to
move
with
large
arrays
of
moving
heads
and
sort
of
apply
pattern
generation
to
I
don't
know
the
same
kind
of
ways
that
you
would
oscillate
across
like
audio
synths
or
parameters.
We
wanted
to
have
a
go
at
sort
of
spatializing,
a
lot
of
series
of
moving
heads
and
see
what
we
could
do.
C
Yeah,
but
that
you
know
that
that
that
allowed
us
to
get
the
art
net
and
dmx
control
all
working
nicely,
so
it's
all
feasible
to
plug
into
into
the
future.
Then
the
next
ones
are
some
commercial
works
that
we
actually
did
for
some
museums.
B
B
I
don't
remember
yeah,
I
think
that's,
maybe
100-
that
involve
lots
of
optimization,
because
I
had
to
run
into
mac
mini,
and
that
was
a
mission,
but
like
those
kind
of
optimizations,
I
don't
know
how
we
would
have
gone
about
that
using
anything
else,
yeah,
because
lots
of
channels
of
audio
lots
of
sources,
some
of
them
were
real-time
sources,
for
example,
generated
from
other
software.
Some
of
them
were
actual
just
playing.
C
Yeah
this
next
one
was
actually
for
mel
museum
also,
but
they
wanted
us
to
utilize
some
depth
cameras.
So
I
think
for
this
one
we
use
the
orbeck
astra
depth
camera,
but
it's
a
good
example
of
trying
to
plug
into
some
hardware
that
only
doesn't
have
a
rust
library
already
so
having
to
create
bindings
so
that
we
can
get
access
to
it
and
running
our
own
pipelines.
But
yeah.
A
C
C
So
yeah
yeah
and
we
worked
with
tom
gohan
on
that
one,
which
was
great
and
also
andy,
thomas
and
in
the
same
exhibition.
We
also
worked
on
with
andy
thomas
to
create
this
piece
that
had
projection
mapping
and
quad
warping
and
multiple
displays
and
custom.
Well,
this
is
our
first
actually
attempt
using
vulcan
directly
in
nano
yeah.
So
this
is
the
moment
for
these
projects,
where
we
actually
left
from
opengl
to
vulcan
yeah,
which
we've
seen.
B
B
B
B
Yeah,
so
we
moved
over
to
berlin
because
while
it
was
fun
working
in
australia
and
melbourne
on
these
different
kinds
of
projects,
many
of
the
artists
inspire
us
the
most
over
in
berlin
and
one
of
them
is
hanky,
and
so
robert
hanke
is
the
one
of
the
originators
behind
ableton
live
and
so
we've
kind
of
been
yeah
following
his
work
for
a
little
while,
and
he
reached
out
looking
for
someone
who
could
do
some
vulcan
programming,
and
so
I
ended
up
collaborating
with
him
on
visualizing
the
output
of
the
cbm8032
computers.
B
So
you
can
kind
of
see
them
in
the
bottom
of
the
picture,
but
basically
they
don't
have
hdmi
output.
Surprise,
surprise:
we
worked
with
another
programmer
who
read
the
data
directly
after
the
video
card
converted
into
serial
data,
and
then
we
were
visualizing
the
serial
data
in
real
time
with
nano.
A
B
C
Yeah
yeah
and
then
after
that,
we
well
the
last
kind
of
big
piece
that
we
all
did
with
nanu
was
on
a
project
collaborating
with
augmented,
nicholas
parillo
on
this
project
called
morph,
which
was
a
large
spherical
robot
had
486
individual
actuators
with
custom
led
panels
on
the
end
like
over
80
000
programmer
leds
in
total,
with
a
five
channel
genelec
sound
system
inside
so
yeah.
All
of
this,
from
like
the
firmware
to
the
control
software
was
all
100
rust
and
it
was
a
very,
very
all.
B
B
We
can
do
that,
and
so
we
flew
nick
over
to
berlin
and
all
collaborated
on
this
monstrosity
for
a
good
six
months
straight
yeah
and
it's
a
lot
of
work,
but
it
was
yeah,
good,
fun,
really
interesting
way
of
applying
yeah,
applying
composition
to
different
formats
and
totally
custom
formats,
yeah,
especially
like
working
with
the
spherical
display.
So
I
guess,
like
normally
you're
working
with
rectangular
displays.
So
we
we
came
up
with
basically
spherical
shader
technique,
where
your
coordinates
are
rather
than
x.
B
Y
inputs
for
each
pixel,
they're
spherical
coordinates
so
they're
great,
the
yeah
angles
across
different
axes
plus
the
previous
motor
position,
because
each
node
is
also
controlled
by
motors
and
then
your
output
is
not
just
one
color,
but
a
color
plus,
you
know
target
motor
position.
We
had
fancy
ways
of
like
interpolating
all
that
stuff
as
well,
so
yeah
lots
of
interesting
problems
in
this
one.
C
Yeah,
it
was
good
fun.
I
guess
it
kind
of
goes
back
to
what
we're
saying
earlier.
When
you
know
we
have
like
an
input
which
might
be
some
like
a
modulation
signal
that
gets
manipulated,
but
then
we
send
that
to
not
only
control
like
the
position
of
the
external
motor,
but
also
the
colors
on
some
leds
and
maybe
a
parameter
affecting
the
granular
synthesis
of
the
audio
and
yeah.
C
So
we
were
kind
of
working
with
these
like
sources
that
were
like
going
out
to
multiple
domains
at
the
same
time,
which
is
really
cool
yeah.
This
is
just
kind
of
give
you
an
overview
of
the
actual
control
software
that
we
created
in
nano
to
control.
This
beast.
It
was
probably
one
of
the
bigger
projects
I
think
that's
been
created
with
nano
so
far,
yeah.
B
C
I
think
it
turned
out
really
nice.
I
think
it
turned
out
really
useful
for
what
we're
going
to
do.
Yeah,
I
think,
like
a
big
one
for
us
was
just
like
how
to
modulate
everything
coming
from
a
music
musical
background
and
getting
into
how
graphs
work
and
and
making
sure
that
we
could.
B
C
B
Yeah
so
after
totally
burning
out
on
that
project,
I
went
to
spain
for
a
little
bit
and
spent
some
time
just
experimenting
working
on
anything
else.
Basically,
and
so
one
of
the
things
that
I've
always
been
really
curious
about
is
the
idea
of
compiling
rust
to
some
sort
of
shader
language,
and
so
basically
there's
a
group
called
embark
and
one
type
in
particular
mark.
A
B
B
They're,
compiling
a
subset
of
rust
to
to
the
gpu
to
spear
v,
which
is
the
falcon
chaining
language,
and
so
I
really
wanted
to
experiment
with
it,
and
so
I
had
a
go
at
doing
the
ray
tracing
in
my
weekend
thing
and
it's
actually
unbelievable
how
nice
it
is
to
be
able
to
share
the
same
code
between
the
gpu
and
the
cpu.
B
So,
for
example,
you
can
describe
your
your
world
and
your
shader
language
share
it
between
the
cpu
and
the
gpu.
So
on
the
cpu.
Maybe
you
can
just
cast
array
from
the
mouse
pointer
to
see
exactly
where
it
is
to
sample
whatever
the
material
is
that
you're
hitting
at
that
point,
and
you
know
that
it's
the
exact
same
position
as
like
that
that
that
pixel
will
be
colored
accordingly,
based
on
the
material
whatever,
because
the
same
code
is
actually
being
run
in
the
shader
itself.
So
I'm
really
excited
for
what
that
crew
is
doing.
B
A
C
B
Yeah
yeah,
okay,
so
another
project
I
worked
on,
while
in
spain
was
getting
back
into
generative
music,
so
generative
music
is
really
one
of
the
things
that
first
got
me
interested
in
programming
at
all.
B
So
the
first
projects
that
I
did
in
max
msp
and
two
of
us
were
both
the
generative
music
engines
and
so
I
sort
of
taken
a
large
divergence
from
it
for
a
while,
like
working
on
different
kinds
of
projects,
but
I
think
after
getting
a
bit
burnt
out
on
this
giant
big
custom
hardware
project,
which
involved
lots
of
firmware
it's
time.
For
me
to
get
back
to
my
roots
and
so
yeah,
it's
been
a
lot
of
fun,
working
on
generative
teams
again
and
experimenting
with
e-gui
as
well,
really
nice
user
interface
library.
B
Previously,
for
a
lot
of
our
past
projects,
we've
been
using
conrod,
which
is
like
a
gui
library.
I
wrote
a
long
time
ago,
mostly
just
because
there
wasn't
any
gui
libraries
at
that
point
in
time,
and
so
but
yeah
it's
been
really
nice
to
use
egoi.
I
think
it's
it's
very
similar
in
design,
but
a
lot
better
thought
out.
I
think.
A
C
Just
wanted
to
yeah
we've
been
speaking
a
lot
about
how
we've
used
nano
for
projects,
but
hopefully
it's
inspired
people
watching
the
kinds
of
kinds
of
things
that
you
can
do,
but
by
no
means
the
only
thing
you
can
do,
and
so,
if
you
think
that
it's
something
of
interest
to
you,
we'd
love
for
you
to
come
and
speak
to
us
and
hang
out
in
our
our
social
channels,
download
nano
and
and
have
a
play
with
it
and
see
what
you
can
come
up
with,
because
we
really
want
to
foster
this
sense
of
the
creative
community
behind
this.
B
You've
got
any
questions
or
you've
made
something
with
nano.
Please
come
and
see
us
on
the
matrix
channels
and
like
share
your
creations
or
share
your
questions.
There's
no
stupid
questions.
Everyone
starts
in
different
places,
especially
when
you're
a
big
bunch
of
artists
just
trying
to
make
computers
do
cool
stuff,
exactly
we're
always
open.
So
yeah
yeah.
B
A
C
Everyone
in
in
person
in
a
future
one
yeah,
absolutely
yeah
all
right
thanks
a
lot
thanks,
guys,
bye.