Computer graphics researchers at Cornell and Harvard have created software that will translate a character from a movie or video game, or even something you've created yourself, into a posable plastic figure manufactured by a 3-D printer. Eventually this capability might be built into games and other software, the researchers said.
The project by Moritz Bächer and Hanspeter Pfister of Harvard, Bernd Bickel of the Technische Universität Berlin, and Doug James, Cornell associate professor of computer science, was described at the SIGGRAPH conference Aug. 7 in Los Angeles and in the July 2012 issue of the Association for Computing Machinery journal Transactions on Graphics. The researchers displayed models they had made of characters created in the video game "Spore," which allows the player to evolve an alien creature, as well as an articulated model of a human hand.
A 3-D printer builds a solid object by scanning across a table and depositing tiny droplets of plastic or another material, then moving upward in tiny steps to add additional layers. Professional 3-D printers, used in industry for prototyping machinery, sell for $50,000 and up, but manufacturers are beginning to offer low-cost home versions. Meanwhile the researchers suggest that character printing might be offered as an online service or perhaps as a service by hobby stores.
In a game or movie all the computer knows about a character is the overall 3-dimensional shape of its outer surface or "skin." "All previous work on printing characters has just made solid shapes. Ours makes an articulated model," said James, who is a specialist on the animation of what the industry calls skinned characters.
The computer represents the skin as a lot of tiny triangles linked together. By examining the angles between the triangles it can find the bends. In effect it imagines a skeleton and figures out where joints should go. The user enters the process here, specifying which kind of joint to use. Elbows and knees get hinges. Torsos, tails and perhaps tentacles get ball and socket joints with what engineers call "three degrees of freedom."
The computer has a built-in description for each type of joint but must find the right size. The joint must be strong enough to support a particular part of the body, but "It might make the joint really huge so it sticks out through the skin, or collides with other joints, or it might be too small to print, so our algorithm has an optimization step to find the best balance," James explained. Finally, small bumps are added to the joint parts to create friction so that the figure will hold a pose.
To print a joint with moving parts, the 3-D printer deposits two different materials: a plastic that forms solid parts of the figure, and a temporary material that fills in what will eventually be empty spaces. This holds the figure together during printing, but the filler essentially turns to dust when the finished figure is first moved.
The software still needs refinements to handle some types of joints, the researchers said, and adding a flexible skin to cover the joints is a possible improvement. Some day, James suggested, it might be possible to build in motors and other actuators to create robotic figures that could "walk out of the printer when they're ready."
The work has been partially supported by the National Science Foundation. James received support from a Guggenheim fellowship and from Pixar.