A custom editor with scriptable objects to help build audio visualizers and generative art. Built with Processing Java, along with the Minim, Ani and ControlP5 libraries.
git clone https://github.com/nafeu/oavp.git
cd oavp
cp sample-sketch.txt src/sketch.pde
- Download this repo onto your machine and navigate to the
src
folder. - Create a new file inside
oavp/src
calledsketch.pde
- Copy the contents of
sample-sketch.txt
intosketch.pde
- Download and install the
Processing IDE
- Open the Processing IDE (create a new sketch if one isn't already create for you) and do the following:
- Go to
Tools
>Install "processing-java"
- Go to
Sketch
>Import Library
and install the following libraries:
- Open the
oavp/src
folder in the Processing IDE and run the sketch.
Alternatively you can also use processing-sublime
to build and run oavp using Sublime Text or use this vscode plugin.
Once you run the sketch, give it a few seconds to fully launch, then press e
to activate edit mode. Refer to the keybindings table below for usage instructions:
Key | Description | Usage |
---|---|---|
e |
Activate edit mode | |
n |
Create new object | ↕ then enter to select an object to create |
[ |
Select previous object in list | |
] |
Select next object in list | |
d |
Duplicate selected object | |
w |
Delete selected object (cannot delete special objects like Camera or Background ) |
|
q |
Toggle snap grid intensity | toggle between low, medium, high or disabled |
m |
Select Move Tool: Move object origin in xyz dimensions | ↔ to move in x dimension↕ to move in y dimension↕ + shift to move in z dimension |
s |
Select Resize Tool: Resize the object (only applies to a few objects, use transform option otherwise) | ↕ to change s value |
t |
Select Transform Tool: Transform object width, height or length | ↔ to change w↕ to change h↕ + shift to change l |
r |
Select Rotate Tool: Rotate object around xyz dimensions | ↔ eto change xr↕ to change yr↕ + shift to change zr |
c |
Select Colour Tool: Change object stroke and fill colours | ↔ to change selected colour↕ to change selected paletteenter to apply selection to strokeshift + enter to apply selection to fillctrl + enter to apply selection to stroke and filldelete/backspace to remove strokeshift + delete/backspace to remove fillctrl + delete/backspace reset coloursbackslash to select random paletteshift + backslash to apply random stroke and fill combination from selected palette |
b |
Select Weight Tool: Change object's stroke weight | ↕ to change strokeWeight |
z |
Select Modifiers Tool: Augment or animate object properties with different modifier types | ↕ to select an object property↔ to change valueenter to select modifier type |
v |
Select Variation Tool: Select different object variation | ↕ to change object variation (only applies to some objects) |
p |
Select Params Tool: Change additional object parameters (only applies to some objects) | ↕ to select an object parameter↔ to change value |
o |
Select Mod Delay Tool: Change frame delay for modifiers (animations or augmentations) | ↕ to change modDelay |
a |
Select Iter Count Tool: Change number of object iterations being drawn | ↕ to change i |
i |
Select Iterations Tool: Augment object properties based on which iteration is being drawn with an iteration function | ↕ to select an object property↔ to change valueenter to select iteration function |
x |
Export sketch to console | |
y |
Take screenshot | *only works if not in edit mode |
Check out the full guide and docs available at the repo's wiki here. Documentation is a still a huge work-in-progress and I would greatly appreciate if anyone was interested in helping out. PRs are welcome!
2023 Update: the oavp wiki docs are very outdated and due for an overhaul.
Presets are triggered from numbers 1-9
on the keyboard outside of edit mode.
To activate editor sequences like the queueFauxTimelapse
function, add thread("queueFauxTimelapse");
in the setupSketchPostEditor
function body in your sketch.pde
file:
void setupSketchPostEditor() {
thread("queueFauxTimelapse");
}
Nafeu Nasir
MIT