Strange things you can do with software on the weekend: Part 2

Mischief with mischief — exporting impossible vectors

Matt Fannin
7 min readDec 8, 2018
Almost a memory

Breaking things is always fun. I suppose that isn’t strictly true, especially when it isn’t on purpose — but certainly breaking stuff intentionally is always a good time. Unless I suppose the broken thing doesn’t actually belong to you, and you’re just trying to prove it can be damaged — then I guess it isn’t exactly fun for everyone …

I’ve always had a fascination for breaking things and putting them back together. Limitations I think help surface interesting ideas. When it comes to trying out new tools I love testing those limits. What can this be used for? What can’t it be used for? If it can’t, would it be better if the limitation didn’t exist, and how can I get around it?

Mischief quietly made its fame a few years back with a small but enthusiastic community of artists excited by the possibilities of computer assisted knee surgery. Wait no, by the possibilities of Adaptively Sampled Distance Fields which can be used to unify the representation of shapes, integrating uncomplicated structural quality reconstruction techniques into artistic organic form volumes, and high order functions.

Here’s a dog I painted to keep you interested.

Okay I’ll be honest, this jargon is mostly a ploy to keep you interested.

Really though, at the heart of Mischief is a technology called ADF. Originally created as a way to efficiently store complex shape information (such as a knee), it’s now used in the Saffron Type System (found in your Kindle), and more recently inside new sculpting tools — an apparent attempt to the bring its 3D capabilities to mass market.

What has this got to do with anything, and how did we get here from breaking things? Well, you could in some ways argue that Mischief is in fact already broken, as it’s no longer receiving active development effort:

Mischief is only getting the critical updates needed to keep it running.

With no significant updates in recent memory, the once active Mischief community has been dwindling for a while. Why on earth would I be writing about a piece of software that currently appears dead in the water? Who wants to read about that?

Well, Mischief, and the technology behind it, to me is really remarkable. At the time of writing, I don’t know of any other vector based painting tool featuring an infinite canvas and no resolution limit. While I’m sure this doesn’t necessarily mean there are none, I think it’s safe to say they’re rare.

The first notable thing is the sheer usability and non-existent learning curve. In other tools you spend significant time thinking about stuff like configuring your canvas to accomodate your artwork. In Mischief, you open the program and you start. That’s it.

Unlike tools such as Photoshop, I don’t have to wade through tons of brush variations, or be constantly distracted by thousands of widgets and buttons on an ancient spaceship dashboard. Everything just fades away, leaving you with a few simple brushes, a colour picker and your own artistic ability.

This all means I can draw whatever I want, wherever I want, for as long as I like in any direction, at any scale, and I won’t ever run out of space. I can just let my mind wander and draw away to my heart’s content.

Or, at least on paper.

The promise of an infinite canvas with no resolution sure is romantic, but there must be some kind of limit, right?

I’d seen a lot of smaller drawings involving simple subjects, but never a very large detailed painting. I set out to see what level of detail you could pull off before everything fell apart.

After experimenting with a few smaller paintings, I discovered the limit is ‘stroke count’ — that is, the number of individual lines you’ve drawn. Hitting the limit was dangerous. Too far and the application would suddenly crash, sometimes destroying hours of work. Saving all the time didn’t help either — sometimes the file would save with no problem, but be completely un-openable the next morning. I’d successfully broken everything.

Wait a second, this sounds terrible. Why would anyone use such an unstable program? Despite the issues, the whole experience is still overwhelmingly addictive. Here’s a process GIF:

Process of painting ‘Almost a memory’

I discovered the eraser was contributing to my stroke count. Instead of using it, I opted to paint over top, or undo batches of strokes I wasn’t happy with before continuing. This let me take things much further before seeing any noticeable slowdown. To get around the file saving problem, I periodically created backup versions of the file so I could fall back on those if it decided to not open (Mischief files are really small so this isn’t a huge issue).

This allowed me to paint a much bigger artwork, and I started spending hours getting lost inside tiny little details. Without realising, I began painting different areas at different ‘resolutions’, then finding the need to add detail in other places to balance everything out. It became difficult to step back and make sure the whole scene was still cohesive.

I also realised I had no idea when to stop. Eventually I did though, and as you saw earlier with the dog, here are some details hidden inside:

You definitely want to view these bigger.

So that was it. I had an enormous painting. The only thing left to do was to simply export it. Of course I had no idea where to start, so naturally, I went with 50000px wide.

Friendly export warnings.

Nope.

I didn’t really think that was going to work anyway, so next I used trial and error to work out the biggest possible export for my painting.

6500px wide. What? Not nearly enough. I compared my sad little export to what I could see by zooming and panning around in Mischief. It looked like I’d broken it again, except this time I started to get a bit nervous. I’d just spent countless hours of my precious life painting an infinite vector world inside a tiny little box, and now I had no way to get it out of there! I’d created an image that simply couldn’t be exported.

So of course, desperate, I started doing this:

The good life.

I made 18 narrow slices as big as I possibly could, and then stuck them all back together in Photoshop. The final size I managed was 22614px wide. Much better!

I wanted to let people pan and zoom around the image similar to the way I did creating it. I figured Figma had a really nice embeddable canvas — but I discovered all images are resized to 4096px on the longest side upon upload. This is no problem though if you just upload it in 24 pieces ...

You can take a look at the final work below. It takes a while to load the finer detail after zooming right in— but it’s well worth the wait!

Zooming and panning the embedded Figma document doesn’t work beautifully on mobile, so I recommend viewing on desktop for the best experience.

Almost a memory

By breaking it repeatedly, I got a good feel for the boundaries of what Mischief was capable of in its current state. Of course, I also experienced the pain of remembering what it feels like to get completely carried away in excitement and loose hours of unrepeatable work to a sudden application crash, but we won’t dwell on this point. The point is ultimately it gave me a small taste of how an experience (2D or 3D) without these limitations could feel. Like a window to another universe — an endless creative sandbox for us to explore.

You can find out a bit more about me over at my website here - mattfannin.nz

--

--