Missing XNA support in FBX Exporter #37729

Closed
opened 2013-12-07 20:43:29 +01:00 by DemonHeart · 25 comments
DemonHeart commented 2013-12-07 20:43:29 +01:00 (Migrated from localhost:3001)

System Information
Any

Blender Version
Broken: Blender 2.69
Worked: Blender 2.68

Short description of error
FBX files produced by the FBX Exporter addon starting from Blender 2.69 cannot be correctly imported by Microsoft XNA 4.0 framework. This makes XNA and Monogame developers unable to use Blender for creating models, assets and animations.

Exact steps for others to reproduce the error
1.
Create or open any model mesh in Blender 2.69 and export it to FBX
Do the same in Blender 2.68 or earlier
Compare the resulting FBX files in any text comparison tool. You will notice that the files produced by 2.69 contain a lot less data because they seem to use VertexPolygonIndexes where 2.68 exported all data in a straightforward way. Also it seems, that 2.69 exports non-triangulated faces. The new format cannot be used in the existing XNA importer.

Do the same with any model that includes armature and animations.
When comparing FBX files produced by 2.68 and 2.69 you'll notice, that all Limbs (bones) have different values of property "Lcl Rotation". XNA requires a different way of storing rotations, as described in Blender FBX Exporter addon documentation

There are no "XNA Rotate Animation Hack" and "XNA Strict Options" settings on the FBX Exporter panel.

The ability to transfer models to XNA and Monogame is vital for some game developers. If it's not possible to fix the new FBX Exporter to be compatible with XNA, would you please at least provide some workaround for us to use Blender 2.69 and later without disrupting our process. Perhaps, it is possible to use the previous version of FBX Exporter with the up-to-date versions of Blender?

**System Information** Any **Blender Version** Broken: Blender 2.69 Worked: Blender 2.68 **Short description of error** FBX files produced by the FBX Exporter addon starting from Blender 2.69 cannot be correctly imported by Microsoft XNA 4.0 framework. This makes XNA and Monogame developers unable to use Blender for creating models, assets and animations. **Exact steps for others to reproduce the error** 1. Create or open any model mesh in Blender 2.69 and export it to FBX Do the same in Blender 2.68 or earlier Compare the resulting FBX files in any text comparison tool. You will notice that the files produced by 2.69 contain a lot less data because they seem to use VertexPolygonIndexes where 2.68 exported all data in a straightforward way. Also it seems, that 2.69 exports non-triangulated faces. The new format cannot be used in the existing XNA importer. 2. Do the same with any model that includes armature and animations. When comparing FBX files produced by 2.68 and 2.69 you'll notice, that all Limbs (bones) have different values of property "Lcl Rotation". XNA requires a different way of storing rotations, as described in Blender FBX Exporter addon documentation 3. There are no "XNA Rotate Animation Hack" and "XNA Strict Options" settings on the FBX Exporter panel. The ability to transfer models to XNA and Monogame is vital for some game developers. If it's not possible to fix the new FBX Exporter to be compatible with XNA, would you please at least provide some workaround for us to use Blender 2.69 and later without disrupting our process. Perhaps, it is possible to use the previous version of FBX Exporter with the up-to-date versions of Blender?
DemonHeart commented 2013-12-07 20:43:29 +01:00 (Migrated from localhost:3001)
Author

Changed status to: 'Open'

Changed status to: 'Open'
DemonHeart commented 2013-12-07 20:43:29 +01:00 (Migrated from localhost:3001)
Author

Added subscriber: @DemonHeart

Added subscriber: @DemonHeart

Changed status from 'Open' to: 'Archived'

Changed status from 'Open' to: 'Archived'
Campbell Barton self-assigned this 2013-12-08 00:00:42 +01:00

This was intentionally removed, XNA is being dropped by Microsoft.
http://www.gamasutra.com/view/news/185894 (links to valid sources)

This was intentionally removed, XNA is being dropped by Microsoft. http://www.gamasutra.com/view/news/185894 (links to valid sources)
DemonHeart commented 2013-12-12 09:00:16 +01:00 (Migrated from localhost:3001)
Author

Although Microsoft has indeed dropped XNA, but there is a great community working on the Monogame framework which is a cross-platform replacement of XNA (http://www.monogame.net). In creating graphics assets for Monogame games, they fully rely on Microsoft Visual Studio and its content processing pipeline (as they have not being able to create a complete replacement as yet).

(For more details please see https://github.com/mono/MonoGame/wiki/MonoGame-Content-Processing)

Thus, we cannot use Blender not only with original XNA, but also with Monogame anymore

Although Microsoft has indeed dropped XNA, but there is a great community working on the Monogame framework which is a cross-platform replacement of XNA (http://www.monogame.net). In creating graphics assets for Monogame games, they fully rely on Microsoft Visual Studio and its content processing pipeline (as they have not being able to create a complete replacement as yet). (For more details please see https://github.com/mono/MonoGame/wiki/MonoGame-Content-Processing) Thus, we cannot use Blender not only with original XNA, but also with Monogame anymore

@DemonHeart, even so - XNA hacks were added because of broken file-format support in XNA, if this is moving to become an open-source project they should really look into fixing the bugs in their system.

For now you could use an old blender, or back-port the hacks that were added to get XNA working.

@DemonHeart, even so - XNA hacks were added because of broken file-format support in XNA, if this is moving to become an open-source project they should really look into fixing the bugs in their system. For now you could use an old blender, or back-port the hacks that were added to get XNA working.

Added subscriber: @erichfrazer

Added subscriber: @erichfrazer

XNA is not dead. (I should know I work at Microsoft). It's just .. limping.
The XNA hack is vital to many modelers for visualization reasons, I'm surprised that you do not understand/realize this. Do you actually work in the modeling community as a professional that makes money?

I'd put that "hack" back in if I didn't want Blender to look like a toy... There's no reason it can't sit in there and if people don't want to use it, they won't click it.

https://msxna.codeplex.com/releases/view/117230

XNA is not dead. (I should know I work at Microsoft). It's just .. limping. The XNA hack is vital to many modelers for visualization reasons, I'm surprised that you do not understand/realize this. Do you actually work in the modeling community as a professional that makes money? I'd put that "hack" back in if I didn't want Blender to look like a toy... There's no reason it can't sit in there and if people don't want to use it, they won't click it. https://msxna.codeplex.com/releases/view/117230

@erichfrazer

XNA has broken support for FBX, if you work at Microsoft you could investigate why Unity3D and UDK, Maya, Cinema4D, MotionBuilder and other engines load Blender's FBX animations, but fail with XNA.

Further, we are dropping support for version 6.1 of the format. (which included this hack)

@erichfrazer XNA has broken support for FBX, if you work at Microsoft you could investigate why Unity3D and UDK, Maya, Cinema4D, MotionBuilder and other engines load Blender's FBX animations, but fail with XNA. Further, we are dropping support for version 6.1 of the format. (which included this hack)

Does it matter? blah blah blah all have proper support for loading FBX files, but XNA needs a hack... why would you remove a perfectly serviceable piece of code just for purity's sake when it screws everybody trying to load their model into XNA? It's NOT fully deprecated. So, it seems like you're just being a wanker by removing something useful that people could leave clicked off. Am I wrong about that? If/when XNA fixes the FBX import, THEN remove the "hack". Does that not make sense?

Does it matter? blah blah blah all have *proper* support for loading FBX files, but XNA needs a hack... why would you remove a perfectly serviceable piece of code just for purity's sake when it screws everybody trying to load their model into XNA? It's NOT fully deprecated. So, it seems like you're just being a wanker by removing something useful that people could leave clicked off. Am I wrong about that? If/when XNA fixes the FBX import, THEN remove the "hack". Does that not make sense?

And no, just because I work at Microsoft doesn't mean Unity3D or Maya or anybody else will give me the time of day. You know FBX files have licensing restrictions on them, so maybe somebody working on XNA got told, "you can't touch this any longer". who knows. All I know is that something really useful got removed. That... ahem... sucks.

And no, just because I work at Microsoft doesn't mean Unity3D or Maya or anybody else will give me the time of day. You know FBX files have licensing restrictions on them, so maybe somebody working on XNA got told, "you can't touch this any longer". who knows. All I know is that something really useful got removed. That... ahem... sucks.

Added subscriber: @Zpider

Added subscriber: @Zpider

This has proven to be an issue for me as well. Up until 2.68a I have been able to export my models to fbx format by clicking the "xna rotation animation hack" and it would function in my monogame projects and now it seems to have been removed and breaks my models in my development projects. I have now stopped receiving updates of blender and continue to work in 2.68 since this is the last working build which allows for the "xna rotation animation hack" selection. Is there a script or other means that we can apply the same results as what the "xna rotation animation hack" does for fbx export. It would really be a shame if I'm stuck with using 2.68.

This has proven to be an issue for me as well. Up until 2.68a I have been able to export my models to fbx format by clicking the "xna rotation animation hack" and it would function in my monogame projects and now it seems to have been removed and breaks my models in my development projects. I have now stopped receiving updates of blender and continue to work in 2.68 since this is the last working build which allows for the "xna rotation animation hack" selection. Is there a script or other means that we can apply the same results as what the "xna rotation animation hack" does for fbx export. It would really be a shame if I'm stuck with using 2.68.
dreamwagon commented 2014-08-08 00:48:29 +02:00 (Migrated from localhost:3001)
Author

Added subscriber: @dreamwagon

Added subscriber: @dreamwagon
dreamwagon commented 2014-08-08 00:48:29 +02:00 (Migrated from localhost:3001)
Author

Yeah, this is just bad decision making by the maintainers in my opinion. Why couldn't you just leave the options or add them as a user setting. Gosh this is annoying to me right now..

Yeah, this is just bad decision making by the maintainers in my opinion. Why couldn't you just leave the options or add them as a user setting. Gosh this is annoying to me right now..

Added subscriber: @Team_Shuriken

Added subscriber: @Team_Shuriken

I'm learning blender and spent so many hours wondering why it wouldn't import in XNA correctly, guess I'll go ahead and try with v2.68 :(

I wish this was put back in or a workaround is found for the future. while XNA is not supported by microsoft anymore, there are still many PC/XBOX 360 games still being developped with it. Monogame is also still very much alive on iphone, ipad, android, mac, linux, ouya and PS4 aswell.

I'm learning blender and spent so many hours wondering why it wouldn't import in XNA correctly, guess I'll go ahead and try with v2.68 :( I wish this was put back in or a workaround is found for the future. while XNA is not supported by microsoft anymore, there are still many PC/XBOX 360 games still being developped with it. Monogame is also still very much alive on iphone, ipad, android, mac, linux, ouya and PS4 aswell.

Added subscriber: @lopataasdf

Added subscriber: @lopataasdf

Is there any chance of return of this feature?

Is there any chance of return of this feature?

There is mixed messages here, if mono-game is still alive/actively developed presumably they can fix bugs in XNA?

There is mixed messages here, if mono-game is still alive/actively developed presumably they can fix bugs in XNA?

it's not a bug, it's a feature :)

it's not a bug, it's a feature :)
dreamwagon commented 2014-10-23 15:45:49 +02:00 (Migrated from localhost:3001)
Author

I also have this issue in sunburn engine and that no longer uses xna. (Although fbx model loading may have been ported from xna.. Not sure). I always thought that the bug was in the blender fbx exporter. I don't have problems importing fbx models that are converted from other formats using the fbx converter tool. Either way removing a feature for no good reason makes no sense. Obviously there are developers who still depend on it.

I also have this issue in sunburn engine and that no longer uses xna. (Although fbx model loading may have been ported from xna.. Not sure). I always thought that the bug was in the blender fbx exporter. I don't have problems importing fbx models that are converted from other formats using the fbx converter tool. Either way removing a feature for no good reason makes no sense. Obviously there are developers who still depend on it.

Its not as simple as saying "Monogame must fix it" Monogame is far from fixing this. Last I checked they still have lots of work on the Content Pipeline side of things. If you want to stick to your guns because you feel its right and its not your problem, shouldnt feature in blender for what ever reason you feel valid then by all means make those decisions and let the rest of us burn and battle.The fact is there are devs with this blender feature in their pipeline, we need it , not for XNA but for Monogame or maybe something else STILL VERY MUCH ALIVE, its been taken out and now we are totally screwed. 2.72b is out and I personally am still stuck using 2.68 still to this day and hunkering in to stick with it till end of days at it seems. Fine take the feature out if you want but for hell sakes give us a script, some app or some way to get our assists from blender into mono. Please, throw us a bone here.

Its not as simple as saying "Monogame must fix it" Monogame is far from fixing this. Last I checked they still have lots of work on the Content Pipeline side of things. If you want to stick to your guns because you feel its right and its not your problem, shouldnt feature in blender for what ever reason you feel valid then by all means make those decisions and let the rest of us burn and battle.The fact is there are devs with this blender feature in their pipeline, we need it , not for XNA but for Monogame or maybe something else STILL VERY MUCH ALIVE, its been taken out and now we are totally screwed. 2.72b is out and I personally am still stuck using 2.68 still to this day and hunkering in to stick with it till end of days at it seems. Fine take the feature out if you want but for hell sakes give us a script, some app or some way to get our assists from blender into mono. Please, throw us a bone here.

Even if monogame was willing to fix it within their framework, there's still the question wether it's feasible for them to do without breaking compatibility with all current monogame FBX files. If that's not possible, I don't think they'd be willing to put this kind of burden on monogame users (convert all FBX files to new "correct" format or stick to older monogame versions).

Even if monogame was willing to fix it within their framework, there's still the question wether it's feasible for them to do without breaking compatibility with all current monogame FBX files. If that's not possible, I don't think they'd be willing to put this kind of burden on monogame users (convert all FBX files to new "correct" format or stick to older monogame versions).

Has anyone contacted monogame developers about this? (on a public mailing list) are they aware of the problem?

Has anyone contacted monogame developers about this? (on a public mailing list) are they aware of the problem?
Sign in to join this conversation.
No Milestone
No project
No Assignees
6 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender-addons#37729
No description provided.