//Main function pels Joints. bool CPhysxSkeleton::InitPhysXJoints(const string& _szFileName) { CXMLTreeNode l_XML; CXMLTreeNode l_XMLObjects; if(!l_XML.LoadFile(_szFileName.c_str())) { LOGGER->AddNewLog(ELL_WARNING,"CPhysxRagdoll:: No s'ha trobat el XML \"%s\"", _szFileName.c_str()); return false; } l_XMLObjects = l_XML(1); int l_iNumObjects = l_XMLObjects.GetNumChildren(); for(int i = 0; i < l_iNumObjects; i++) { string l_szType; CXMLTreeNode l_XMLObject = l_XMLObjects(i); if(l_XMLObject.IsComment()) { continue; } l_szType = l_XMLObject.GetPszISOProperty("type" ,""); if (l_szType=="spherical") { AddSphericalJoint(l_XMLObject); } if (l_szType=="fixed") { AddFixedJoint(l_XMLObject); } if (l_szType=="revolute") { AddRevoluteJoint(l_XMLObject); } } return true; }
//Main function pels Joints. bool CPhysxSkeleton::InitPhysXJoints(const std::string& _szFileName) { CXMLTreeNode l_XML; CXMLTreeNode l_XMLObjects; if(!l_XML.LoadFile(_szFileName.c_str())) { LOG_WARNING_APPLICATION( "CPhysxRagdoll:: No s'ha trobat el XML \"%s\"", _szFileName.c_str()); return false; } l_XMLObjects = l_XML(1); int l_iNumObjects = l_XMLObjects.GetNumChildren(); for(int i = 0; i < l_iNumObjects; i++) { string l_szType; CXMLTreeNode l_XMLObject = l_XMLObjects(i); l_szType = l_XMLObject.GetAttribute<std::string>("type" , ""); if (l_szType == "spherical") { AddSphericalJoint(l_XMLObject); } if (l_szType == "fixed") { AddFixedJoint(l_XMLObject); } if (l_szType == "revolute") { AddRevoluteJoint(l_XMLObject); } } return true; }