Sign in to follow this  
Tolito

Loading Blender Models and Animations

Recommended Posts

I was looking for a way to load Blender models into the buffer and manipulate them via the animation data stored within the .blend file. Has anyone written such a parser yet, or would it be best for me to write an OBJ loader? My main issue here is that I need a way to load joints between limbs (shoulder and forearm, for example) during rotations. Blender has no problem doing this, so finding something to use with it would be best for me.

I am strictly using C so C++ solutions such as Ogre3D are not going to suit it for me. Unless there is a C alternative for Ogre3D or anything similar, I plan to stick with gl.h for this.

Thank you!

Share this post


Link to post
Share on other sites
Thanks for the links! Very good! When you say to use my own format for a commercial project, are you saying to make Assimp use the custom format, or to drop Assimp altogether?

I just did a [b]reputation++;[/b] for you, by the way!

Share this post


Link to post
Share on other sites
Use Assimp for now. In the future, when you have animations up and running, you do it in three steps:[list=1]
[*]Use Blender, or Maya, or something else, to make an animation.
[*]Create a special small program, based on Assimp, that loads the animation and converts it to a special format that is tailored to your needs.
[*]The main application then load these special file formats only.
[/list]
You don't really need to worry about this now. When you have everything up and running, then you know better exactly what data structures are needed for your application. The advantage of Assimp is that it can load a lot of different formats. That makes it easier during the development phase. The disadvantage is using Assimp in a commercial product. It is overkill to include a general purpose library. It may also be that you don't want your models to be available in easy-to-copy formats in the application you distribute.

Thanks for the rep++, I also use it whenever someone writes something that is useful to me. Edited by larspensjo

Share this post


Link to post
Share on other sites
Thanks for that information. I have actually worked with custom formats before, so those are nothing new. My main problem is manipulating the entire model the way Blender does. It works in such a manner that the model appears to have joints with each rotation. In my experience in making other OpenGL applications, I had to work with hierarchy, which is no problem for me, but each part must be its own model and there are no joints. Do you know of a workaround for this, or a way to just include the Blender file loading from Assimp and not the whole utility? Also, I am getting a "Cannot find -lassimp" when trying to compile, so I would like some help finding a solution, if that is okay with you.

You're welcome, but don't mention it. There are not very many ways to say thanks via the Internet, so helping someone out with their reputation for every helpful post they make and saying thank you along with it is the least I can do. Thank you!

Share this post


Link to post
Share on other sites
[quote name='Tolito' timestamp='1347513664' post='4979591']
Also, I am getting a "Cannot find -lassimp" when trying to compile, so I would like some help finding a solution, if that is okay with you.
[/quote]
That depends a little on your development environment. If you use Linux Ubuntu, you can install Assimp as one of the standard packages. Otherwise, my installation is from the older 2.0 version, which I think has changed.

Share this post


Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this