/influence

A libmapper program providing a shader-driven "influence field" that external agents can connect to, move around in, and observe.

Primary LanguageC

Influence field

Agents can connect to this program via libmapper, and specify their position. Their position is written to the field as a pixel, and then a GLSL shader drives a convolution engine that propagates the "influence" between pixels. Agents can read from their position to observe agents that are close-by, and decide how to move around the space.

Dependencies

LibMapper

git co http://github.com/radarsat1/libmapper.git

Eventually this will make use of Qualia, a C++ engine for reinforcement learning and other agent-type systems.

git co http://github.com/sofian/qualia.git

Compiling

Tested on Linux (Ubuntu) and Mac OS X.

make

Running

Run:

./influence

Then run any number of agents:

./agentConnect

These default agents just use forces based on the influence gradient.

Affiliation

This project is developed as part of "e[m]erge", a collaboration between IDMIL, XModal, Moment Factory and other partners.