Hi FBX users/developers, I have been doing a warnings purge of the OSG in prep for the OSG-3.0 branch to be made tomorrow, and one area that is generating the bulk of the remaining warnings is the FBX plugin. These warnings might not be appearing on all platforms so I've included them below for others to review. I've fixed the warnings that I can do without knowing anything about the spefics of the FBX SDK, to fix the remaining warnings I really need those with some expertise in the FBX SDK to work out how best to resolve these warnings - some of the warnings look like they may well be highlighting potential bugs so I believe it'd be valuable to clean up before 3.0.
Warnigns are: [ 95%] Building CXX object src/osgPlugins/fbx/CMakeFiles/osgdb_fbx.dir/fbxRAnimation.o [ 95%] Building CXX object src/osgPlugins/fbx/CMakeFiles/osgdb_fbx.dir/fbxRCamera.o [ 95%] Building CXX object src/osgPlugins/fbx/CMakeFiles/osgdb_fbx.dir/fbxRLight.o /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRLight.cpp: In member function ‘osgDB::ReaderWriter::ReadResult OsgFbxReader::readFbxLight(fbxsdk_2012_1::KFbxNode*, int&)’: /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRLight.cpp:57:16: warning: enumeration value ‘eNONE’ not handled in switch [100%] Building CXX object src/osgPlugins/fbx/CMakeFiles/osgdb_fbx.dir/fbxRMesh.o /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRMesh.cpp: In function ‘int getVertexIndex(const fbxsdk_2012_1::KFbxLayerElementTemplate<T>*, const fbxsdk_2012_1::KFbxMesh*, int, int, int) [with T = fbxsdk_2012_1::KFbxVector4]’: /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRMesh.cpp:556:81: instantiated from here /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRMesh.cpp:77:5: warning: enumeration value ‘eNONE’ not handled in switch /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRMesh.cpp:77:5: warning: enumeration value ‘eBY_EDGE’ not handled in switch /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRMesh.cpp:77:5: warning: enumeration value ‘eALL_SAME’ not handled in switch /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRMesh.cpp: In function ‘bool layerElementValid(const fbxsdk_2012_1::KFbxLayerElementTemplate<T>*) [with T = fbxsdk_2012_1::KFbxVector4]’: /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRMesh.cpp:701:39: instantiated from here /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRMesh.cpp:60:5: warning: enumeration value ‘eINDEX’ not handled in switch /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRMesh.cpp: In function ‘bool layerElementValid(const fbxsdk_2012_1::KFbxLayerElementTemplate<T>*) [with T = fbxsdk_2012_1::KFbxColor]’: /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRMesh.cpp:702:38: instantiated from here /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRMesh.cpp:60:5: warning: enumeration value ‘eINDEX’ not handled in switch /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRMesh.cpp: In function ‘bool layerElementValid(const fbxsdk_2012_1::KFbxLayerElementTemplate<T>*) [with T = fbxsdk_2012_1::KFbxVector2]’: /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRMesh.cpp:704:43: instantiated from here /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRMesh.cpp:60:5: warning: enumeration value ‘eINDEX’ not handled in switch /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRMesh.cpp: In function ‘int getPolygonIndex(const fbxsdk_2012_1::KFbxLayerElementTemplate<T>*, int) [with T = fbxsdk_2012_1::KFbxSurfaceMaterial*]’: /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRMesh.cpp:739:61: instantiated from here /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRMesh.cpp:104:9: warning: enumeration value ‘eINDEX’ not handled in switch /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRMesh.cpp: In function ‘int getVertexIndex(const fbxsdk_2012_1::KFbxLayerElementTemplate<T>*, const fbxsdk_2012_1::KFbxMesh*, int, int, int) [with T = fbxsdk_2012_1::KFbxVector2]’: /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRMesh.cpp:122:68: instantiated from ‘FbxT getElement(const fbxsdk_2012_1::KFbxLayerElementTemplate<T>*, const fbxsdk_2012_1::KFbxMesh*, int, int, int) [with FbxT = fbxsdk_2012_1::KFbxVector2]’ /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRMesh.cpp:572:113: instantiated from here /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRMesh.cpp:77:5: warning: enumeration value ‘eNONE’ not handled in switch /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRMesh.cpp:77:5: warning: enumeration value ‘eBY_EDGE’ not handled in switch /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRMesh.cpp:77:5: warning: enumeration value ‘eALL_SAME’ not handled in switch /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRMesh.cpp: In function ‘int getVertexIndex(const fbxsdk_2012_1::KFbxLayerElementTemplate<T>*, const fbxsdk_2012_1::KFbxMesh*, int, int, int) [with T = fbxsdk_2012_1::KFbxColor]’: /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRMesh.cpp:122:68: instantiated from ‘FbxT getElement(const fbxsdk_2012_1::KFbxLayerElementTemplate<T>*, const fbxsdk_2012_1::KFbxMesh*, int, int, int) [with FbxT = fbxsdk_2012_1::KFbxColor]’ /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRMesh.cpp:595:98: instantiated from here /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRMesh.cpp:77:5: warning: enumeration value ‘eNONE’ not handled in switch /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRMesh.cpp:77:5: warning: enumeration value ‘eBY_EDGE’ not handled in switch /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRMesh.cpp:77:5: warning: enumeration value ‘eALL_SAME’ not handled in switch [100%] Building CXX object src/osgPlugins/fbx/CMakeFiles/osgdb_fbx.dir/fbxRNode.o /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRNode.cpp: In member function ‘osgDB::ReaderWriter::ReadResult OsgFbxReader::readFbxNode(fbxsdk_2012_1::KFbxNode*, bool&, int&)’: /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRNode.cpp:513:12: warning: enumeration value ‘eUNIDENTIFIED’ not handled in switch /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRNode.cpp:513:12: warning: enumeration value ‘eNULL’ not handled in switch /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRNode.cpp:513:12: warning: enumeration value ‘eMARKER’ not handled in switch /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRNode.cpp:513:12: warning: enumeration value ‘eSKELETON’ not handled in switch /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRNode.cpp:513:12: warning: enumeration value ‘eNURB’ not handled in switch /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRNode.cpp:513:12: warning: enumeration value ‘ePATCH’ not handled in switch /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRNode.cpp:513:12: warning: enumeration value ‘eCAMERA_STEREO’ not handled in switch /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRNode.cpp:513:12: warning: enumeration value ‘eCAMERA_SWITCHER’ not handled in switch /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRNode.cpp:513:12: warning: enumeration value ‘eOPTICAL_REFERENCE’ not handled in switch /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRNode.cpp:513:12: warning: enumeration value ‘eOPTICAL_MARKER’ not handled in switch /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRNode.cpp:513:12: warning: enumeration value ‘eNURBS_CURVE’ not handled in switch /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRNode.cpp:513:12: warning: enumeration value ‘eTRIM_NURBS_SURFACE’ not handled in switch /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRNode.cpp:513:12: warning: enumeration value ‘eBOUNDARY’ not handled in switch /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRNode.cpp:513:12: warning: enumeration value ‘eNURBS_SURFACE’ not handled in switch /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRNode.cpp:513:12: warning: enumeration value ‘eSHAPE’ not handled in switch /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRNode.cpp:513:12: warning: enumeration value ‘eLODGROUP’ not handled in switch /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRNode.cpp:513:12: warning: enumeration value ‘eSUBDIV’ not handled in switch /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRNode.cpp:513:12: warning: enumeration value ‘eCACHED_EFFECT’ not handled in switch /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxRNode.cpp:513:12: warning: enumeration value ‘eLINE’ not handled in switch [100%] Building CXX object src/osgPlugins/fbx/CMakeFiles/osgdb_fbx.dir/ReaderWriterFBX.o [100%] Building CXX object src/osgPlugins/fbx/CMakeFiles/osgdb_fbx.dir/WriterCompareTriangle.o [100%] Building CXX object src/osgPlugins/fbx/CMakeFiles/osgdb_fbx.dir/WriterNodeVisitor.o [100%] Building CXX object src/osgPlugins/fbx/CMakeFiles/osgdb_fbx.dir/fbxMaterialToOsgStateSet.o /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxMaterialToOsgStateSet.cpp: In member function ‘StateSetContent FbxMaterialToOsgStateSet::convert(const fbxsdk_2012_1::KFbxSurfaceMaterial*)’: /home/robert/OpenSceneGraph/src/osgPlugins/fbx/fbxMaterialToOsgStateSet.cpp:87:83: warning: comparison between ‘enum fbxsdk_2012_1::KFbxTexture::EUnifiedMappingType’ and ‘enum fbxsdk_2012_1::KFbxTexture::EMappingType’ Linking CXX shared module ../../../lib/osgPlugins-2.9.17/osgdb_fbx.so Thanks for any help you can provide resolving these issues, Robert. _______________________________________________ osg-users mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

