perhaps it is a problem in my eyes !?

You are an experienced programmer and have a problem with the engine, shaders, or advanced effects? Here you'll get answers.
No questions about C++ programming or topics which are answered in the tutorials!
Post Reply
n3wg4m3d3v
Posts: 7
Joined: Mon Jul 25, 2005 7:24 am

perhaps it is a problem in my eyes !?

Post by n3wg4m3d3v »

Hi everybody

Before everything sorry for my poor english.
I try animate a lot of human models(.md2 or .x files) in irrlicht but I see a jump between first and last frame in every loop.You can see this problem in all movement that need a loop.It cause an asymmetric animation(for example in a walk,movement of right leg is correct but for left leg in end of loop,you see a jump).I see this problem in ogre too(skeletal_animation demo) and also after use mesh viewer in directx sdk.
I think irrlicht don't render frames between last and first frames that needed for a soft movement.
How we can avoid this?
Of course I think irrlicht developers must add a new feature for solve this problem.

Thanks in advance.
xtheagonyscenex
Posts: 131
Joined: Fri Jun 03, 2005 7:26 pm

Post by xtheagonyscenex »

"Held in Your arms but too far from my heart." "These thoughts will carry me through the darkest nights...while your eyes rest in mine."
"How quickly I forget that this is meaningless."
Guest

Post by Guest »

Thanks xtheagonyscenex
But they can't help me.
It seems I have to explain it more.
Before everything see below images.

frame 1 for simulate sydney's run (first frame)
Image


frame 6(last frame)
Image

I used quark to open sydney.md2 file.Quark can be used to build or modify BSP , MD3 or MD2 files - http://www.sourceforge.net/projects/quark -
You can see in images that model have 6 frames for simulate run movement. Do you see in irrlicht only 6 frames for sydney's run ? Certainly your answer is NO. Because for example irrlicht render between frames 1 and 2 several other frames for a soft movement.
You can see problem only when irrlicht switch from last frame(6) to first(1).In this case irrlicht don't render frames between them and after last frame quickly display first frame.This cause a jump and asymmetric movement.If you attention enough you can see this problem(focus on left leg).Even in hello world example you can see a jump in movement.
I think this problem can be solved only with recode core of engine.
Please after review examples with enough attention say to me 'do you see this problem ?'
This is a general problem in engines like irrlicht,irrlichtnx,ogre - http://www.ogre3d.org - and ...
n3wg4m3d3v
Posts: 7
Joined: Mon Jul 25, 2005 7:24 am

Post by n3wg4m3d3v »

Sorry .I sent previous post but without my username because I did't log on automatically.
delscorcho
Posts: 12
Joined: Tue Aug 23, 2005 10:26 pm

Post by delscorcho »

Perhaps you can modify the md2 code to interpolate between the last and first keyframes during a loop. Sounds like it doesn't do it by default... but perhaps there's a flag you should be setting? I'd have more insight, but I haven't used the md2 stuff in irrlicht.
dhenton9000
Posts: 395
Joined: Fri Apr 08, 2005 8:46 pm

Post by dhenton9000 »

When I create my animations I animate my walk cycles to 31 frames, where frame 1 and 31 are identical. I then package frames 1 to 30. so that the last frame and the first frame aren't identical, but should blend in better

HTH
n3wg4m3d3v
Posts: 7
Joined: Mon Jul 25, 2005 7:24 am

Post by n3wg4m3d3v »

Thanks
Your advices are very usable and I think they can help me for solve problem.
Of course I saw source of irrlicht but I couldn't find a flag for this purpose and I'm not a good c++ programmer.
I send a request to Nikolause.Perhaps he add a flag to solve this problem.
Post Reply