Blender 2D-to-3D Integration Tool

Tools: Blender, Python

Description: Developed a custom Blender tool to bridge the gap between 3D environments and hand-drawn 2D aesthetics. The tool automates the setup of a dynamic canvas that follows 3D targets while maintaining a constant orientation toward the camera, streamlining the workflow used in films like Spider-Man: Into the Spider-Verse.

The development focused on removing the friction of manual compositing 2D effects, replacing the use of Grease Pencil, which only allows 2D line strokes within Blender. We scripted a solution that instantiates a 2D drawing canvas at a target object’s origin, applies a COPY_LOCATION constraint for movement synchronization, and implements a TRACK_TO constraint to ensure the 2D effect remains visible to the camera regardless of perspective shifts. We also built a custom N-Panel UI which allowed users to easily use our tool by setting start and end frames, looping properties, and their animation. We met an issue of how to import GIFs (which support transparency) into Blender, and our current solution is to split it into an image sequence before importing. In the future, we plan to have the script automatically split animations for an even faster process. We aim to expand the tool to support automated depth-sorting (preventing 2D elements from clipping through 3D geometry) and a preset library for common 2D effects like speed lines and impact frames.

Credits: Jason Chen, Maci Boone, CGARP (Computer Graphics & Animation Research Projects)

Github: github.com