Update 10-10-2020 It's been fun and I've learned a lot. This project has become bigger than expected and needs refactoring. As of 2020, I've archived karmaMapper, and started merging parts of it with Mosaic. Mosaic is very close to the initial karmaMapper ideology and I'll continue to research & put efforts into that project. Another alternative, if you're more interested in the mapping aspect of karmaMapper, could be Splash.
karmaMapper is a collection of OpenSource 2D mapping software made for real-time interactions and digital image generation. Built upon the amazing OpenFrameworks framework, it gives an interface between the physical and the digital. It comes with an SDK allowing you to easyly start coding effects and modules then intstanciate and parametrize them within a same virtual space. If you're at ease with code, it's a perfect tool to start coding on physical surfaces using a video projector.
Runs on Mac and Linux and Windows (alpha).
In the future, karmaMapper will aim to facilitate the work of creative coders with a bunch of redundant code. It will also provide automatic variable assignment and animation to create a vast interconnected virtual and analog environment. Some of the code might be shared with videoDromm including a distant control interface.
-
Clone the karmaMapper project:
cd /path/to/openFrmeworks/apps/ mkdir karmaApps && cd ./karmaApps git clone https://github.com/Karma-Kusala/karmaMapper.git --recursive
-
Install dependencies:
cd ./karmaMapper && ./clone_addons.sh
Note: On Windows, run the commands in the git command prompt.
(Choose one)
- Makefiles: ( /!\ Not tested with current build )
cd OF/apps/karmaApps/karmaMapper
make Release
make RunRelease
Select the animator or the editor inconfig.make
PROJECT_DEFINES = KM_EDITOR_APP
PROJECT_DEFINES = KM_ANIMATOR_APP
Note: Mac only. You may have to rename the .mm
/.m
file extensions in the addons' ofxUVC/src/
to .cpp
-
Qt Creator: ( /!\ Not tested with current build )
OpenkarmaMapper.qbs
and compile.
See also the OF Qt setup guide.
On Linux I also had to update gcc to version 4.9.
To select a target, editkarmaMapper.qbs
and look forof.defines: ['KM_ANIMATOR_APP']
-
Xcode:
OpenkarmaMapper.xcodeproj
and select either thekarmaMapper Editor
orkarmaMapper Animator
target.[osx 10.12+ only] : Apple has kicked out the QTKit framework from 10.12+, needed by karmaMapper. For now, use
MacOSX10.9.sdk
(or 10.11).- Download an SDK
- Install via symlink: (you can also copy the file into Xcode)
sudo ln -s /path/to/MacOSX10.11.sdk /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs
- Relaunch Xcode then select the right SDKs to use to build and link karmaMapper and OF on each target in your project settings.
-
Visual Studio: ( /!\ Not tested with current build )
OpenkarmaMapper.vcxproj
and compile. If not compiling, it may help to re-generate the project using OpenFramework's Project Generator.
Some extra standalone apps are available on rpi and other platforms, they can connect to and interact with karmaMapper.
- RaspberryPi + Raspbian: ( /!\ Not tested with current build )
Various scripts will be available, so an Rpi will be useful to have around. Pd sound analyser - Pd Chladni plate generator Note: I also got the karmaMapper (renderer) to compile and run on a RaspberryPi2 using Raspbian. Not sure the current version still compiles. - Arduino
A serial control interface is available to communicate with Arduinos over USB / Serial.
- Daan de Lange (Karma Kusala / ADN)
- Kévin Pouget / Vienin (Karma Kusala)
- Bruce Lane (VideoDromm)
- Ricardo Garcia
- Douglas Edric Stanley (Abstractmachine)
- Gregory Pignot (Servovalve)
- Guillaume Stagnaro
- Tetalab
- Esaaix
- Locust
Feel free to comment, contibute, fork, pull, etc. :)