Discovering The Secrets of the Spiderverse In Blender (pt 1)

Jackson Sears
4 min readDec 18, 2020

Here are 3 reasons that the spiderverse felt like a comic book, but was 3D.

DOF and Matte Buildings
DOF And Matte Buildings

1: Instead of the normal copying of real-world cameras that most 3D movies contain, SISV(short for Spiderman-Into the Spiderverse,) used a different technique. To convey depth, the further away something was, the more distorted or glitchy it was(see dof and matte buildings,) kind of like comic-book misprints. Also, instead of photo-real, high quality buildings that react to light and everything, they were actually matte paintings, simple 3D geometry with an emissive material that doesn’t react to light, with hand painted textures for each scene and lighting condition. So not million vertex displacement with 12 random shaders for each building, just handpainted textures.

Hatching and Halftone AND Lines

2: Another thing that Sony did to make it seem like this movie was a comic book was that they added a halftone pattern to the higlights and a hatching pattern to the shadows. They actually developed two Arnold plugins called Hatching and (I think) Halftone to be used in compositing. Also, in close to medium range shots, they added lines to show expression, using Houdini and machine learning with a library of expressions to predict what shots needed what geometry(yes, these lines were actually 3D geometry.)

WOW Spooderman Upside down YES
Just a picture

3: While the film was in 24p, the actual characters, but not anything else, were animated on 2s, which means that the characters movement updated every two frames in the film(I wish I had a gif to show you,) and that is really nostalgic for real 2D animation, which is usually animated on 2s to save time.

OK. Time to tell you how to do a few of these things in the Blender Compositor.

Step 1- pre-composite shading:

Ok for this I was using the stock Rain character from the Blender Cloud, but you can use any character in this technique. What I did to turn this character with realistic materials into more of a toon shader is using the Toon BSDF shader using the Cycles render engine, with the original albedo and roughness maps plugged into the color and size. I would recomend using the glossy setting for darker scenes like mine, and the diffuse setting for brighter scenes. On the Glossy setting just plug the original roughness map into the “Size” input, with a color ramp or map range node to control the values, and if you don’t have a map, just copy down the roughness value into that socket. If you are using the Diffuse setting then use the rougness map with and invert node, and if that doesn’t look qute right, use a color ramp to adjust the values.

Toon skin example

If you are using the Rain character like I am, I opted to keep the original hair material, and I would recommend that. It just gets batter results with a rim light.

Composite Setup:

Before we jump into the Compositor, there are only a few things you need to setup. I would first recommend to have the Node Wrangler add-on enabled. We are going to need an ID mask for the character, because, at least in my scene, I didn’t want hatching and halftone in the background. So I just selected all of the meshes for my character and gave it and ID value of 1.

The palace of IDs

The ACTUAL Compositing!

Now that that’s out of the way, you need two textures that you can make yourself with these two tutorials: hatching pattern, and halftone. They both need to be solid, unchanging patterns, and that halftone one requires some finicking to get right, so if you are havingt trouble, you can download both of mine here. But you probably want the halftone and hatching effects to be a little smaller than mine(I recommend that), soI would project your texture onto a 4, or even 8k canvas.

Bring the photo in using the image node in the blender compositor. Also ctrl-shift-click on whatever your working on to see it as backdrop. Make sure you have the shadow pass, depth pass and the denoising data enabled in the scene properties tab. Now you can recreate THIS. If you understand nodes you’ll understand this MESS. I was too overwhelmed to explain each step so…

MESSY

--

--