Page 1 of 1
Another question about the XSI exporter
Posted: Mon Apr 03, 2006 11:49 am
by Cebrian
Hi again! Now I'm having problems exporting animations with the XSI exporter. As I see in the release notes, the procedure has changed, and it looks like I need to put all the animations in the mixer track in order to export them. This is a time-consuming procedure given that I have hundreds of animations in some models, but anyway, even when I put some animations in the mixer, some are detected by the exporter, some don't.
Anybody can enlighten me about the correct procedure needed to export a model with a number of different animations?
Posted: Mon Apr 03, 2006 2:05 pm
by sinbad
Just placing the animations in the mixer should be sufficient. This is required now because it is impossible to identify shape animations anywhere else, and it's more consistent especially if you choose to overlap 2 clips in the mixer to make a compound animation - the exporter will now use this correctly, which it couldn't before.
Things to check - do you have more than one mixer? If you create 'Model' objects you can potentially have more than one mixer. The exporter should locate all the mixers in the tree, but this is something to check. I doubt this is the problem though.
Lastly, note that the entries displayed in the animation export window are the exporters best-guess at the animations you need. They are not definitive by any means - you can add rows to the table, change start & end times, whatever. The whole point of this way of exporting is that you are 100% in control of the animation - you can combine many clips and tracks however you like then sample them into animations of your choosing.
[edit]It may be that you need to regenerate the animation list to pick up new items you added to the mixer since you brought up the dialog the first time. Since you can alter the animation list yourself, the exporter does not replace it every time unless you ask it to, since otherwise it would lose your manual tweaks. Hit the 'Refresh' button if you want it to reexamine the mixers and regenerate the list[/edit]
Posted: Mon Apr 03, 2006 6:40 pm
by Captain Nemo
I have the same problem. I have 3 clips in the mixer, but only the first one is displayed in the list. Refreshing the list does not help. If I delete the first clip and refresh, only the second is displayed. I think there is definitely something wrong here. I can enter the clip names by hand though, that works. But for a large number of clips this is going to be tedious.
Let me know if you need the scene file for examination.
Posted: Tue Apr 04, 2006 1:39 pm
by sinbad
Yes, please send me an example.
Note that the reasons for changing the animation export to be based on the mixer rather than directly from clips include:
1. Direct clip export doesn't work for shape animation, since that is constructed 100% in the mixer by the animator
2. Without using the mixer it was impossible to combine clips to make a single animation, something which went against the principles of XSI's non-destructive ethos
3. You couldn't use the full mixer functionality as an animator, including clip weights, transitions and other features, limiting the way you built animations
You should get into the habit of placing your animations in the mixer when you're done creating them, and just moving on the timeline when you start making the next, if they're separate.
Posted: Tue Apr 04, 2006 2:30 pm
by Captain Nemo
See the email I sent you privately, with a description of some more problems.
BTW, I have nothing against using the mixer, I just wanted to point out some problems.
Posted: Tue Apr 04, 2006 5:44 pm
by sinbad
I replied to that email a while ago, didn't know it was you. All the problems there appeared to be because you were overlapping the clips in the mixer, although I haven't been home yet so I can't confirm that yet.
If clips overlap in the mixer, the automatic animation list construction will assume you intended to blend them together (there's no other reason to overlap them in the timeline) and thus assumes they will become one animation. This may well be the reason you're only seeing one animation.
If you use the mixer the way it's intended by XSI, you should never have more than one clip overlapping in the timeline unless you intended to combine them into a single animation. Any clear 'breaks' in the timeline are assumed to denote a new animation by the auto animation list builder, although you can of course override that.
Posted: Tue Apr 04, 2006 6:40 pm
by Captain Nemo
Hm, I did not get any email from you...
But in the meantime I tried to arrange the clips one after another in the timeline and got the same effect. I'll double check this tomorrow.
So are you suggesting to put clips always one after the other in the timeline, even if they are unrelated? What if you have 20 different clips? You will get a very long timeline...
I placed my clips each in a different track, because I wanted to be able to mute them individually while I worked on them, which you can't if they are all in the same track. And you can't play them individually in a loop, either.
Posted: Tue Apr 04, 2006 10:58 pm
by sinbad
Captain Nemo wrote:But in the meantime I tried to arrange the clips one after another in the timeline and got the same effect. I'll double check this tomorrow.
I tried your scene, and sure enough the clips were overlapped, which was the problem with your animation output. I'll look into why the animations divisions in the mixer aren't being detected properly in some cases.
So are you suggesting to put clips always one after the other in the timeline, even if they are unrelated? What if you have 20 different clips? You will get a very long timeline...
Yes, but this is exactly what animatiors do all the time. You don't have to view the entire timeline at once, XSI can easily just show you a portion of the timeline. It's also why the navigation keys like 'S' work in the animation mixer view too - allowing you to quick zoom and pan across your animation timeline to find things quickly.
I placed my clips each in a different track, because I wanted to be able to mute them individually while I worked on them, which you can't if they are all in the same track. And you can't play them individually in a loop, either.
Sure you can. Just isolate that section of the timeline by using the 'from' and 'to' fields on the left and right of the animation bar at the bottom of the XSI window, then you're only playing what's in that time section, and will loop around within it.
Dividing a timeline into sections for different animations is a time-honoured way of dealing with separate animations. I didn't use it for the first version of the exporter but it became clear later that not using the mixer was a mistake. This way animators work the way animators usually do, using the mixer, and yes the timeline gets long - but that's bread and butter for these guys - their mixers get a lot longer and more complex in something like a full commercial.
Posted: Tue Apr 04, 2006 11:27 pm
by sinbad
Ok, I've fixed the bug where animations would get merged together in the default list, there was an ordering assumption which was incorrect - it had worked for my tests but wasn't 100% guaranteed. The new auto detection separates them correctly in all cases now where the clips do not overlap.
Posted: Wed Apr 05, 2006 8:57 am
by Captain Nemo
Ok, thanks for the fix, Sinbad.
I can adapt to the workflow you decribe, no problem, although intuitively I would work differently. But I am not a professional animator, so what do I know...
But I suggest to describe the suggested workflow in the readme for the exporter, I think more people might stumble over this.
Posted: Wed Apr 05, 2006 3:40 pm
by Captain Nemo
Have you committed the fix, Sinbad? I can't find any relevant changes for the exporter modules in cvs head
Posted: Wed Apr 05, 2006 5:00 pm
by haffax
Not HEAD but, v1-2. Don't use HEAD now, it lags behind v1-2. Changes are merged into HEAD significantly less frequent during a prerelease period like now.
Posted: Wed Apr 05, 2006 10:49 pm
by sinbad
Anonymous CVS sync is disabled at the moment because of the Sourceforge CVS hardware fault over the weekend.
[edit]
This was the commit[/edit]