import non skeletal animation to openGL via assimp

Started by
2 comments, last by ooxxao 7 years, 10 months ago
Hi, I'm a newbie in assimp and openGL. I'm trying to import .fbx or .dae formatted file to openGL via assimp.
Importing skeletal animation was kind of easy. Lots of introductions and sample projects helped me to run several files properly.
But, in case of none skeletal animation(does it named 'vertex animation'?), which has no bone, I can't find any of source, instructions, including assimp tutorials.
Is there any recommendable project for non skeletal animation? Any single comment will be helpful.
Thanks.
Advertisement

>> (does it named 'vertex animation'?),

mesh morphing might be more precise.

if its the method i think you're talking about, basically every frame (or keyframe if you tween) is a copy of the mesh in a different pose, usually set via a skeleton in a modeling package, then exported without the skeleton. as you can imagine, this is a rather data intensive way to do things, having multiple copies of the mesh in the animation data.

>> I can't find any of source, instructions

what are you using for skinned meshes with skeletons? home rolled code? if so, odds are you'll end up rolling your own for this too. many shops roll their own solution for animated meshes - or simply rely on a 3rd party engine or middleware library. i used DX sample code to make a skinned mesh middleware library for dx9. if i was supporting mesh morph animation, i'd roll my own if no turn key or near turn key official sample code existed.

Norm Barrows

Rockland Software Productions

"Building PC games since 1989"

rocklandsoftware.net

PLAY CAVEMAN NOW!

http://rocklandsoftware.net/beta.php

While assimp does support "mesh morphing" (or per-vertex) animation, almost no modeling software nowadays will produce animation data in that way for keyframed animations. Non-skeletal animation will simply animate the scene nodes by 3 channels (translation, rotation, and scale). There isn't any skinning so there will be no vertex weight data like there is with skeletal animation, but otherwise it's pretty much the same thing.

Actually, what I'm having trouble is 'assimp' import data structure which contains animation info (or, any single frame?) I have to access.
I can animate files with skeleton animation, or visualize static object without skeleton(only mesh object). But when it comes to non-skeleton animation, I just can't figure out where the animation is stored of the scene.
As I know, using assimp, in skeletal animation, the animation information is attached to bone(or part of bone). So, I think, non-skeletal animation which has no bone, would have different location of animation or abort to having animation. Which one is true? Is it possible to import non-skeletal animation through assimp? I need verification that assimp does import non-skeletal animation and example of that.
I've read some discussion about 'assimp & vertex-animation'. It says that couple of years ago, assimp didn't support vertex-animation. Maybe, assimp developers thought it was not that critical, so left it undone. In this case, interpolation from several obj file would be better than importing it from animation-containing-file.
If you knows about vertex-animation (non-skeletal animation) importing files via assimp, or other 3d file importer capable of vertex-animation to openGL, please let me know.
Any of the working sample file would be helpful mostly.
Thanks.

This topic is closed to new replies.

Advertisement