Processing is an open source programming language and environment for people who want to create images, animations, and interactions.
Processing refers to the language built on top of Java and the minimal IDE it ships with. It is free and open-source, runs on Linux, Mac OS X, and Windows, and can output for screens, print, 3D packages and CNC printing.
The language simplifies a lot of complex concepts and eases the entry of designers, artists and non-programmers to the world of programming.
Over the years it was used to produce a number of projects ranging from data visualization, to physical computing , games, 3D, sound, live perfomance, and more.
Due to its vibrant community, Processing not only enjoys a contribution of over 100 libraries, but is also present on major mobile platforms such as Android and iOS.
There are online communities for sharing Processing content, like OpenProcessing.
Some websites even allow users to learn and use Processing directly in the browser, like the Flash-driven SketchPatch and the JavaScript-driven HasCanvas,Sketchpad and p5.js(pure JS).
There are also Processing ports to the following languages:
The Android mode allows to run Processing sketches as Android applications with little or no changes in the code by automating tasks from project setup to .apk file export. Android Processing sketches also have access to the underlying Android sensors and devices.
Advanced users are not constrained to the Processing IDE; they can set up Processing projects in Eclipse; use proclipsing or alternatively use Sublime Text to build and run sketch via the processing-sublime package.
You can find a reference on Processing's foundation.
You can find more information on Processing for Android at http://android.processing.org/
A reference for using P3D is found at https://processing.org/tutorials/p3d/ in a tutorial by Daniel Shiffman.
Although it has not been mentioned in the official Processing documentation, there is a CMYK
mode which you can use.