The Aziz! Light Crew Freeliner is a live geometric animation software built with Processing. The documentation is a little sparse and the ux is rough but powerfull. Click the following image for a video demo.
Here are some instructions on how to get started with freeliner.
- Download and install Processing 3 from https://processing.org/, the latest version should be used.
- Install these libraries:
- oscP5 (available through Processing library Manager)
- Websockets (available through Processing library Manager)
- Video (available through Processing library Manager)
- SimpleHTTP (download from site and extract to
sketchbook/Libraries
) - [Spout] Optional for windows users
- [Syphon] Optional for MacOS users
- Open and run
alc_freeliner/freeliner_sketch
with Processing - Once running you can point your browser to
http://localhost:8000/index.html
to access the browser interface
Also known as a!LcFreeliner. This software is feature-full geometric animation software built for live projection mapping. Development started in fall 2013.
It is made with Processing. It is licensed as GNU Lesser General Public License. A official release will occur once I have solidified the new architecture developed during this semester.
Using a computer mouse cursor the user can create geometric forms composed of line segments. These can be created in groups, also known as segmentGroup. To facilitate this task the software has features such as centering, snapping, nudging, fixed length segments, fixed angles, grids, and mouse sensitivity adjustment.
Templates hold data related to how a segmentGroup will be rendered. There is 26 Templates, one per uppercase letter. The parameters are configurable via keys like ‘s’ for size, they can be set by typing a new numerical value or pressing ‘-‘ and ‘+’ (actually ‘-‘ and ‘=’).
Each segmentGroup can have multiple templates. The templateManager then combines segmentGroups with their templates to create RenderableTemplates which then get rendered.
alcFreeliner must:
- Only require a computer with mouse, keyboard and display to run.
- Cross platform.
- Content Free, aside from fonts.
- Remain lightweight for old hardware.
- Focus on improvisation.
Point a projector at stuff, run the processing sketch. Navigate the space with your cursor, left click to add vertices, right click to remove them, and middle click to set their starting point.
The first few clicks puts down a special set of lines, they will display important info. The first three will display important info to make sense of this madness. Try to place them out of the way on a even surface so the text is legible. This is [group : 0]
and thats all it does for now.
Now hit n
to create a newItem and click around to place some lines. If you have made a closed shape, you can place a center. Now hit A
to add renderer A.
Most lowercase keys are linked with a parameter. For example q
is for colorMode. Once you press q
you can change the colorMode by pressing -
or =
(aka +
) or by typing in a number and pressing enter
. Some parameters are simple toggles. For example g
enables and disables the grid, but you can also alter the grid size by tweaking the value. The .
works in a similar fashion where you can enable/disable snapping and adjust the snapping distance.
See (https://github.com/maxdee/alc_freeliner/blob/devel/freeliner_sketch/data/doc/autodoc.md) for a detailed list.
Parameters related to rendering can be controlled via OSC. A message /freeliner/tweak ABC q 2
will set templates A, B and C to red stroke. Typetag string string integer, the port can be set in the settings. You can find some PureData abstractions to get you started in pd_patches
, great to quickly connect your midi controllers.
The cursor can snap to various stuff. When snapping to points you can nudge them with the arrow keys, shift
for bigger increments. Holding ctrl
will momentarily disable snapping. If ctrl
is pressed when snapped, you can right click drag the point. Snapping to segment middle you can use backspace
to remove the segment. .
toggles snapping and allows you to set the snapping distance.
|
pipe begins a text entry and return key returns the text. This has a few uses. More later.
Essentially adds a other template of your choice to any group who has the first template on the list.
Select two templates like A
and B
, press ctrl-b
. All geometry that has A
will now also have B
.
Make a new segment group, set its center. Add a rendering template (shift + a-z
) then hit (ctrl + d
). That template will now have a custom brush corresponding to that segment group. You can then remove that template from the group and or remove all the segments of the group.
Unselect with esc
, then select the template to copy, then select the template to paste into, and then press ctrl-c
.
Now you can save a complete mapping, geometry and templates. Using ctrl-s
and ctrl-o
you can save and load the default files, userdata/geometry.xml
and userdata/templates.xml
.
16 step sequencing, may change. By tweaking the >
character you can move through the steps. Steps are like items, they can have multiple templates. Press the >
key then add a template or two then go to the next step with =
(+) and onwards. It is recommended to use enabler mode 2.
The *
character begins and stops a frame saving process. These .tiff
images are saved in batches capture/clip_N
. You can use Processing's movie maker tool to turn these into a video file. I recommend clearing capture/
after making some clips.
Freeliner can be quit with your systems shortcut to close a window, like alt-f4
or with cmd-w
on OSX.
To use Syphon, install the Syphon Processing library and remove all the double slashes (//
) in the SyphonLayer.pde
file.
To use Spout, install the Spout Processing library and remove all the double slashes (//
) in the SpoutLayer.pde
file.
Freeliner can now compile its own documentation. Due to the extendable nature of freeliner, extensions can get added to documentation automatically. Every template parameter.
Report one?
- MrStar
- Zap
- Tats
- Quessy
- Jason Lewis
- BunBun
- ClaireLabs
- Bruno/Laika
- potluck crew
- Robocut