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
.
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.
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.
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.