

Joined: Sat May 13, 2017 10:35 am

Posts: 34

warrantyvoider wrote: spinal wrote:





Here is the FBXExporter project : FBXExporter.zip



If you want to compile, you will need to dowload the FBX SDK 2017 :

In the zip, you have the project file FBXExporter.vcxproj : you need to modify all paths "G:\exe\FBX_SDK\2017.1" by the path where you will have installed the SDK.

I have compiled with the build tools v12 which are shipped with VS 2013 (which the version I have started the project with). You may need to upgrade the project depending the version you have.



Regarding integration with the plugins, there is an issue with the dependencies : as you will see, the FBXExporter class depends on MeshAsset, FBSkeleton, Vector and possibly FBBone which all are in Plugin System. But the exporter in pluginSystem also depends on FBXExporter, which means there is a cyclic dependency.



So I'm not sure how you want to proceed with this. To make it work, the exporters classes should either be moved back to the mesh plugin or maybe the asset classes could be in their own dll project. Or maybe, you will a better idea



I can take care of it if you wish and repost the whole project working. Just let me know.



Cheers! Hey WVoider,Here is the FBXExporter project : FBXExporter.zipIf you want to compile, you will need to dowload the FBX SDK 2017 : http://usa.autodesk.com/adsk/servlet/pc ... d=26012646 In the zip, you have the project file FBXExporter.vcxproj : you need to modify all paths "G:\exe\FBX_SDK\2017.1" by the path where you will have installed the SDK.I have compiled with the build tools v12 which are shipped with VS 2013 (which the version I have started the project with). You may need to upgrade the project depending the version you have.Regarding integration with the plugins, there is an issue with the dependencies : as you will see, the FBXExporter class depends on MeshAsset, FBSkeleton, Vector and possibly FBBone which all are in Plugin System. But the exporter in pluginSystem also depends on FBXExporter, which means there is a cyclic dependency.So I'm not sure how you want to proceed with this. To make it work, the exporters classes should either be moved back to the mesh plugin or maybe the asset classes could be in their own dll project. Or maybe, you will a better ideaI can take care of it if you wish and repost the whole project working. Just let me know.Cheers!



well I will look into it, then I can tell more

UPDATE: so it took me a while to make a new FBX project from scratch, because stupid project settings like preprocessor flags, grrr... so i could test a few things and I see the problem, also how your code works. The solution is "simply" to move all the "convert to fbx format"-code to a c# class in pluginsystem, can be called FBXExporter as you suggested, and the actual functions to interact with fbx sdk (or better its lib) into the FBX CLR DLL (dunno how I gonna name it, FBXHelper I called my test project, but FBXExporter gets confusing if used many times on different things, namespace, class, later as variable name and another class in pluginsystem... nope, sry^^). So yeah, this could take a while (unless you want to do it) to convert the FBX dll into a wrapper dll for .Net, and then rewriting your code in C# in plugin system, but I'm on it^^ btw, that dll project will be seperate from the main project and all the plugin projects, because it needs the sdk as dependecy and I dont wanna upload 2x 80MB .lib files, so everyone could compile it. Instead I will give it an extra git repo, as I feel this will be reused again and ppl can download it + sdk and configure it themselfes

well I will look into it, then I can tell moreUPDATE: so it took me a while to make a new FBX project from scratch, because stupid project settings like preprocessor flags, grrr... so i could test a few things and I see the problem, also how your code works. The solution is "simply" to move all the "convert to fbx format"-code to a c# class in pluginsystem, can be called FBXExporter as you suggested, and the actual functions to interact with fbx sdk (or better its lib) into the FBX CLR DLL (dunno how I gonna name it, FBXHelper I called my test project, but FBXExporter gets confusing if used many times on different things, namespace, class, later as variable name and another class in pluginsystem... nope, sry^^). So yeah, this could take a while (unless you want to do it) to convert the FBX dll into a wrapper dll for .Net, and then rewriting your code in C# in plugin system, but I'm on it^^ btw, that dll project will be seperate from the main project and all the plugin projects, because it needs the sdk as dependecy and I dont wanna upload 2x 80MB .lib files, so everyone could compile it. Instead I will give it an extra git repo, as I feel this will be reused again and ppl can download it + sdk and configure it themselfes



Sure for making a separate project, that's also what I was thinking. Distributing the full sdk is prohibited by the license anyway.

I get it with the FbxExporter being everywhere, coded that a bit fast and was too lazy (and without much imagination) to rename as needed...



I will be happy to take care of this stuff myself since you probably have a million other subjects on your plate. I'm not sure though I see how you want to get rid of the dependency between the CLR dll and the Mesh/Skeleton/Vector classes. Maybe I'll have a better view in the morning tomorrow





Quote:







now on github



greetz WV first I added an option to flip the texture coords before export, now it would be nice if someone can tell me if there is a default "flip" of the coords or if it varies among meshes, so has to stay as option...greetz WV



That's great addition, as is the possibility to choose the skeleton in a list.



Also, kuddos for all the great stuff you added to the search plugin, I'm sure it will come in handy! Sure for making a separate project, that's also what I was thinking. Distributing the full sdk is prohibited by the license anyway.I get it with the FbxExporter being everywhere, coded that a bit fast and was too lazy (and without much imagination) to rename as needed...I will be happy to take care of this stuff myself since you probably have a million other subjects on your plate. I'm not sure though I see how you want to get rid of the dependency between the CLR dll and the Mesh/Skeleton/Vector classes. Maybe I'll have a better view in the morning tomorrowThat's great addition, as is the possibility to choose the skeleton in a list.Also, kuddos for all the great stuff you added to the search plugin, I'm sure it will come in handy!



