Sunday, June 27, 2010

3D Game Sprites


I got this idea after playing a game called 3D Dot Game Heroes.

This is very easy to do in Houdini. I just found some sprite sheets from old 8-bit video games on the web. Then I just UV mapped them on a grid of points and copied boxes on them inheriting their point colors.

Basic Procedure

Sprite Sheet

Pick out a specific sprite

After I cropped out my chosen sprite, I needed to save the image as a TIFF or PNG to keep the Alpha channel. It comes useful later.

Houdini Network

VOPSOP Network

The image is UV mapped on to a grid of points. Then Color and Alpha point attributes are fetched from the image. If the value of Alpha is zero, the point is deleted, creating a cookie cut-out of points.

Boxes copied to remaining points

Dealing with Sizes

Grid SOP

The game sprites can vary in pixel size, width and height. To ensure that the grid will have the correct number of rows and columns, I brought the image into COPs and was able to fetch its size data using an expression.

16-Bit Sprite

Arcade Size

Guilty Gear vs Street Fighter

As technology advanced, game sprites became larger and could create more detail. Also a wider range of color values could be used. This might explain why earlier game character designs were more simple and used fewer colors. Like MegaMan, who still to this day retains the simple design he had way back. I think its interesting to see how the designers were able to do this stuff with such limited resources and still create something pretty entertaining.