Thanks to Michael for putting on a great event and getting everything together at such short notice. Hopefully there'll be another one soon!
If you're the kind of (mainly 2d) graphics programmer that I am, the thing you find most attractive about Processing is the one-click publishing to make a webpage and show people what you've been doing. Everything else after that is a bonus.
If you're not that kind of programmer, and the web isn't your primary concern, then you should definitely check out LÖVE. It looks like they're having a lot of fun over there, and Lua is just nicely mind-bending enough but still familiar if you're coming from Java or Actionscript.
Edward Tufte, October 27, 2006:
"In choosing templates for workaday graphical productions, it is worthwhile to look for excellent, conventional templates. Conventional templates immediately solve a lot of graphical reading problems for the viewer of the display. But the classics are often classics because they are off-the wall, unconventional, idiosyncratic, one-off, brilliant, historically original performances. Tinkering with Minard's Napoleon's March is no better than an artist tinkering with Picasso's Guernica."
One of the sad things about using the OpenGL rendering option in Processing is the lack of control over line weights, caps and joins. This week I allowed myself to get distracted by this issue for a little bit too long, but I did succeed in solving it, at last:
I've put some code about line caps and joins in Processing & OpenGL up on Processing Hacks in case it's something that bothers you too. I've not tested it extensively so I'd welcome bug fixes and suggestions there, or in the comments here. One thing I'm interested in doing next is extending (or reimplementing) BasicStroke to generate shapes for thick polylines with varying line thickness. If that's something you've done before, please let me know.
I'm using Java's BasicStroke to generate the path outlines, and GLU's tesselators to generate a mesh that will fill correctly in OpenGL. I "borrowed" the code for the latter from Ben Fry's PGraphicsOpenGL font rendering – thanks Ben!
For any readers who don't know me, here is a brief overview of some of the things I have been involved with recently.
Is there an 'uncanny valley' for rendering quality? For our EngD group project, Sheep Dalton (Ovinity), Monica Martini (Martini Architects), Sean Varney (Soho Cyberscan / Framestore CFC) and I built a model of an Indian Temple and a non-photorealistic OpenGL rendering engine for use in desktop and immersive VR systems.
A social network visualisation for the students, alumni and staff who have been involved with the MSc Virtual Environments in the Bartlett (UCL's architecture school).
A series of pixel-exposure techniques using the Processing environment.
Whipping trees, a VRML world and a study in dynamic growth, responsive form and emergent spaces. Completed as part of Methods of Synthetic Construction 1. You can view all our VRML coursework on the course website. This work was significant for me because it involved taking what were effectively several small sketches (pieces of code) and combining them into a single piece of work, with a narrative and a sense of cohesion.
At Leeds University, I started the development of a Bio-inspired Evolutionary Agent Simulation Toolkit, a project initiated by Seth Bullock and ably continued by David Gordon (now of Framestore CFC). Whilst I was there, I also took part in a Bio-inspired Computing reading group, worked on an interface for playing poker against evolved neural-network players, and investigated the possibility of doing image processing with artificial life.