Silverlight Tip of the Day #98 – Creating Sprites from 3D Models - EnvyGames
I recently stumbled across a cool tool by EnvyGames that allows you to generate sprites from 3D Models and their animation files. This tool, called SpriteWorks, is ideal for creating high quality sprite animations and one that I’ll be adding to my arsenal of game development tools for Silverlight. Since Silverlight does not yet support 3D models, sprite animation is really the only way to go.
On a side note, EnvyGames is also working on a Silverlight Game Engine. For a complete list of features visit this link: http://www.envygames.com/content/?page_id=327. A beta is due out in a number of weeks.
Once you have installed SpriteWorks make certain to have the following installed or the tool will not work:
- Microsoft Visual Studio 2008 or Microsoft Visual C# Express 2008.
- Microsoft XNA 3.0
SpriteWorks currently supports importing the following 3D file formats:
- DirectX (.X)
- Torque Game Engine (.DTS)
- Autodesk (.FBX)
This tool is still undergoing improvements and fixes and I would recommend using it with Torque models for the best result.
I will now give a quick overview on how the tool works. Start by launching SpriteWorks, Click the Browse button and choose your 3D model. In the left pane a preview of the model will appear.

If your model doesn’t appear at first click the Camera tab and adjust the Camera Angles and Position until the model is centered in the preview window.
Next click the Model tab and open up your Animation Sequence file. You can click the Play button to preview the animation.
Finally, when you are ready click the Output tab. Enter the Output File Name, check the “Animate this model” checkbox and click the “Create Sprite Sheet” button.
The tool will start taking a snapshot of each animation frame.
The tool will go up to 52% and sit there for a minute or two before completing. Be patient here, the tool has not hung!
The result is a PNG file that has each sequence of the animation in it:
Thank you,
--Mike Snow
Subscribe in a reader