json2fbx.py script creates invalid FBX 7500 files #104684
Labels
No Label
Interest
Animation & Rigging
Interest
Blender Cloud
Interest
Collada
Interest
Core
Interest
Documentation
Interest
Eevee & Viewport
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
Import and Export
Interest
Modeling
Interest
Modifiers
Interest
Nodes & Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds, Tests & Devices
Interest
Python API
Interest
Rendering & Cycles
Interest
Sculpt, Paint & Texture
Interest
Translations
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Meta
Good First Issue
Meta
Papercut
Module
Add-ons (BF-Blender)
Module
Add-ons (Community)
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: blender/blender-addons#104684
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
System Information
Operating system: Windows-10-10.0.19045-SP0 64 Bits
Graphics card: NVIDIA GeForce GTX 1070 Ti/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 531.41
Blender Version
Broken: version: 4.0.0 Alpha, branch: main, commit date: 2023-05-24 15:26, hash:
9acff4edabe5
Worked:
Addon Information
Name: FBX format (5, 3, 0)
Author: Campbell Barton, Bastien Montagne, Jens Restemeier, @Mysteryem
Short description of error
When the
json2fbx.py
script creates an FBX version 7500 .fbx file, the resultant file is invalid.This happens because there are binary changes between FBX versions 7400 and 7500.
The
fbx2json.py
script and Blender's FBX importer are capable of handling FBX 7500 files, but because thejson2fbx.py
script shares much of its code with Blender's FBX exporter and Blender's exporter always writes FBX version 7400 files, thejson2fbx.py
script always writes a 7400 binary, even if the .json specified that the file is version 7500.Exact steps for others to reproduce the error
fbx2json.py
FBXVersion
in the .json file to7500
MemoryError
likely occurs because Blender tries to read the file as if it were FBX version 7500, but the binary does not match and the readprop_count
variable ends up huge (external software will likely say that the file is corrupt).Attached is an exported cube.fbx, and two .json files created from it with
fbx2json.py
, one of which has had its FBXVersion modified to 7500. The .fbx files created byjson2fbx
from each .json are also attached.