FBX Export "!EXPERIMENTAL! Apply Transform" with nested objects resets after one recursion #50405

Closed
opened 6 years ago by lrg_steven · 8 comments

System Information
Windows 10, i7 3770k, 16GB, nVIDIA GTX 670

Blender Version
Broken: 2.78

Short description of error
I have six cubes nested together where Cube2 is the child of Cube1, Cube3 is the child of Cube2 and so on. Imagine they are placed in world positions A through F. If I export them as an FBX and re-import that same FBX, Cube1 is now in position A, Cube2 is in position B, Cube3 in A, Cube4 in B, Cube5 in A, and Cube6 in B.

Exact steps for others to reproduce the error

  • Load the attached .blend file
  • Select any of the hierarchies prefixed with "Export"
  • Export as FBX 7.4 binary, Use selection, Scale 1, Z Forward, Y Up, Enable "!Experimental! Apply Transform", Remaining settings can be default
  • Import the FBX that you just created using default settings - ensuring "!Experimental! Apply Transform" is not checked
  • Notice that all elements of the imported hierarchy only occupy the locations of the first two elements in the exported hierarchy

cubetest.blend

Note: This is my first bug report, so apologies if I missed something. I tried seeing if there were existing tasks discussing the same error but did not find any. I am attempting to get Blender to export FBX files that display correctly in Autodesk FBX Review and also import correctly into Unity without rotation and scaling errors.

**System Information** Windows 10, i7 3770k, 16GB, nVIDIA GTX 670 **Blender Version** Broken: 2.78 **Short description of error** I have six cubes nested together where Cube2 is the child of Cube1, Cube3 is the child of Cube2 and so on. Imagine they are placed in world positions A through F. If I export them as an FBX and re-import that same FBX, Cube1 is now in position A, Cube2 is in position B, Cube3 in A, Cube4 in B, Cube5 in A, and Cube6 in B. **Exact steps for others to reproduce the error** - Load the attached .blend file - Select any of the hierarchies prefixed with "Export" - Export as FBX 7.4 binary, Use selection, Scale 1, Z Forward, Y Up, Enable "!Experimental! Apply Transform", Remaining settings can be default - Import the FBX that you just created using default settings - ensuring "!Experimental! Apply Transform" is not checked - Notice that all elements of the imported hierarchy only occupy the locations of the first two elements in the exported hierarchy [cubetest.blend](https://archive.blender.org/developer/F430835/cubetest.blend) Note: This is my first bug report, so apologies if I missed something. I tried seeing if there were existing tasks discussing the same error but did not find any. I am attempting to get Blender to export FBX files that display correctly in Autodesk FBX Review and also import correctly into Unity without rotation and scaling errors.
Poster

Changed status to: 'Open'

Changed status to: 'Open'
Poster

Added subscriber: @lrg_steven

Added subscriber: @lrg_steven
mont29 was assigned by Blendify 6 years ago
mont29 commented 6 years ago
Owner

Changed status from 'Open' to: 'Archived'

Changed status from 'Open' to: 'Archived'
mont29 closed this issue 6 years ago
mont29 commented 6 years ago
Owner

Thanks for the report, but there is a very good reason this setting is marked as experimental - it’s not working in many cases besides basic ones. This considered a known limitation currently, not a bug.

Thanks for the report, but there is a very good reason this setting is marked as experimental - it’s not working in many cases besides basic ones. This considered a known limitation currently, not a bug.
Poster

Thanks for the quick response. I understand this is experimental but assumed that experimentation was ongoing. Is the current limitation for static mesh export a hierarchy depth of 2? If so, I'll just build my pipeline around that limitation or write a specific exporter of my own (for my very specific use cases).

Thanks for the quick response. I understand this is experimental but assumed that experimentation was ongoing. Is the current limitation for static mesh export a hierarchy depth of 2? If so, I'll just build my pipeline around that limitation or write a specific exporter of my own (for my very specific use cases).
mont29 commented 6 years ago
Owner

Unfortunately FBX has proven to be extremely frustrating and infuriating, and I’m just sick of it beyond any hope. So I do basic maintenance for it, but do not intend to actively work on that… thing in any foreseeable future.

That said, if you want to check the code to try to fix that issue, I’d be happy to review a patch. But be warned, I already spent a significant amount of time on that specific issue (getting 'apply transform' to work better and in more cases), this is a rather complex nest of transform matrices… :/

Unfortunately FBX has proven to be extremely frustrating and infuriating, and I’m just sick of it beyond any hope. So I do basic maintenance for it, but do not intend to actively work on that… thing in any foreseeable future. That said, if you want to check the code to try to fix that issue, I’d be happy to review a patch. But be warned, I already spent a significant amount of time on that specific issue (getting 'apply transform' to work better and in more cases), this is a rather complex nest of transform matrices… :/
Poster

Hahaha! Yes, that is why I added the caveat of "my very specific use cases". I can imagine how tangled things would get when you try to support even a fraction of what Blender can do. If I do make any discoveries though, I'll definitely share them. Thanks again.

Hahaha! Yes, that is why I added the caveat of "my very specific use cases". I can imagine how tangled things would get when you try to support even a fraction of what Blender can do. If I do make any discoveries though, I'll definitely share them. Thanks again.

Added subscriber: @SimeonConzendorf

Added subscriber: @SimeonConzendorf
Sign in to join this conversation.
No Label
good first issue
legacy module/Animation & Rigging
legacy module/Core
legacy module/Eevee & Viewport
legacy module/Grease Pencil
legacy module/Modeling
legacy module/Nodes & Physics
legacy module/Pipeline, Assets & IO
legacy module/Platforms, Builds, Tests & Devices
legacy module/Python API
legacy module/Rendering & Cycles
legacy module/Sculpt, Paint & Texture
legacy module/User Interface
legacy module/VFX & Video
legacy project/2.81
legacy project/2.82
legacy project/2.83
legacy project/2.90
legacy project/2.92
legacy project/2.93
legacy project/3.0
legacy project/3.1
legacy project/3.2
legacy project/3.4
legacy project/Add-ons (BF-Blender)
legacy project/Add-ons (Community)
legacy project/Alembic
legacy project/Animation & Rigging
legacy project/Asset Browser
legacy project/Automated Testing
legacy project/BF Blender: 2.8
legacy project/BF Blender: After Release
legacy project/BF Blender: Next
legacy project/BF Blender: Regressions
legacy project/BF Blender: Unconfirmed
legacy project/Blender 2.70
legacy project/Blender Cloud
legacy project/Code Quest
legacy project/Collada
legacy project/Compositing
legacy project/Core
legacy project/Cycles
legacy project/Datablocks and Libraries
legacy project/Dependency Graph
legacy project/Documentation
legacy project/EEVEE & Viewport
legacy project/Freestyle
legacy project/Game Data Conversion
legacy project/Game Engine
legacy project/Game Physics
legacy project/Game Python
legacy project/Game UI
legacy project/Geometry Nodes
legacy project/Good First Issue
legacy project/Grease Pencil
legacy project/Images & Movies
legacy project/Import/Export
legacy project/Infrastructure: Blender Buildbot
legacy project/Infrastructure: Blender Web Assets
legacy project/Infrastructure: Websites
legacy project/Modeling
legacy project/Modifiers
legacy project/Motion Tracking
legacy project/Nodes
legacy project/Nodes & Physics
legacy project/OpenGL Error
legacy project/Overrides
legacy project/Papercut
legacy project/Physics
legacy project/Pillar
legacy project/Pipeline, Assets & I/O
legacy project/Platform: Linux
legacy project/Platform: macOS
legacy project/Platforms, Builds, Tests & Devices
legacy project/Platform: Windows
legacy project/Python API
legacy project/Render & Cycles
legacy project/Render Pipeline
legacy project/Sculpt, Paint & Texture
legacy project/Straightforward Issue
legacy project/Text Editor
legacy project/Tracker Curfew
legacy project/Translations
legacy project/USD
legacy project/User Interface
legacy project/UV Editing
legacy project/VFX & Video
legacy project/Video Sequencer
legacy project/Virtual Reality
papercut
Priority › High
Priority › Low
Priority › Normal
Priority › Unbreak Now!
Status › Archived
Status › Confirmed
Status › Duplicate
Status › Needs Information from Developers
Status › Needs Information from User
Status › Needs Triage
Status › Resolved
straightforward issue
Type › Bug
Type › Design
Type › Known Issue
Type › Patch
Type › Report
Type › To Do
No Milestone
No project
No Assignees
3 Participants
Notifications
Due Date

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender-addons#50405
Loading…
There is no content yet.