Processing is a programming language and environment built for the electronic arts and visual design communities. It was created to teach fundamentals of computer programming within a visual context and to serve as a software sketchbook.
Key Features Include:
- Interactive programs with 2D, 3D or PDF output.
- OpenGL integration for accelerated 2D and 3D.
- X-Platform for GNU/Linux, Mac OS X, and Windows.
- Over 100 libraries extend the core software.
Processing is a flexible software sketchbook and a language for learning how to code within the context of the visual arts. There are tens of thousands of students, artists, designers, researchers, and hobbyists who use Processing for learning and prototyping.
The software exports Java applets which may be posted on the Internet and shared with other artists and designers.
We've had trouble on Windows when MS Security Essentials or Windows Defender decides to defend your machine from our software, removing files from the download and making Processing unusable. A few extra checks have been added so that more helpful warnings can be conveyed when this happens.
The other important fix is better handling in the Contributions Manager for sites that use https. This fixes Python Mode installation, and many others that have recently started reporting "Could not find a ... in the
downloaded file" when installing a Library, Mode, Tool, or Example set.
Show alternate error message on Windows when jnidispatch.dll or core.jar have been removed by Windows Defender or Microsoft Security Essentials.
Contributed libraries/examples/etc that redirect to https URLs now working.
It's now possible to make your own theme file for Processing. Copy the theme.txt file from inside the Processing folder to your sketchbook folder, and then edit away.
It's now possible to copy the text of the status bar. Click the clipboard icon at the right-hand side to copy the text to the clipboard. To search immediately, use shift-click.
Added pyde as a supported extension, so double-clicking on Python sketches will launch the PDE.
Added Double and Long versions of the data classes. Not sure if we'll keep these, but we're trying them out.
Also add subset(long) and subset(double) to PApplet.
Changed the internal Sort class to use int for comparisons for better accuracy, especially when working with double and long values.
Consistently implemented write(PrintWriter) in the List and Dict classes.
Added save(File) to the List and Dict classes.
Prevent Table.sort() from throwing NullPointerException with empty cells.
Fixed up the Welcome dialog. When closing the window or hitting ESC, the "show this" selection is recorded. Also clicking that text will toggle the checkbox on/off, as users would expect.
Redesigned the Rename window to be less ugly. Now closes when ESC is pressed, and the default action is set so hitting Enter will work properly.
Rewrite exec() to do threads, also handle fast/excessive output cases.
Rewrite requestImage() to fix errors/slowness/concurrency problems.
Refactoring inside the completion code.
Now using Java 8u181.
Change lack of blendMode() to a warning rather than an error in PDF.
Updated the copyright and year in the launch and About screen.
Additional I/O improvements.
Fix regressions in 220.127.116.11.
OpenGL ES: Fix GLSL version number for 1.00.
Add ADS1X15 Analog-to-Digital converter example.
IO: pinMode() can now set pull-up and pull-down resistors on Raspbian.
Several new examples:
IO: New example sketch showing how to use a MPR121 capacitive touch sensor fun tutorial by @msurguy forthcoming.
IO: New example sketch showing how to use a BME280 environmental sensor.
IO: New example sketch showing how to use a TSL2561 light sensor.
IO: New example sketch showing how to use a PCA9685 Servo & PWM controller.
IO: pinMode() got faster.
IO: I2C now supports talking to slower devices, such as Arduino boards.
Support for ARM Mali graphics was added to P2D/P3D.
P3D now supports up to 4 lights on Pi using their OpenGL driver.
Serial library now supports Raspbian's port naming (such as "/dev/serial0").
Enable exporting of Windows applications on ARM.
Clarify SimpleInput example.
Various ARM-related updates.
Make P3D work on Linux SBCs using ARM Mali graphics and their ES 3.1 driver.
Updates to Japanese translation.
Added Russian translation.
Make "loadXML(String)" handle "file not found".
Update java.lang.UnsupportedClassVersionError message.
Semi-transparent colors do not display properly in PGraphics.
Fixed a crash occuring while loading certain SVGs exported from Illustrator.
Support PShape.contains() on GROUP objects.
Improve implementation of PShape.contains() to take the CTM into account.
Make sure the editor is updated after reloading changes.