Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FBX] crashing due to parser error 'GetRequiredElement' is not gracefully failing #43949

Closed
duasun opened this issue Nov 29, 2020 · 10 comments
Closed

Comments

@duasun
Copy link

duasun commented Nov 29, 2020

Godot version:
Godot 3.2.4. beta 3 (and beta 2)

OS/device including version:
GLES 3, Win 10, gtx 1660 super

Issue description:
After drag and drop *.fbx file, editor crashes. It crashes after trying to reload project. I have to manually delete file from project to be able to load project again.

Steps to reproduce:
Drag and drop fbx file (Kenney Assets)

Minimal reproduction project:
Godot issue.zip

@qarmin
Copy link
Contributor

qarmin commented Nov 29, 2020

[1] /lib/x86_64-linux-gnu/libc.so.6(+0x46210) [0x7f0479cf1210] (??:0)
[2] FBXDocParser::Element::KeyToken() const (/mnt/Miecz/godot3.2/modules/fbx/fbx_parser/FBXParser.h:127)
[3] FBXDocParser::GetRequiredElement(FBXDocParser::Scope*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, FBXDocParser::Element*) (/mnt/Miecz/godot3.2/modules/fbx/fbx_parser/FBXParser.cpp:1191)
[4] FBXDocParser::MeshGeometry::MeshGeometry(unsigned long, FBXDocParser::Element*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, FBXDocParser::Document const&) (/mnt/Miecz/godot3.2/modules/fbx/fbx_parser/FBXMeshGeometry.cpp:186)
[5] FBXDocParser::LazyObject::LoadObject() (/mnt/Miecz/godot3.2/modules/fbx/fbx_parser/FBXDocument.cpp:159 (discriminator 3))
[6] FBXDocParser::Connection::SourceObject() const (/mnt/Miecz/godot3.2/modules/fbx/fbx_parser/FBXDocument.cpp:690)
[7] FBXDocParser::Model::ResolveLinks(FBXDocParser::Element*, FBXDocParser::Document const&) (/mnt/Miecz/godot3.2/modules/fbx/fbx_parser/FBXModel.cpp:138)
[8] FBXDocParser::Model::Model(unsigned long, FBXDocParser::Element*, FBXDocParser::Document const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (/mnt/Miecz/godot3.2/modules/fbx/fbx_parser/FBXModel.cpp:103)
[9] FBXDocParser::LazyObject::LoadObject() (/mnt/Miecz/godot3.2/modules/fbx/fbx_parser/FBXDocument.cpp:203 (discriminator 3))
[10] FBXDocParser::Connection::SourceObject() const (/mnt/Miecz/godot3.2/modules/fbx/fbx_parser/FBXDocument.cpp:690)
[11] EditorSceneImporterFBX::BuildDocumentBones(Ref<FBXBone>, ImportState&, FBXDocParser::Document const*, unsigned long) (/mnt/Miecz/godot3.2/modules/fbx/editor_scene_importer_fbx.cpp:1251)
[12] EditorSceneImporterFBX::_generate_scene(String const&, FBXDocParser::Document const*, unsigned int, int, int) (/mnt/Miecz/godot3.2/modules/fbx/editor_scene_importer_fbx.cpp:378 (discriminator 2))
[13] EditorSceneImporterFBX::import_scene(String const&, unsigned int, int, List<String, DefaultAllocator>*, Error*) (/mnt/Miecz/godot3.2/modules/fbx/editor_scene_importer_fbx.cpp:154)
[14] ResourceImporterScene::import(String const&, String const&, Map<StringName, Variant, Comparator<StringName>, DefaultAllocator> const&, List<String, DefaultAllocator>*, List<String, DefaultAllocator>*, Variant*) (/mnt/Miecz/godot3.2/editor/import/resource_importer_scene.cpp:1320)
[15] EditorFileSystem::_reimport_file(String const&) (/mnt/Miecz/godot3.2/editor/editor_file_system.cpp:1798)
[16] EditorFileSystem::reimport_files(Vector<String> const&) (/mnt/Miecz/godot3.2/editor/editor_file_system.cpp:1994 (discriminator 3))
[17] EditorFileSystem::_update_scan_actions() (/mnt/Miecz/godot3.2/editor/editor_file_system.cpp:592)
[18] EditorFileSystem::_notification(int) (/mnt/Miecz/godot3.2/editor/editor_file_system.cpp:1175)
[19] EditorFileSystem::_notificationv(int, bool) (/mnt/Miecz/godot3.2/editor/editor_file_system.h:108 (discriminator 14))
[20] Object::notification(int, bool) (/mnt/Miecz/godot3.2/core/object.cpp:931)
[21] SceneTree::_notify_group_pause(StringName const&, int) (/mnt/Miecz/godot3.2/scene/main/scene_tree.cpp:985)
[22] SceneTree::idle(float) (/mnt/Miecz/godot3.2/scene/main/scene_tree.cpp:525 (discriminator 3))
[23] Main::iteration() (/mnt/Miecz/godot3.2/main/main.cpp:2103)
[24] OS_X11::run() (/mnt/Miecz/godot3.2/platform/x11/os_x11.cpp:3410)
[25] godot(main+0x125) [0x138258b] (/mnt/Miecz/godot3.2/platform/x11/godot_x11.cpp:57)
[26] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf3) [0x7f0479cd20b3] (??:0)
[27] godot(_start+0x2e) [0x13823ae] (??:?)

@JotaFaD
Copy link

JotaFaD commented Dec 2, 2020

Also happens on RTX 2060, Nvidia driver 457.30, GLES 3.0, Windows 10 2004

@RevoluPowered
Copy link
Contributor

[doc] fbx header: ; FBX 7.3.0 project file <- this file is far too old to be supported.

Can you please let me know where you're exporting this file from?

@RevoluPowered
Copy link
Contributor

Please export in a version like: 2016, 2018 or 2020, not in 2013.

https://help.autodesk.com/view/FBX/2017/ENU/?guid=__files_GUID_A753EE31_7DCF_409E_9270_CD2578FFB633_htm

@RevoluPowered RevoluPowered changed the title Editor crashes after drag and drop FBX file [FBX] crashing due to parser error 'GetRequiredElement' is not gracefully failing Dec 14, 2020
@RevoluPowered
Copy link
Contributor

Added some safety to the check which crashed.

image

I'd really like to know where this file is from? / which application / which version it is?

The vendor is entirely missing from the FBX itself.

@duasun
Copy link
Author

duasun commented Dec 14, 2020 via email

@RevoluPowered
Copy link
Contributor

Its in the kenney asset pack. Free download from web.

OK, do you know what they used to actually make the asset in?

I've already fixed the crash and it seems to load, but would be better if you could tell me this?

@RevoluPowered
Copy link
Contributor

Fix is up, we will close this once its merged thank you for reporting the problem.

@duasun
Copy link
Author

duasun commented Dec 14, 2020 via email

@akien-mga
Copy link
Member

Fixed by #44371.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants