[Bf-committers] Proposed Armature replacement

bf-committers@blender.org bf-committers@blender.org
Thu, 27 May 2004 10:22:14 -0500


On 27 May 2004 at 11:46, Ton Roosendaal wrote:

> Hi Jeremy,
> 
> Although I really acknowledge the current system has lots of problems,  
> I also realize a character animation system isn't simple to design or  
> implement.
> 
> Compared to the initial design doc Reevan made (the coder of current  
> system) your proposal lacks a lot of general insight and structure...
> http://www.blender.org/modules/documentation/intranet/docs/develop/ 
> CharAnimDesign.html
Agreed. Of Course, I've only spent about three days on it so it will 
be getting more detailed.
> 
> I would propose you to start designing at top level, also based on what  
> we already know: the components Object, Ipo, Armature, Pose, Action,  
> NLA, IK, Constraint, etc.
> Analyze how the system works, how the compnents relate, and why the  
> limitations are as we know, and come with the list of improvements you  
> intend to implement. Like:
> 
> - having IK as builtin feature, not as Constraint
> - having Pose mode in two variants by default, forward and inverse  
> kinematic
> - soving the speed issue
> 
> Blender's architecture has its limits, but if applied well can help you  
> designing good code and a good UI as well. I'd like to see some 'lego  
> style' building block diagram, describing what the basic items are  
> artists will work with, and how they can use these blocks to construct  
> an animated figure.
I can come up with some of those building blocks right now just from 
my analyzing of the current system.
> 
> Reevan left the Armature system quite messy yes, but he cannot be  
> really blamed for that. Besides the time pressure, he also was pushed  
> to (first) make the system work with realtime (game) characters, which  
> have much simpler skeletons and which explains why the Armature  
> animations are evaluated based on redraw (efficient for games).
> He worked on this long days, and for several months. Although he wasn't  
> a very experienced coder then, he certainly is an excellent character  
> animator.

Perhaps one of the questions to be asked is does blender want to 
continue to support mostly game animation or expand the tools to 
eventually be useful for Movie animation?
> 
> Recently, while trying to fix some bugs in the NLA and Action window,  
> the most striking issue (for me) is how the total workflow is  
> frustrated with all the small missing details, missing visualizations  
> and missing conventions to make it 'feel' like Blender. The workflow  
> for Armature animation is totally hidden, and impossible to sort out  
> (for me!) without reading the docs again. This is not so much an  
> architecture issue, but mainly something a couple of devoted coders  
> could maintain and polish, just smoothing out all annoying details.
> Apart from solving the speed issue (which is wrong evaluation code) I  
> think the general GUI access & visualization is most urgent to solve.  
> Even when it means the underlying code needs a full revision.

A lot of the GUI issues would be fairly easy to fix I think. Workflow 
needs a lot of improvements.
> 
> Lastly; this is meant as a constructive contribution, so don't throw  
> your work away. Not everyone likes writing long architecture docs or  
> reviews, and sometimes ideas just mature better when you can play  
> around with the basic code first. You'll have to choose your own  
> roadmap for it. :)
I'm not going to throw it away. It's a long term improvement idea. 
Armatures could be much more powerful and intuitive than they are 
right now. Even Game Skeletons are becoming more and more complicated 
these days. I firmly believe Blender could become a favourite for 
animators if it had an intuitive and complete armature system. 
> 
> -Ton-
> 
> 
> On Wednesday, May 26, 2004, at 06:24 Europe/Amsterdam,