What information is required in the animation .xsi?

Moderators: GSH, VSMIT, Red Devil, Commando

Post Reply
User avatar
TheJamsh
Bull Dog
Posts: 689
Joined: Sat Feb 19, 2011 5:49 pm

What information is required in the animation .xsi?

Post by TheJamsh »

Is it possible to remove all model data from an animation .xsi, and just have the animationset data? Will that still compile into the resulting mesh?

I suppose the best answer is to try it, but just wondering if anybody knows already.
Developer @ Stormtide
viewtopic.php?f=4&t=2350#p40547 << My UE4 Battlezone Project

ModDB - Battlezone II Unofficial Expansion Pack
User avatar
MrTwosheds
Recycler
Posts: 3059
Joined: Sat Feb 19, 2011 8:37 am
Location: Outer Space
Contact:

Re: What information is required in the animation .xsi?

Post by MrTwosheds »

I haven't actually tried doing that. But as far as I can tell none of the model data or envelope data is used from the extra animation models and is only taken from the primary model.
I have cutnpasted animations between models while utterly ignoring the state of the model content, However I find it simplest, from a model "archive" point of view, to always ensure that I paste the anims into a copy of the skel model actually used. Its all too easy to accidentally alter the model while animating it, or doing other things, having multiple copies of your working model stored in the animation xsi can be useful.
The Silence continues. The War Of Lies has no end.
User avatar
TheJamsh
Bull Dog
Posts: 689
Joined: Sat Feb 19, 2011 5:49 pm

Re: What information is required in the animation .xsi?

Post by TheJamsh »

MrTwosheds wrote:I haven't actually tried doing that. But as far as I can tell none of the model data or envelope data is used from the extra animation models and is only taken from the primary model.
I have cutnpasted animations between models while utterly ignoring the state of the model content, However I find it simplest, from a model "archive" point of view, to always ensure that I paste the anims into a copy of the skel model actually used. Its all too easy to accidentally alter the model while animating it, or doing other things, having multiple copies of your working model stored in the animation xsi can be useful.
That's my main reason for concern, I only ever fix my flame meshes in the _skel file, not all of the animations too. I guess copy & pasting into a copy would be the best way to keep my OCD-side happy.

Also, apparently vertex-animated meshes can only have one flame mesh. Just realised what was causing the second flame mesh of my Sabre to break. Not sure why this is...
Developer @ Stormtide
viewtopic.php?f=4&t=2350#p40547 << My UE4 Battlezone Project

ModDB - Battlezone II Unofficial Expansion Pack
User avatar
MrTwosheds
Recycler
Posts: 3059
Joined: Sat Feb 19, 2011 8:37 am
Location: Outer Space
Contact:

Re: What information is required in the animation .xsi?

Post by MrTwosheds »

Not sure about the flame mesh's, can't see any reason why that would be so. Is it, by any chance, the last frame/mesh in the xsi?
Last edited by MrTwosheds on Sun Jul 08, 2012 4:18 pm, edited 2 times in total.
The Silence continues. The War Of Lies has no end.
User avatar
TheJamsh
Bull Dog
Posts: 689
Joined: Sat Feb 19, 2011 5:49 pm

Re: What information is required in the animation .xsi?

Post by TheJamsh »

MrTwosheds wrote:Not sure about the flame mesh's, can't see any reason why that would be so. Is it, by any chance, the last frame/mesh in the xsi?
Yeah, only the first flame in the .xsi renders (flame_2, as opposed to flame_1. I don't think the suffix matters.). If any envelope data is present, goodbye second flame mesh. I've filed a bug report with a save game and map, but not sure if GSH will give it much attention at the moment.

Bit of a bummer though! I guess it makes sense, all stock Scion models only have one flame mesh as far as I can tell.
Developer @ Stormtide
viewtopic.php?f=4&t=2350#p40547 << My UE4 Battlezone Project

ModDB - Battlezone II Unofficial Expansion Pack
User avatar
MrTwosheds
Recycler
Posts: 3059
Joined: Sat Feb 19, 2011 8:37 am
Location: Outer Space
Contact:

Re: What information is required in the animation .xsi?

Post by MrTwosheds »

And if you open the xsi in 3dex does the animation bar appear? If not add a } on to the end of the
}
}
} at the end of the frame/mesh sequence and see if it works.
The Silence continues. The War Of Lies has no end.
User avatar
TheJamsh
Bull Dog
Posts: 689
Joined: Sat Feb 19, 2011 5:49 pm

Re: What information is required in the animation .xsi?

Post by TheJamsh »

MrTwosheds wrote:And if you open the xsi in 3dex does the animation bar appear? If not add a } on to the end of the
}
}
} at the end of the frame/mesh sequence
What I did was export the tank_skel mesh, and fixed the flames to be only a single polygon rather than tri's. Everything rendered just as you would expect.

As soon as I used Nielk1's envelope exporter, the second flame no longer renders. If I go into the .xsi manually and remove the envelope data, the flame re-appears again. I think it must be an engine limitation. It's damn strange though, I can't see a reason for it unless it was done purposefully.
Developer @ Stormtide
viewtopic.php?f=4&t=2350#p40547 << My UE4 Battlezone Project

ModDB - Battlezone II Unofficial Expansion Pack
User avatar
MrTwosheds
Recycler
Posts: 3059
Joined: Sat Feb 19, 2011 8:37 am
Location: Outer Space
Contact:

Re: What information is required in the animation .xsi?

Post by MrTwosheds »

I always check my animated models in 3dex, quite frequently the animation bar at the bottom of the screen will not appear. If this happens it is because there are not the right number of } at the end of the mesh list.
{ and } are the things that create the parenting, the model will still work with the wrong amount at the end.
add or subtract } from the end if the animation bar does not appear in 3dex. IE 3dex has not found the animation because the file structure is not closed out correctly.
Many model problems are caused by this. It is uncertain if meshbuilder reads the file the same way as 3dex, a missing } could break your flame, if it is the last mesh.

Hmm, The Animation bar is the thing that lets you run an anim in 3dex, If 3dex cannot run the anim it inconsiderately fails to display the animation bar at all...So you have to observe its absence in order to detect parenting/animation errors in your xsi.
Bz2 will quite happily build an xsi/mesh with this problem without error.
The Silence continues. The War Of Lies has no end.
User avatar
TheJamsh
Bull Dog
Posts: 689
Joined: Sat Feb 19, 2011 5:49 pm

Re: What information is required in the animation .xsi?

Post by TheJamsh »

Well, the _skel .xsi has no animations, just the envelopes for the animations
Developer @ Stormtide
viewtopic.php?f=4&t=2350#p40547 << My UE4 Battlezone Project

ModDB - Battlezone II Unofficial Expansion Pack
User avatar
Nielk1
Flying Mauler
Posts: 2991
Joined: Fri Feb 18, 2011 10:35 pm
Contact:

Re: What information is required in the animation .xsi?

Post by Nielk1 »

The XSIs contain the mesh in their animation files for the aid of the modder. The MSH merges the data from all the animations into one MSH with the mesh from the skeleton.

Basically, deal with it, it doesn't effect the MSH.
User avatar
MrTwosheds
Recycler
Posts: 3059
Joined: Sat Feb 19, 2011 8:37 am
Location: Outer Space
Contact:

Re: What information is required in the animation .xsi?

Post by MrTwosheds »

Tip:
Do have an animation in the skel file.
One each for every animated part, with 1 or 2 keyframes that don't move. This sets the default position for an animated model and allows bz2 to transition smoothly between animation states. For example, a walk animations with >2 legs. It is really hard to set up a good walk or run animation where the legs always start or stop in the default models position, the Skel animation allows bz2 to smoothly interpolate the animation from the default position to the walk initial position. without a static skel animation other complex motions will suddenly jump to the new position in that animation and look twitchy.

Because i'm the sort of daft modder who likes doing animation in notepad, I have got used to this parenting thing, and check all the models I make as habit. If one of my models does not do something as I expected it to, the very first thing I look at is the parenting in the xsi. All sorts of problems can be caused by this.
Stick a 1 key frame anim in the skel, then add or subtract } from the bottom of the last mesh with notepad, save and open in 3dex. when the animation bar appears, you've got it right.
The Silence continues. The War Of Lies has no end.
Post Reply