September 4, 2012 AT 7:14 am

Processing 2.0

256Px-Processing Logo Clipped.Svg

Processing 2.0 pre-release (download here).

▪ P2D and P3D have been replaced with variants of the OpenGL renderer. We’ve removed the software-based (but speedy for some circumstances) versions of P2D and P3D. We feel that OpenGL rendering is probably the future for most Processing work, so we’re focusing our efforts there. The change will cause some sketches to actually run slower, but the bottom line is that we simply don’t have anyone to help maintain all of this extra code. We hope to sort out the performance problems over time—if you see something weird, please report a bug.

▪ OpenGL 2 – a new version of the OpenGL library has been implemented, and the old one has been removed. The new library is based on Andres Colubri’s Android work (and his experiences developing the GLGraphics library). All the great things from Android have now been back-ported to the desktop version of Processing, so we have a super fast OpenGL library.

▪ OpenGL is now part of core – the OpenGL library is now built into the core, no need to include it as a separate library. This simplifies things (enormously), and brings better parity with other platforms like Android. This makes exported applications larger, but the benefits are worth it.

▪ Modes – if you’ve used Processing 1.5, you’ll know about the built-in Android mode, but if not, Processing now supports multiple languages and platforms. At the right-hand side of the editor window is a drop-down menu that allows you to choose between “Standard”, “Android”, and “JavaScript” mode. Those are the current modes that are being included, though we may add/remove modes as we head to 2.0 (a Jython mode is lurking about, for instance. Mmmm! Tempting.) Like Tools and Libraries, it will be possible for other parties to write their own modes that work inside the PDE.

▪ JavaScript – the JavaScript mode (see above) allows you to write a sketch and quickly run it in a browser using Processing.js. The code that glues PJS to the PDE was developed by long-time Processing contributor Florian Jenett, and continues to evolve. We highly recommend using JavaScript for running Processing work in web browsers.

▪ Video – we’ve removed the QuickTime for Java video library and are using a modified version of Andres Colubri’s GSVideo library instead. On Linux, you’ll need to install gstreamer to use the new library. On Windows and Mac OS X, you should not need to install it, however we’re working out a few kinks in the whole process.

▪ Movie Maker – the MovieMaker class has been removed, because it was specific to QuickTime for Java. In its place there is now a Movie Maker item under the Tools menu, that helps you convert a file of frames into a video file. There isn’t a good library-based method to make this work, so it’ll probably stay a Tool rather than be re-incorporated into the video library.

▪ A new class called XML replaces the old XMLElement. With the change, you can call loadXML(“blah.xml”) from inside PApplet to read XML data. The rest of the API is the same as it was for XMLElement, except that getXxxxAttribute() is now just getXxxx(), for instance getIntAttribute() is just getInt() (to be more like the rest of the Processing API). Also added XML.parse(String) which returns an XML object from a String of XML data. Whitespace is preserved more consistently with the new implementation, which might require some changes to your code.


“D is for Diode” – Circuit Playground Episode 4 is out now! CLICK HERE TO WATCH!

Have an amazing project to share? Join the SHOW-AND-TELL every Wednesday night at 7:30pm ET on Google+ Hangouts.

Join us every Wednesday night at 8pm ET for Ask an Engineer!

Learn resistor values with Mho’s Resistance or get the best electronics calculator for engineers “Circuit Playground”Adafruit’s Apps!



No Comments

No comments yet.

Sorry, the comment form is closed at this time.