fbx import error (vertex colors?) #104773
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
3 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: blender/blender-addons#104773
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
Graphics card: RTX 4090
Short description of error
FBX Import fails with error.
Exact steps for others to reproduce the error
When importing the attached FBX (exported from unreal) I get the following error:
Python: Traceback (most recent call last):
File "C:\Program Files\Blender Foundation\Blender 3.6\3.6\scripts\addons\io_scene_fbx_init_.py", line 207, in execute
if import_fbx.load(self, context, filepath=path, **keywords) == {'FINISHED'}:
File "C:\Program Files\Blender Foundation\Blender 3.6\3.6\scripts\addons\io_scene_fbx\import_fbx.py", line 3109, in load
_(); del _
File "C:\Program Files\Blender Foundation\Blender 3.6\3.6\scripts\addons\io_scene_fbx\import_fbx.py", line 3103, in _
root_helper.build_hierarchy(fbx_tmpl, settings, scene, view_layer)
File "C:\Program Files\Blender Foundation\Blender 3.6\3.6\scripts\addons\io_scene_fbx\import_fbx.py", line 2534, in build_hierarchy
child.build_hierarchy(fbx_tmpl, settings, scene, view_layer)
File "C:\Program Files\Blender Foundation\Blender 3.6\3.6\scripts\addons\io_scene_fbx\import_fbx.py", line 2521, in build_hierarchy
obj = self.build_node_obj(fbx_tmpl, settings)
File "C:\Program Files\Blender Foundation\Blender 3.6\3.6\scripts\addons\io_scene_fbx\import_fbx.py", line 2324, in build_node_obj
obj.color[0:3] = elem_props_get_color_rgb(fbx_props, b'Color', (0.8, 0.8, 0.8))
File "C:\Program Files\Blender Foundation\Blender 3.6\3.6\scripts\addons\io_scene_fbx\import_fbx.py", line 195, in elem_props_get_color_rgb
assert(elem_prop.props[1] == b'ColorRGB')
AssertionError
The file imports fine into maya so I don't think there's something wrong with it.
The
Groundplane_SM
model (Blender Object equivalent) in this .fbx has aKString
type property namedColor
that is marked as a user property (b'U' in elem_prop.props[3]
). Normally,Color
is not a user property and would have theColorRGB
type.I guess when reading properties such as
Color
, the importer should ignore any marked as user properties. There's probably a lot of places other properties are read that should have the same treatment of ignoring user properties.This error can also be achieved by exporting from Blender an Object with a Custom Property called
Color
with theCustom Properties
option of the exporter enabled, and then importing that .fbx back into Blender.Groundplane_SM
is a bit extra weird in that all its properties are marked as user properties, even those that I'm pretty sure shouldn't be, yet the other model in the file,UCX_Groundplane_SM
, is normal. Another weird .fbx file from Unreal...Thanks for looking into this :) Would it maybe be possible to set the color to the default if the value is malformed, instead of erroring out?
yes, can confirm the assert when user property matches the label of FBX property.