Page 21 of 21

Re: Making better use of Ogre's capbilities?

Posted: 16 Aug 2012, 20:29
by jhooks1
Alright, I am going to start on fixing the problem with jittery animations.. I am unable to get the current master to work right now though, need to get it working first.

Re: Making better use of Ogre's capbilities?

Posted: 18 Aug 2012, 19:56
by jhooks1
After spending countless hours poking around with the code, I have gotten rid of the floating problem. Previously npcs were slightly floating about in areas they weren't supposed to; the ashzombie floated upwards at the end of its animation (made a video showing this). Last and current Values (Quaternions, Translations, and Rotations) were running one keyframe behind their iterator (which we accessed for time). I made a branch animationsmooth containing changes.

Unfortunately, the jerkiness problem remains. There is one more thing I wanted to try (NifSkope's time index function), but I don't think it will fix it.

Re: Making better use of Ogre's capbilities?

Posted: 18 Aug 2012, 20:26
by jhooks1
I spoke too soon. I got EVERYTHING working now 100 Percent :D :D :D :D :D :D .

There is no jitteriness/jerkiness now, and no floating of npcs and creatures when they are not supposed to. I committed the code to my animationsmooth branch, check it out.

This looks so much better, animations are just as smooth as they were before we used Ogre for animation. I highly recommend this goes into .17.

EDIT: Made a bug issue on tracker, set to 100 percent.

Re: Making better use of Ogre's capbilities?

Posted: 18 Aug 2012, 20:38
by Greendogo
Sounds awesome, great job Jhooks1!

Re: Making better use of Ogre's capbilities?

Posted: 18 Aug 2012, 20:43
by Zini
No last minute changes for 0.17.0 please. It can go into 0.18.0.

Re: Making better use of Ogre's capbilities?

Posted: 18 Aug 2012, 20:52
by jhooks1
Zini wrote:No last minute changes for 0.17.0 please. It can go into 0.18.0.
Ok, well the animations looked kinda bad and had issues before the change I just made.

Re: Making better use of Ogre's capbilities?

Posted: 19 Aug 2012, 21:06
by Chris
I'm not sure I quite understand how your code works. The way it used to work, it would take the latest [rot|trans|scale] key up to the current time index being processed, and the next [rot|trans|scale] key just after that, and interpolated between the two given the time. E.g.

Code: Select all

last------cur
      ^
   curtime
However, now it looks like it's taking the last key, and the one after the next one, e.g.

Code: Select all

last------(next)------cur
      ^
   curtime
It seems to effectively skip every other animation key. Why is this?

EDIT:
Uhg, I think I see (just after I posted that). I was incrementing the iterator after using it to get the cur value. Effectively,

Code: Select all

last------cur------(next)
                ^
             curtime
I'm surprised my code worked at all. :x

Re: Making better use of Ogre's capbilities?

Posted: 20 Aug 2012, 15:09
by Necrod
Have you tried checking how it looks with "better bodies" now? I remember it was completely messed up when you started working on this.

Anyways good job

Re: Making better use of Ogre's capbilities?

Posted: 21 Aug 2012, 21:35
by jhooks1
Necrod wrote:Have you tried checking how it looks with "better bodies" now? I remember it was completely messed up when you started working on this.

Anyways good job
I am wondering about this myself. I hope the part selection by NiTriShape name works. If it doesn't, it's back to the drawing board...

Re: Making better use of Ogre's capbilities?

Posted: 30 Aug 2012, 00:31
by jhooks1
Fix never got merged in.