Horde3D

Next-Generation Graphics Engine
It is currently 29.09.2024, 00:20

All times are UTC + 1 hour




Post new topic Reply to topic  [ 7 posts ] 
Author Message
PostPosted: 16.05.2008, 00:14 
Offline

Joined: 15.05.2008, 05:32
Posts: 46
Location: California
I'm exporting from 3dsMax using the latest FCollada exporter. The character shows up in the scene and there are no errors or warnings in the log. However, the character does not animate like it does in 3dsMax.

Anything I should look out for when creating characters for Horde in 3dsMax? Some of the bones are mirrored with animation but not all.


Top
 Profile  
Reply with quote  
PostPosted: 16.05.2008, 00:49 
Offline

Joined: 19.11.2007, 19:35
Posts: 218
Did you tell the exporter to export the animation? The first time I used it, I overlooked that. Bake matrices as well.


Top
 Profile  
Reply with quote  
PostPosted: 16.05.2008, 04:20 
Offline

Joined: 15.05.2008, 05:32
Posts: 46
Location: California
Yes and yes.

If I force _softwareSkinning to true it animates but the framerate is very low.


Top
 Profile  
Reply with quote  
PostPosted: 16.05.2008, 04:24 
Offline

Joined: 08.11.2006, 03:10
Posts: 384
Location: Australia
If it works with software skinning, then the problem must be a limitation with the hardware skinning...

Do you use an excessive amount of bones (e.g. upwards of 60)?


Top
 Profile  
Reply with quote  
PostPosted: 16.05.2008, 05:05 
Offline

Joined: 15.05.2008, 05:32
Posts: 46
Location: California
Just 26 bones... the dude from the Crowd sample works fine so I think it's a data problem... I'm just replacing the resources loaded in the crowd sample.

I just stepped through the code in ModelNode::onPostUpdate() and the bakedTransMat matrices are different from frame to frame so... then what? hehe...

// Fast animation path
for( size_t i = 0, s =_nodeList.size(); i < s; ++i )
{
AnimResEntity *ae = _nodeList[i].animEntities[firstStage];
if( ae != 0x0 && !ae->frames.empty() )
{
uint32 frame = (uint32)_animStages[firstStage]->animTime % ae->frames.size();
_nodeList[i].node->getRelTrans() = ae->frames[frame].bakedTransMat;
}
}


Top
 Profile  
Reply with quote  
PostPosted: 16.05.2008, 08:02 
Offline

Joined: 15.05.2008, 05:32
Posts: 46
Location: California
I created a simple 4-bone link and skinned a cylinder. In ModelNode::onPostUpdate() I print out the matrix for the bones and they are animating. The cylinder/skin is not moving though :(

I must be missing something when

a. creating the data in 3dsMax
b. exporting using FCollada
c. converting using the Collada converter

Does anyone have an animation bone structure for 3dsMax that I can test? I've attached my fantastic tube so if someone could try on their end I'd appreciate it.


Attachments:
tube.rar [23.94 KiB]
Downloaded 553 times
Top
 Profile  
Reply with quote  
PostPosted: 16.05.2008, 08:18 
Offline

Joined: 15.05.2008, 05:32
Posts: 46
Location: California
Never mind! I was using the wrong shader of course :oops:

I need to automate all the data conversion before I go crazy :)


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 7 posts ] 

All times are UTC + 1 hour


Who is online

Users browsing this forum: No registered users and 22 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group