Resurrecting Jot

You may be wondering who Jot is, and how I’m going to go about resurrect him or her? Of course, the question is not who Jot is, but what Jot is?

Back in 2002 there was a presentation by some talented people from Princeton University of a very interesting stylistic renderer at Siggraph. The images and videos they showed looked fantastic. Here was a renderer that could make your animated 3D models look like charcoal drawing or Greek vases in real time and with great artistic control.

But rather than I tell you about it, you can see for yourself.

As to resurrecting Jot, that is somewhat of a bigger task. In 2007 the source code for Jot was made open-source and posted here. As far as I can tell there has been no active development on it since 2007, or maybe even earlier, but luckily the compiled 32-bit Windows version of Jot still works, even on a 64-bit Windows 8 system and under Wine on Linux.

Wanting to see if I could get it to run natively on Linux, I downloaded the source code, and found there were lots of references to both Linux and OS X in it. While I’ve dabbled in quite a few scripting and programming languages through the years, I’m not much of a C++ coder. I tried getting Jot to compile on my 64-bit Ubuntu machine, but got stuck with integers loosing precision when being cast to different types (probably because int on 32 and 64 bit system behave differently). I’m sure it’s a relatively easy problem to solve for someone who knows C++, but the source code for Jot is not the easiest place to start for a complete n00b C++ developer like me.

Having failed miserably at getting Jot to run natively on my Ubuntu box, I decided to take a different approach. Since Jot came out ages ago (in computer time), the exporters that came with it were long out of date, so there was really no way of getting your models and animations into Jot, unless you happened to have an ancient version of Lightwave lying around. And there is really only so much fun you can have with the dancing cactus that comes with Jot, so I decided to try to write an exporter of my own. I mean, how hard can it be.

I dug into the Blender Python API, the Jot documentation and the .jot sample files, and began coding away. Blender was the obvious choice to make the exporter for, as it’s open-source and has a vibrant community of both artists and developers around it. Surprisingly quickly I had a copy of Suzanne up and running in Jot. After some further hacking away at the exporter, I now have a  working Jot Exporter for Blender. It supports meshes with modifiers, camera and animation, and can updated meshes without messing up the annotation you’ve done in Jot.

The next step is really up to you. If you’re an artist, try it out and make some cool stuff with it. While I may eventually find the time to learn enough C++ and math to keep working on Jot myself, it’s not extremely likely. So if you’re a developer that finds Jot fascinating, and have the time and skill, please get in touch. It would be very cool to see some of the technology from Jot integrated in Blender or Freestyle, or to see Jot itself come to live again.

“The report of my death was an exaggeration.” – Mark Twain

April 1, 2013

13 responses to Resurrecting Jot

Leave a Reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.