miPhysics (Processing)

miPhysics is a mass-interaction physical modelling library, coded in Java and designed primarily for the Processing sketching environment.

Using elementary physical elements (such as masses, springs, contact interactions...) in a 3D space, it allows for the modular design of any type of physical object for visual generation, audio synthesis or haptic interaction purposes - or even all three at the same time !

Examples of applications range from sound synthesis to interactive visual arts, virtual reality, or even multisensory interaction (hearing, seeing & touching) with virtual musical instruments.

Download the tool and head over to the examples to see for yourself! Regarding sound synthesis possibilities of this tool, you might want to investigate emerging non-linear behaviours inherent to 3D mass-interaction models. For instance, listen to the model below, struck lightly (the first one), then hard (the second one) :

Videos

Sound Synthesis Examples

Plucking a Simulated String

Plucking a Simulated String

Exciting a Simulated String with an eBow

Exciting a Simulated String with an eBow

Two Colliding Strings

Two Colliding Strings

Exploring a Beam Model

Exploring a Beam Model

More Complex Structures: A Bell

More Complex Structures: A Bell

Sculpting Physical Matter in Real-time

Sculpting Physical Matter in Real-time

Cymbal-like Models

Cymbal-like Models

A Flat Plank

A Flat Plank



Visual Examples

Hello Mass !

Hello Mass !

Sculpting a Propagation Mesh

Sculpting a Propagation Mesh

A Three-Dimensional Pin Screen

A Three-Dimensional Pin Screen

Handling Multiple Collisions

Handling Multiple Collisions

Visualising Strain in a Beam Model

Visualising Strain in a Beam Model

Scenes Composed of Multiple Objects

Scenes Composed of Multiple Objects

Unravelling a Huge String

Unravelling a Huge String

The Wrecking Ball

The Wrecking Ball

Particle Attractors

Particle Attractors


LAST UPDATE

05/05/2020

DOCUMENTATION

Online JavaDoc

RELATED PAPERS

SMC 2019

HAID 2019

COMPATIBILITY

Built in Processing, compatible with OsX, Linux and Window systems