- fbx: forgot child links in transformation chains.
parent
4aac334358
commit
6efe9517f0
|
@ -164,6 +164,12 @@ private:
|
||||||
BOOST_FOREACH(aiNode* prenode, nodes_chain) {
|
BOOST_FOREACH(aiNode* prenode, nodes_chain) {
|
||||||
ai_assert(prenode);
|
ai_assert(prenode);
|
||||||
|
|
||||||
|
if(last_parent != &parent) {
|
||||||
|
last_parent->mNumChildren = 1;
|
||||||
|
last_parent->mChildren = new aiNode*[1];
|
||||||
|
last_parent->mChildren[0] = prenode;
|
||||||
|
}
|
||||||
|
|
||||||
prenode->mParent = last_parent;
|
prenode->mParent = last_parent;
|
||||||
last_parent = prenode;
|
last_parent = prenode;
|
||||||
}
|
}
|
||||||
|
@ -172,9 +178,10 @@ private:
|
||||||
ConvertModel(*model, *nodes_chain.back());
|
ConvertModel(*model, *nodes_chain.back());
|
||||||
|
|
||||||
// attach sub-nodes
|
// attach sub-nodes
|
||||||
ConvertNodes(model->ID(), *last_parent);
|
ConvertNodes(model->ID(), *nodes_chain.back());
|
||||||
|
|
||||||
nodes.push_back(nodes_chain.front());
|
nodes.push_back(nodes_chain.front());
|
||||||
|
nodes_chain.clear();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -433,7 +440,7 @@ private:
|
||||||
}
|
}
|
||||||
|
|
||||||
const aiVector3D& Rotation = PropertyGet<aiVector3D>(props,"Lcl Rotation",ok);
|
const aiVector3D& Rotation = PropertyGet<aiVector3D>(props,"Lcl Rotation",ok);
|
||||||
if(ok && Translation.SquareLength() > zero_epsilon) {
|
if(ok && Rotation.SquareLength() > zero_epsilon) {
|
||||||
GetRotationMatrix(rot, Rotation, chain[TransformationComp_Rotation]);
|
GetRotationMatrix(rot, Rotation, chain[TransformationComp_Rotation]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue