Archangel35757 Posted January 30, 2014 Posted January 30, 2014 Sorry, couldn't help myself with the title... it's a well known song in the South (American by birth... Southern by the grace of God )Song link: http://en.wikipedia.org/wiki/Dem_BonesOk... so @@DT85 suspects that the dotXSI exporter is contributing to "dem jittery bones" -- so I want this thread to document this investigation. This is what I plan to look into starting this weekend.
eezstreet Posted January 30, 2014 Posted January 30, 2014 @@Xycaleth suggests that the bones are jittering due to a loss of precision from the ghoul2 format itself. ...however. That wouldn't explain why JK2 base animations have no jitter whatsoever, and JA ones do.
Xycaleth Posted January 30, 2014 Posted January 30, 2014 @@DT85 How do you know it's the dotXSI exporter and not carcass?
minilogoguy18 Posted January 30, 2014 Posted January 30, 2014 I can export animations out of Softimage with no problems so I don't think it's carcass.
Archangel35757 Posted January 30, 2014 Author Posted January 30, 2014 I can export animations out of Softimage with no problems so I don't think it's carcass. And how/what are you using to verify your dotXSI output??? Regardless, I'm sure there's no issue with Softimage/Mod Tool output... since they made the dotXSI format
Archangel35757 Posted January 31, 2014 Author Posted January 31, 2014 There may be a couple things going on... but one thing I recently discovered is that the released dotXSI animations don't all have the same bone hierarchy-- especially out in the arms... and this could possibly be a factor since a bone inherits the transform of it's parent. Therefore, using @@DT85 's new Assimilate version... it's impprtant to make sure ROOT.xsi is always the first animation... Because carcass uses the first file to make the bone hierarchy. Also, I need to investigate nulls bound to a CS Biped versus a Max Bone rig. I intend to make some data plots of the animation data and overlay.
Tempust85 Posted January 31, 2014 Posted January 31, 2014 @@Xycaleth It seems less likely that both the 3ds Max .XSI importer & carcass are doing something funky and not the 3ds Max .XSI exporter. @@Archangel35757 The JKA GLA & the JO GLA have ROOT at the bottom.
Archangel35757 Posted January 31, 2014 Author Posted January 31, 2014 @@Xycaleth It seems less likely that both the 3ds Max .XSI importer & carcass are doing something funky and not the 3ds Max .XSI exporter. @@Archangel35757 The JKA GLA & the JO GLA have ROOT at the bottom.Yes, but it's the first file at top of list that is used to build the hierarchy. You could try the original dotXSI Exporter The dotXSI importer is broken as well-- since the resulting nodes retain their XSI coordinate system-- thus the scene you started with in 3dsMax and exported and then re-import has a 90° x-axis rotation on every node. I also don't want to rule out a few other things. So I plan to investigate a few things...
Tempust85 Posted January 31, 2014 Posted January 31, 2014 I imported it into Mod Tool and the jitter matches what I get in modview & 3ds Max (imported).
Archangel35757 Posted January 31, 2014 Author Posted January 31, 2014 @@DT85 -- Would you be willing to send me your null/biped skeleton? Unanimated in the root pose?And I would imagine that the half-precision GLA conversion would amplify the jittering you're seeing. DT also states, as one would suspect, that the jittering is worse/most notable at the end of bone chains (hands/ fingers, perhaps facial bones, etc.). @@DT85... so when you compile this animation-- are you using the original _humanoid.gla to compile against? Or are you creating your own skeleton (new .GLA)? And if you're making a new skeleton (.GLA file) then would you post the content of your model.car file so I can see which file Carcass is using to build the skeleton hierarchy. Thanks!
Tempust85 Posted January 31, 2014 Posted January 31, 2014 It's just the imported root.xsi just cleaned up (removing duplicate objects).
minilogoguy18 Posted January 31, 2014 Posted January 31, 2014 Yeah, having an issue with Softimage as far as dotXSI import/export is pretty much only depending on importing a file that came from another piece of software that doesn't do a good job of writing the format. I've never had a problem exporting and compiling anything. I have a run animation as well as a full set of animations for my AT-RT that have no problems. I've exported out multiple animations using my biped rig and haven't had a problem yet, everything worked in game just as smoothly as it did in Softimage. I'd say it's definitely your exporter since DT imported the same animation into Softimage and got the jitter.
Archangel35757 Posted January 31, 2014 Author Posted January 31, 2014 Yeah, having an issue with Softimage as far as dotXSI import/export is pretty much only depending on importing a file that came from another piece of software that doesn't do a good job of writing the format. I've never had a problem exporting and compiling anything. I have a run animation as well as a full set of animations for my AT-RT that have no problems. I've exported out multiple animations using my biped rig and haven't had a problem yet, everything worked in game just as smoothly as it did in Softimage. I'd say it's definitely your exporter since DT imported the same animation into Softimage and got the jitter. Yes, that is one of the possibilities... but it could also be other things. For another example of bone jitter see here: http://forums.cgsociety.org/showthread.php?t=1101737...and this fellow didn't mention exporting to dotXSI-- or exporting at all for that matter. But here's a case of "Dem jittering bones" when exporting to dotXSI back in 2007: http://forums.cgsociety.org/showthread.php?t=529802But the problem I get is when I've used Character Studio to rig and animate the character and export to XSI, the nulls jitter around - on the arms mainly. ...so this fellow was using a CS Biped and the Crosswalk plugin... so if it's with the exporter then it's been in there all along-- and carried over to Crosswalk. :blink: Also, there are some instances where using Position/Orientation Constraints and enforcing "Keep Original Offset" can cause problems... and I understand DT is using a Null skeleton constrained to a CS Biped. I've already stated that some of the released dotXSI files don't all have the same identical bone hierarchy. Carcass.exe uses the first file in the animation list as the hierarchy template... so I'm not sure how that would affect things during the GLA process-- if it isn't using your root pose as the hierarchy template. But DT mentioned he sees this jitter from the dotXSI imported into Mod Tool. Some precision/accuracy is lost by the very nature of converting from single-precision to half-precision... and there's nothing that can be done about that unless the programmers re-write the Ghoul2 format specification to be single-precision. So... I have to systematically analyze all possibilities and follow the process of elimination-- it could be a combination of things and not just attributed to a single item.
Tempust85 Posted January 31, 2014 Posted January 31, 2014 Let me elaborate more on my scene. I have the imported & cleaned up root.xsi nulls which I have the imported JO GLA nulls contrained to. I have used keep original offset for both position & rotation. I thought the constraints could be a cause, so I baked the animation to the root.xsi nulls and it still exports the same - jittery in places.
Archangel35757 Posted January 31, 2014 Author Posted January 31, 2014 Let me elaborate more on my scene. I have the imported & cleaned up root.xsi nulls which I have the imported JO GLA nulls contrained to. I have used keep original offset for both position & rotation. I thought the constraints could be a cause, so I baked the animation to the root.xsi nulls and it still exports the same - jittery in places.wait... I'm confused :wacko: You're saying you have a cleaned-up set of JKA nulls from importing the JKA root.xsi file? ...you did this using Max8 and the borked dotXSI importer? Or did you do this in Max 5 and the Raven importer (it's the only importer I would trust)? ...And you've then imported and constrained the JO GLA nulls to these JKA nulls? So you're not using a CS Biped anymore? Further, you imported these JO GLA nulls from a .GLA file (that has lost accuracy due to being converted to half-precision)? Have I understood you correctly? Out of curiousity, why don't you try exporting using Crosswalk and bring this into Mod Tool via Crosswalk? ...and see if the jittering is still present. Here's another interesting Google find: http://forums.relicnews.com/showthread.php?272018-Importing-animation-issueYes, this happens sometimes unfortunately. DOW2 animations are compressed and in order to produce the ANIM file, I have to decompress and play them in memory to get the transforms for every bone in every frame. The problem here (to my understanding at least), is that decompressed transforms might be slightly "off" for character studio biped. Biped has already constraints in place, which cannot be turned off, so when you try to apply a transform which is not possible from biped's point off view, bones might rotate in some random direction. That's what I think happens in this case. To fix this you can either:use normal MAX bones instead of bipedNote here that script imports MAX bones without any constraints set, so unless you create some IK chains for spine, limbs and tails, you can only use FK animation which might be somewhat painfull...fix animation by handTwitching should be quite noticable in curve editor, so fixing that would be a matter of moving some keys up and down. Reducing keys (either automatically or manually) to smooth out animation might also be of some help here. So this is a similar case of going from half-precision back to single-precision and trying to apply this animation back onto a CS Biped. DT85, on 30 Jan 2014 - 7:24 PM, said:@@Archangel35757The JKA GLA & the JO GLA have ROOT at the bottom. So the first file at the top of the anim_list is what is used as the hierarchy template: FACE_TALK0 (if I recall correctly?)... but then they didn't have your fixed-up Assimilate code that now respects the order in which animations are added... and so I'm just saying that the new root.xsi file should be the first one added so that the bone hierarchy is based on it. So, everything is on the table for investigating this jittery bone issue.
Tempust85 Posted January 31, 2014 Posted January 31, 2014 wait... I'm confused :wacko: You're saying you have a cleaned-up set of JKA nulls from importing the JKA root.xsi file? ...you did this using Max8 and the borked dotXSI importer? Or did you do this in Max 5 and the Raven importer (it's the only importer I would trust)? ...And you've then imported and constrained the JO GLA nulls to these JKA nulls? So you're not using a CS Biped anymore? Further, you imported these JO GLA nulls from a .GLA file (that has lost accuracy due to being converted to half-precision)? Have I understood you correctly? Out of curiousity, why don't you try exporting using Crosswalk and bring this into Mod Tool via Crosswalk? ...and see if the jittering is still present. Yeah I've always used the Max 6/7/8 .XSI importer, don't have Max 4/5 anymore. I believe that my issue is to do with the imported JO GLA nulls, and not with your exporter as I once thought so my bad on that one. You should experiment with exporting complex animations and see if there's any jitter in that XSI viewer, to rule out your plugin.
eezstreet Posted January 31, 2014 Posted January 31, 2014 I still suspect that the cause is XSI itself, possibly in crosswalk but I'm not sure where the fault would lie. As you'll note though, there is some jittering on base JKA that is completely absent from JK2 and the format hasn't changed at all between those two games, so I'm not sure.
Archangel35757 Posted January 31, 2014 Author Posted January 31, 2014 I still suspect that the cause is XSI itself, possibly in crosswalk but I'm not sure where the fault would lie. As you'll note though, there is some jittering on base JKA that is completely absent from JK2 and the format hasn't changed at all between those two games, so I'm not sure. Raven didn't use Crosswalk-- it didn't exist at the time. They exported from Softimage|XSI or perhaps 3ds Max 5 and using the Raven Max5 dotXSI exporter-- which I have and will also test out. Look at the bone hierarchy of JO Kyle and JA jedi_hm -- and you'll notice that the hierarchy is different... maybe this is a factor? @@DT85 -- I intend to analyze everything I can . I have a cleaned JO/JA Null skeleton I can send you if you like...
Tempust85 Posted January 31, 2014 Posted January 31, 2014 I'll replicate JO's hierarchy for JKA and see how animations such as both_wind go.
Archangel35757 Posted January 31, 2014 Author Posted January 31, 2014 @@DT85 -- just compile against the JO root.xsi (making new skeleton) and put it first in your list-- so it's the first file listed in your .car file... hmmm, I forgot about "face" node which is parent to all facial bones in JKA.
Tempust85 Posted January 31, 2014 Posted January 31, 2014 Tried putting JO Kyle's root.xsi and it made carcass crash. I then tried putting a copy of JKA anim source's root.xsi which compiled, but had a very different hierarchy to the base JKA models rendering them un-useable. Also, tinkering with the hierarchy in model.car and getting it to match JO's changed nothing in modview in terms of jitter.
Archangel35757 Posted January 31, 2014 Author Posted January 31, 2014 @@DT85 -- what, if any, animation interpolation settings are you using in MODView? Also, is the jittering present when you use Crosswalk to go straight to Softimage ModTool?
Tempust85 Posted February 1, 2014 Posted February 1, 2014 Tried with and without interpolation enabled. No jittering inside Max or Mod Tool.
Archangel35757 Posted February 1, 2014 Author Posted February 1, 2014 Huh? Can you clarify... So now the jittering is gone? Was this using: 3dsMax -> Crosswalk -> ModTool ??? Did you change your skeleton? With your old workflow is the jittering still present in MODView? "Throw me a bone..."https://www.youtube.com/watch?v=qZRAIJ6adWw ...thought this was funny-- since we're talking about bones. Hope everyone finds it funny as well.
Tempust85 Posted February 1, 2014 Posted February 1, 2014 Jittering was never present in 3ds Max, and it's not present in Mod Tool (using crosswalk). Jittering is in modview or when I import the .XSI animation into Mod Tool/3ds Max which was exported using your .XSI exporter. Doesn't matter if I bake the JO animation onto the 'game nulls' or just leave it constrained, I get the same result inside modview. I always get jittering in some form with any animation I make. I think it's either the XSI format or ultimately the Ghoul2 format compressing the shit out of everything. Does your exporter write out position keys when there aren't any keyed in Max? I'm grasping at straws here to find out what's going on.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now