3DMM Pencil++


Platform: Windows 9x/2000/XP
Language: C++ / Win32 API
Latest Version: v0.9.0.0
Time Frame: 2001-2006

3DMM Pencil++ is versatile (although somewhat esoteric) utility for examining and editing data files from the 1995 Microsoft Kids software title 3D Movie Maker (3DMM). 3DMM allows children/adults of all ages to create their own movies using a wide selection of pre-made 3D scenes, actors, props, sound effects and more. Even though this software is over 15 years old, it still maintains a community of users who grew up exercising their creative minds by making really cool movies with the program.

This utility allowed, for the first time, the ability for users expand 3DMM by creating/adding their own movie elements. This utility was a great exercise in the reverse engineering of a propriety file format and in user interface design. Much credit goes to Travis Wells for pioneering the reverse engineering effort, keeping good notes, and cracking the pesky compression scheme that was employed in the format.


  • Ability to export/import file sections to/from separate disk files
  • DLL plug-in interface for custom viewers/editors of file sections
  • Ability to view/edit scenes, textures, and theater video frames
  • Ability to view/edit scene pallettes.
  • Ability to view 3D models.
  • Handles both ASCII and Unicode (for Japanese 3DMM) strings

Screenshots (v0.9.0.0)

proj.pencil.1.png proj.pencil.2.png proj.pencil.3.png


Mirror 1 (


The original 3DMM Pencil (minus the ++) was written in Visual Basic 6.0, the only language I was familiar with at the time (circa 2001 / 8th grade). The poor performance of VB caused it to take sometimes 5 to 10 minutes to open larger files. This pushed me to venture into the world of C/C++. I spent a lot of time learning the language and the Windows API through books from the local library and online tutorials. Within about a year I had released the first version of 3DMM Pencil++, and built features onto it incrementally, including a plug-in system that allowed other developers to add on mini-editors for the many different internal formats.


proj.pencil.hist.hexometer.png proj.pencil.hist.vbpencil.png proj.pencil.hist.oldjp.png

1. One of the earliest screens of the original Visual Basic version, dubbed "Hex-O-Meter" because it started out as a simple hex viewer. It featured a tree view of the file hierarchy and section export capability.
2. A somewhat more developed version with a "Compression Mode" pulldown and now also import capability.
3. A much more developed VB version, translated into Japanese. The VB version was translated into a handful of languages, thanks to contributers from the 3DMM community.