Granny 3D

Granny Development History

Changes for 2.8

2.8.2.0 dag_beta 2008/07/03

2.8.1.0 dag_beta 2008/05/30

Hot fix for three serious bugs, one in the exporter, one in the Motion Extraction on Sony platforms, and a looping artifact fix for SPU sampling. Please also read the note for 2.8.0.0, everything there still applies, we're still in open beta on the DAG tool, and looking for feedback!

2.8.0.0 dag_beta 2008/05/19

Welcome to Granny 2.8! This is the first public release of the new Blend Graph Editor. Please let us know what you think of the beta tool, and send us suggestions for improvements, either in the tool, or in the runtime API!

Changes for 2.7

It's been a busy 2 years since the last minor version bump. As is the custom, we're going to use up a couple hundred bytes here to underline some of the major changes that Granny has undergone since the 2.6 release series. As always, the best way to keep up with Granny is to read the changelog as it is published, but let's hit the highlights.

The top line feature for our PS3 customers is that Granny now supports asynchronous sampling on the SPUs using mulitple SPU threading models. This is a fully general replacement for the PPU based GrannySampleModelAnimations family of functions. Each SPU is able to handle an animation workload in excess of the PPU in our tests, so with just part of 1 SPU, you may be able to completely eliminate animation from your profile on the host processor.

For both the Xbox 360 and the PS3, we've added Altivec math routines for building final poses, and custom code to decompress the most important curve types. Every significant LHS stall and fdiv/fsqrt has been profiled, and where feasible, eliminated.

New platforms added in this release series include Intel-based Macs, which use the same optimized routines as the mature Win32 target, and the Nintendo Wii. Early in 2.7, Granny added x64 support, and the file processing routines got an upgrade to make moving files between 32 and 64 bit platforms seamless.

The Granny Preprocessor is now a full-fledged, production ready tool. Out of the box, it supports 26 of the most common runtime preparation operations that most people need to get their content out of Max or Maya, and into their game. The Preprocessor was rewritten to make it absolutely trivial to drop in your own operations.

Continuing our goal of "Granny Everywhere", we've added support for 3 new versions of 3ds Max (9, 2008, and 2009) and 2 new versions of Maya (8.5 and 2008). For the first time, XSI (versions above 5.11) are now supported! Along with the x64 runtime upgrade, we now support the 64-bit versions of the DCC packages.

In all of these tools, data extraction has been improved. We now support animation of Camera, Light, and Material parameters through the same granny_vector_track mechanism used to support custom attribute animation, Max particle systems are detected and exported, and visibility tracks are made available to you in the runtime. Morph modifiers (Morpher in Max, BlendShape in Maya) are now directly supported, allowing you to extract and animate morph animations directly from the DCC package. We've added support for the triangle annotation features found in Max, making it possible to associate arbitrary bits of data (strings, floats, bools, etc) with the triangles of your mesh. To make the exporter easier to automate, there are new scripting tutorials targeted at each DCC package. In addition, all of the Granny script commands in each package are now self-documenting.

The Granny Viewer has received a few tweaks as well, some of the more useful features for artist workflow:

All of Granny's tutorials underwent a complete rewrite to isolate and explain one Granny concept. New documentation in addition includes the Recommended Asset Pipeline, which can help you avoid some common pitfalls in setting up your export and processing toolchain.

2.7.0.34 final 2008/04/21

2.7.0.33 release 2008/03/24 2.7.0.32 release 2008/03/13 2.7.0.31 release 2008/02/12 2.7.0.30 release 2007/12/01 2.7.0.29 release 2007/11/21 2.7.0.28 release 2007/11/12 2.7.0.27 release 2007/10/29

This release corrects two serious errors that were recently called to our attention. It is strongly recommended that you upgrade to this version if possible.

2.7.0.26 release 2007/09/26

Granny now supports SPU sampling on the PS3! Since this is the first public release of the SPU code, we're asking (pretty please!) that you send us feedback if you use the new sampling paths. The new documentation section SPU Sampling Support details how to setup and sample animations asynchronously on the SPU.

2.7.0.25 release 2007/08/08 2.7.0.24 release 2007/07/09 2.7.0.23 release 2007/06/06 2.7.0.22 release 2007/06/05 2.7.0.21 release 2007/05/17 2.7.0.20 release 2007/05/14 2.7.0.19 release 2007/04/26 2.7.0.18 release 2007/03/29 2.7.0.17 release 2007/03/22 2.7.0.16 release 2007/02/27 2.7.0.15 release 2007/02/05 2.7.0.14 release 2007/1/16 2.7.0.13 release 2006/12/19 2.7.0.12 release 2006/12/04 2.7.0.11 release 2006/11/3 2.7.0.10 release 2006/10/24 2.7.0.9 release 2006/10/10 2.7.0.8 release 2006/9/29 2.7.0.7 release 2006/9/26

2.7.0.6 release 2006/8/24 2.7.0.5 release 2006/7/26 2.7.0.4 release 2006/6/16 2.7.0.3 release 2006/6/05

2.7.0.2 release 2006/4/10

2.7.0.1 beta 2006/3/28

Changes for 2.6, 2006/4/4 [Final build was 2.6.0.16]

Granny 2.6 saw dramatic improvements in the size of compressed curves, improvements to the Level of Detail system, several new supported platforms, the introduction of the preprocessor, and another changing of the guard.

Compressed curves, introduced early in the 2.6 series have dramatically improved Granny's runtime footprint. In many test cases, we've seen over 50% reduction in curve memory for the same error target, with no changes required by client code or in the exporter. Late in the series, we added curve types that reduce the space required to store curves that have only a uniform scale component or a scale with no shear component, making squash/stretch type animation much more practical.

The other big news is the introduction of the Granny Preprocessor which will help you integrate Granny into your production pipeline, and perform common transformations on your Granny data automatically, quickly, and scriptably. We'll be focusing a lot of development effort on the preprocessor in coming releases. We've all got more content to deal with these days, we need tools to make it easier.

The Animation LOD system received stability tweaks, and tighter integration with the sampling APIs. Towards the end of the release series, a new LOD option, Skeletal LOD was introduced, which can be used to good effect with very little effort in your pipeline. Both systems dovetail nicely, and the preprocessor will begin to help you handle LOD easily in coming releases.

Finally, on the "Granny Everywhere" front, we added support for the Xbox 360, PSP, Playstation 3, Maya 6.5 and 7, and 3DSMax 8.

2.6.0.16 final 2006/4/4

2.6.0.15 pre-release 2006/3/9

2.6.0.14 pre-release 2006/2/17 2.6.0.13 pre-release 2006/1/23 2.6.0.12 pre-release 2006/1/16 2.6.0.11 pre-release 2006/1/11 2.6.0.10 pre-release 2005/11/17 2.6.0.9 pre-release 2005/09/21 2.6.0.8 pre-release 2005/09/14 2.6.0.7 pre-release 2005/09/08 2.6.0.6 pre-release 2005/07/25 2.6.0.5 pre-release 2005/07/12 2.6.0.4 pre-release 2005/07/06 2.6.0.3 pre-release 2005/06/16