最終更新:2013-06-11 (火) 15:04:34 (3965d)  

Processing 2.0
Top / Processing 2.0

http://wiki.processing.org/w/Changes

The Big Stuff

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 "Java", "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.

XML

  • 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. To load an XML file, use the following syntax:
    XML xml = loadXML("fancy.xml");
    do not use:
    XML xml = new XML("fancy.xml");
    unless you want to do exception handling while loading. It's there for advanced users, but not recommended for most. The latter version is not supported, and not officially part of the Processing API.

Table

  • A new Table class has been added, making it easy to deal with comma- or tab-delimited data files such as a spreadsheet. More on this later.

Applet

  • Java Applet support is being removed, starting in 2.0 alpha 7. It simply doesn't make sense to support these anymore, given our priorities, lack of web browser support, and I don't have any time to support them. A steady parade of issues like this one, while browser makers and OS vendors make applets all the more difficult and unappealing is a losing battle and life is too short for such things. It's an unfortunate change, but simply the reality of where we're at. Applets were always an important, essential part of Processing because it was important to be able to make your work available online. At the moment, using Processing.js (or Processing 1.5?) is instead generally a better option for things that run on the web. (And before anyone asks, no, we will not be adding JNLP? support in its place. If someone wants that, they should write a JNLP Export Tool.)

Better 32 and 64-bit support.

  • We now support separate 32- and 64-bit libraries and have added separate 32- and 64-bit versions of the Processing download. On Mac OS X, you can even select which mode you'd like to use. On Windows and Linux, you'll just have to use the 32- or 64-bit download to run in that mode. Using 32-bit on a 64-bit Linux machine may require installation of some compatibility libraries for your distribution.

参考