“an interface is not a thing; an interface is an effect […] Ideology is ‘modeled’ in software” — Alexander Galloway
Software tools, even creative software, aren’t without their biases. Intentionally or not, an interface reflects the ideology of the developers that made it. The _playGnd aims to make a suite of tools ( webGL / three.js ) accessible to contemporary net artists by modeling the interface on the ethics of their practice: copy+paste, experimentation && play.
The target audience are new-media artists or “net artists” but ultimately it’s applicable to any creative person who prefers play && experimentation over more conventional/structured forms of learning.
When we say ‘ethic’ before, we mean this not in the traditional ‘moral’ sense, but in the general sense: as a set of principles for practice in accordance with some convention. In this case the ‘practice’ is an experimental new-media art one; rather than traditional approaches to programming centered around ‘best practices’ + conventions (stability, structure, hierarchy, clear goals, debugging) the _playGnd is instead modeled on new-media ethics (experimenting, playing, copying+pasting, remixing, sharing). You learn to + make webGL sketches (using the three.js library) by ‘considerately fux’n around’.
the new-media art or “net art” world is a small niche, but it’s impact on broader creative industries is apparent ( what starts in an underground net art gallery often ends in a Kanye West video, Rihanna performances, etc )
in the first month of it’s release the three.js playGnd tutorial was watched over 40,000 times with hundreds of sketches submitted and remixed by net artists in the archive. Here are some of our favorites:
http://threejsplaygnd.brangerbriz.net/s/?id=82 by Claudia Mate
http://threejsplaygnd.brangerbriz.net/s/?id=99 by Nick Kegeyan
http://threejsplaygnd.brangerbriz.net/s/?id=103 by supersonicus
http://threejsplaygnd.brangerbriz.net/s/?id=128 by Sean McCullough
http://threejsplaygnd.brangerbriz.net/s/?id=188 by A. Bill Miller
http://threejsplaygnd.brangerbriz.net/s/?id=249 by burakkami
The “ethics” mentioned before inform the three sections of the _playGnd in different ways. The first step is the “graphix[toCode] interface” where you use a GUI to generate basic 3D geometry alongside the code which might normally be written by an “expert.” Traditionally GUI’s ‘obfuscate’ code. In the interest of making things more accessible they hide the code, and as a consequence compromise digital literacy. In the _playGnd the GUI is still concerned with accessibility, but in a way that augments the code rather than obfuscating it.
In the second step you copy+paste && collage the code you generated ( ie. your 3D shapes ) with other code ‘snippets’ in the “threejs [realtime] editor.” This editor is a little bit different from the conventional. First, it’s built into the browser and shares the same space as the rendered output, which allows for immediate feedback—you can experiment, tinker, play in ‘realtime.’ Second, the editor includes a ‘snippets’ menu to encourage copying + pasting + modifying + collaging code, and not simply “writing from scratch.”
In the last step of the _playGnd you can add the sketch you’ve created to the “sketch archive” alongside all the other sketches.