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

Crash loading big GLTF Model #18620

Closed
wolfviking0 opened this issue May 4, 2018 · 15 comments
Closed

Crash loading big GLTF Model #18620

wolfviking0 opened this issue May 4, 2018 · 15 comments

Comments

@wolfviking0
Copy link

wolfviking0 commented May 4, 2018

Hi,

I am trying to find the best way to load GLTF model, so far after comparing Unity / Unreal / JMonkey only Godot has a support of blend shape.

I first test loading a basing AnimatedCube from the official Khronos Model repository, everything is fine.

But now I want to try on a bigger model with around 55 blend shape. But each time I try I have a crash of Godot.

I add the stack trace I was able to grab from the console.

Godot version:
Godot_v3.0.2-stable_mono_osx64

Issue log:

Bugsquad edit: formatting

Native stacktrace:
0   Godot                               0x000000010df39911 mono_handle_native_crash + 257
1   Godot                               0x000000010df47cce mono_sigill_signal_handler + 46
2   libsystem_platform.dylib            0x00007fff57aeff5a _sigtramp + 26
3   ???                                 0x000000011205da00 0x0 + 4597340672
4   Godot                               0x000000010ee669d0 _ZN23EditorSceneImporterGLTF14_generate_boneERNS_9GLTFStateEiR6VectorIP8SkeletonERKS2_IiEP4Node + 1424
5   Godot                               0x000000010ee669d0 _ZN23EditorSceneImporterGLTF14_generate_boneERNS_9GLTFStateEiR6VectorIP8SkeletonERKS2_IiEP4Node + 1424
6   Godot                               0x000000010ee669d0 _ZN23EditorSceneImporterGLTF14_generate_boneERNS_9GLTFStateEiR6VectorIP8SkeletonERKS2_IiEP4Node + 1424
7   Godot                               0x000000010ee669d0 _ZN23EditorSceneImporterGLTF14_generate_boneERNS_9GLTFStateEiR6VectorIP8SkeletonERKS2_IiEP4Node + 1424
8   Godot                               0x000000010ee669d0 _ZN23EditorSceneImporterGLTF14_generate_boneERNS_9GLTFStateEiR6VectorIP8SkeletonERKS2_IiEP4Node + 1424
9   Godot                               0x000000010ee669d0 _ZN23EditorSceneImporterGLTF14_generate_boneERNS_9GLTFStateEiR6VectorIP8SkeletonERKS2_IiEP4Node + 1424
10  Godot                               0x000000010ee669d0 _ZN23EditorSceneImporterGLTF14_generate_boneERNS_9GLTFStateEiR6VectorIP8SkeletonERKS2_IiEP4Node + 1424
11  Godot                               0x000000010ee669d0 _ZN23EditorSceneImporterGLTF14_generate_boneERNS_9GLTFStateEiR6VectorIP8SkeletonERKS2_IiEP4Node + 1424
12  Godot                               0x000000010ee669d0 _ZN23EditorSceneImporterGLTF14_generate_boneERNS_9GLTFStateEiR6VectorIP8SkeletonERKS2_IiEP4Node + 1424
13  Godot                               0x000000010ee669d0 _ZN23EditorSceneImporterGLTF14_generate_boneERNS_9GLTFStateEiR6VectorIP8SkeletonERKS2_IiEP4Node + 1424
14  Godot                               0x000000010ee669d0 _ZN23EditorSceneImporterGLTF14_generate_boneERNS_9GLTFStateEiR6VectorIP8SkeletonERKS2_IiEP4Node + 1424
15  Godot                               0x000000010ee669d0 _ZN23EditorSceneImporterGLTF14_generate_boneERNS_9GLTFStateEiR6VectorIP8SkeletonERKS2_IiEP4Node + 1424
16  Godot                               0x000000010ee669d0 _ZN23EditorSceneImporterGLTF14_generate_boneERNS_9GLTFStateEiR6VectorIP8SkeletonERKS2_IiEP4Node + 1424
17  Godot                               0x000000010ee669d0 _ZN23EditorSceneImporterGLTF14_generate_boneERNS_9GLTFStateEiR6VectorIP8SkeletonERKS2_IiEP4Node + 1424
18  Godot                               0x000000010ee669d0 _ZN23EditorSceneImporterGLTF14_generate_boneERNS_9GLTFStateEiR6VectorIP8SkeletonERKS2_IiEP4Node + 1424
19  Godot                               0x000000010ee669d0 _ZN23EditorSceneImporterGLTF14_generate_boneERNS_9GLTFStateEiR6VectorIP8SkeletonERKS2_IiEP4Node + 1424
20  Godot                               0x000000010ee669d0 _ZN23EditorSceneImporterGLTF14_generate_boneERNS_9GLTFStateEiR6VectorIP8SkeletonERKS2_IiEP4Node + 1424
21  Godot                               0x000000010ee669d0 _ZN23EditorSceneImporterGLTF14_generate_boneERNS_9GLTFStateEiR6VectorIP8SkeletonERKS2_IiEP4Node + 1424
22  Godot                               0x000000010ee669d0 _ZN23EditorSceneImporterGLTF14_generate_boneERNS_9GLTFStateEiR6VectorIP8SkeletonERKS2_IiEP4Node + 1424
23  Godot                               0x000000010ee669d0 _ZN23EditorSceneImporterGLTF14_generate_boneERNS_9GLTFStateEiR6VectorIP8SkeletonERKS2_IiEP4Node + 1424
24  Godot                               0x000000010ee65f59 _ZN23EditorSceneImporterGLTF14_generate_nodeERNS_9GLTFStateEiP4NodeS3_R6VectorIP8SkeletonE + 1753
25  Godot                               0x000000010ee65f8e _ZN23EditorSceneImporterGLTF14_generate_nodeERNS_9GLTFStateEiP4NodeS3_R6VectorIP8SkeletonE + 1806
26  Godot                               0x000000010ee65f8e _ZN23EditorSceneImporterGLTF14_generate_nodeERNS_9GLTFStateEiP4NodeS3_R6VectorIP8SkeletonE + 1806
27  Godot                               0x000000010ee65f8e _ZN23EditorSceneImporterGLTF14_generate_nodeERNS_9GLTFStateEiP4NodeS3_R6VectorIP8SkeletonE + 1806
28  Godot                               0x000000010ee65f8e _ZN23EditorSceneImporterGLTF14_generate_nodeERNS_9GLTFStateEiP4NodeS3_R6VectorIP8SkeletonE + 1806
29  Godot                               0x000000010ee6b121 _ZN23EditorSceneImporterGLTF15_generate_sceneERNS_9GLTFStateEi + 961
30  Godot                               0x000000010ee6bdc7 _ZN23EditorSceneImporterGLTF12import_sceneERK6StringjiP4ListIS0_16DefaultAllocatorEP5Error + 1495
31  Godot                               0x000000010ee93f02 _ZN21ResourceImporterScene6importERK6StringS2_RK3MapI10StringName7Variant10ComparatorIS4_E16DefaultAllocatorEP4ListIS0_S8_ESE_ + 2226
32  Godot                               0x000000010ead3d44 _ZN16EditorFileSystem14_reimport_fileERK6String + 2628
33  Godot                               0x000000010eaccdf2 _ZN16EditorFileSystem14reimport_filesERK6VectorI6StringE + 1410
34  Godot                               0x000000010eacba20 _ZN16EditorFileSystem20_update_scan_actionsEv + 1936
35  Godot                               0x000000010ead0832 _ZN16EditorFileSystem13_notificationEi + 802
36  Godot                               0x000000010ead8edc _ZN16EditorFileSystem14_notificationvEib + 76
37  Godot                               0x000000010fe79426 _ZN6Object12notificationEib + 22
38  Godot                               0x000000010f199059 _ZN9SceneTree19_notify_group_pauseERK10StringNamei + 473
39  Godot                               0x000000010f19951a _ZN9SceneTree4idleEf + 394
40  Godot                               0x000000010e129db6 _ZN4Main9iterationEv + 870
41  Godot                               0x000000010e105542 _ZN6OS_OSX3runEv + 402
42  Godot                               0x000000010e1083c2 main + 866
43  libdyld.dylib                       0x00007fff5786e115 start + 1
Debug info from gdb:
(lldb) command source -s 0 '/tmp/mono-gdb-commands.u2Fur4'
Executing commands in '/tmp/mono-gdb-commands.u2Fur4'.
(lldb) process attach --pid 40945
Traceback (most recent call last):
  File "<input>", line 1, in <module>
  File "/usr/local/Cellar/python@2/2.7.14_3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/copy.py", line 52, in <module>
    import weakref
  File "/usr/local/Cellar/python@2/2.7.14_3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/weakref.py", line 14, in <module>
    from _weakref import (
ImportError: cannot import name _remove_dead_weakref
error: libmonosgen-2.0.a(libmini_la-mini-exceptions.o) failed to load objfile for /Library/Frameworks/Mono.framework/Versions/Current/lib/libmonosgen-2.0.a
error: libmonosgen-2.0.a(libmini_la-mini-runtime.o) failed to load objfile for /Library/Frameworks/Mono.framework/Versions/Current/lib/libmonosgen-2.0.a
Process 40945 stopped
* thread #1, name = 'tid_307', queue = 'com.apple.main-thread', stop reason = signal SIGSTOP
    frame #0: 0x00007fff579be502 libsystem_kernel.dylib`__wait4 + 10
libsystem_kernel.dylib`__wait4:
->  0x7fff579be502 <+10>: jae    0x7fff579be50c            ; <+20>
    0x7fff579be504 <+12>: movq   %rax, %rdi
    0x7fff579be507 <+15>: jmp    0x7fff579b50dd            ; cerror
    0x7fff579be50c <+20>: retq   
Target 0: (Godot) stopped.

Executable module set to "/Applications/Godot_v3.0.2-stable_mono_osx64.app/Contents/MacOS/Godot".
Architecture set to: x86_64-apple-macosx.
(lldb) thread list
error: libmonosgen-2.0.a(libmonosgen_la-sgen-thread-pool.o) failed to load objfile for /Library/Frameworks/Mono.framework/Versions/Current/lib/libmonosgen-2.0.a
error: libmonosgen-2.0.a(libmonoruntimesgen_la-gc.o) failed to load objfile for /Library/Frameworks/Mono.framework/Versions/Current/lib/libmonosgen-2.0.a
error: libmonosgen-2.0.a(libmonoruntimesgen_la-threads.o) failed to load objfile for /Library/Frameworks/Mono.framework/Versions/Current/lib/libmonosgen-2.0.a
Process 40945 stopped
* thread #1: tid = 0xdb06ca, 0x00007fff579be502 libsystem_kernel.dylib`__wait4 + 10, name = 'tid_307', queue = 'com.apple.main-thread', stop reason = signal SIGSTOP
  thread #2: tid = 0xdb06f6, 0x00007fff579bf41a libsystem_kernel.dylib`read + 10
  thread #3: tid = 0xdb0701, 0x00007fff579bf41a libsystem_kernel.dylib`read + 10
  thread #4: tid = 0xdb0708, 0x00007fff579b47c2 libsystem_kernel.dylib`mach_msg_trap + 10, name = 'com.apple.audio.IOThread.client'
  thread #5: tid = 0xdb0734, 0x00007fff579bdcee libsystem_kernel.dylib`__psynch_cvwait + 10, name = 'SGen worker'
  thread #6: tid = 0xdb0735, 0x00007fff579bdcee libsystem_kernel.dylib`__psynch_cvwait + 10, name = 'SGen worker'
  thread #7: tid = 0xdb0736, 0x00007fff579b47fe libsystem_kernel.dylib`semaphore_wait_trap + 10, name = 'Finalizer'
  thread #8: tid = 0xdb07a2, 0x00007fff579be05a libsystem_kernel.dylib`__semwait_signal + 10
  thread #9: tid = 0xdb07a5, 0x00007fff579bf41a libsystem_kernel.dylib`read + 10
  thread #10: tid = 0xdb07a6, 0x00007fff579be05a libsystem_kernel.dylib`__semwait_signal + 10
  thread #11: tid = 0xdb07ba, 0x00007fff579b47c2 libsystem_kernel.dylib`mach_msg_trap + 10, name = 'com.apple.NSEventThread'
  thread #12: tid = 0xdb1f30, 0x00007fff579be562 libsystem_kernel.dylib`__workq_kernreturn + 10
(lldb) thread backtrace all
* thread #1, name = 'tid_307', queue = 'com.apple.main-thread', stop reason = signal SIGSTOP
  * frame #0: 0x00007fff579be502 libsystem_kernel.dylib`__wait4 + 10
    frame #1: 0x000000010df3999e Godot`mono_handle_native_crash + 398
    frame #2: 0x000000010df47cce Godot`mono_sigill_signal_handler + 46
    frame #3: 0x00007fff57aeff5a libsystem_platform.dylib`_sigtramp + 26
    frame #4: 0x000000010ee6717a Godot`EditorSceneImporterGLTF::_generate_bone(EditorSceneImporterGLTF::GLTFState&, int, Vector<Skeleton*>&, Vector<int> const&, Node*) + 3386
    frame #5: 0x000000010ee669d0 Godot`EditorSceneImporterGLTF::_generate_bone(EditorSceneImporterGLTF::GLTFState&, int, Vector<Skeleton*>&, Vector<int> const&, Node*) + 1424
    frame #6: 0x000000010ee669d0 Godot`EditorSceneImporterGLTF::_generate_bone(EditorSceneImporterGLTF::GLTFState&, int, Vector<Skeleton*>&, Vector<int> const&, Node*) + 1424
    frame #7: 0x000000010ee669d0 Godot`EditorSceneImporterGLTF::_generate_bone(EditorSceneImporterGLTF::GLTFState&, int, Vector<Skeleton*>&, Vector<int> const&, Node*) + 1424
    frame #8: 0x000000010ee669d0 Godot`EditorSceneImporterGLTF::_generate_bone(EditorSceneImporterGLTF::GLTFState&, int, Vector<Skeleton*>&, Vector<int> const&, Node*) + 1424
    frame #9: 0x000000010ee669d0 Godot`EditorSceneImporterGLTF::_generate_bone(EditorSceneImporterGLTF::GLTFState&, int, Vector<Skeleton*>&, Vector<int> const&, Node*) + 1424
    frame #10: 0x000000010ee669d0 Godot`EditorSceneImporterGLTF::_generate_bone(EditorSceneImporterGLTF::GLTFState&, int, Vector<Skeleton*>&, Vector<int> const&, Node*) + 1424
    frame #11: 0x000000010ee669d0 Godot`EditorSceneImporterGLTF::_generate_bone(EditorSceneImporterGLTF::GLTFState&, int, Vector<Skeleton*>&, Vector<int> const&, Node*) + 1424
    frame #12: 0x000000010ee669d0 Godot`EditorSceneImporterGLTF::_generate_bone(EditorSceneImporterGLTF::GLTFState&, int, Vector<Skeleton*>&, Vector<int> const&, Node*) + 1424
    frame #13: 0x000000010ee669d0 Godot`EditorSceneImporterGLTF::_generate_bone(EditorSceneImporterGLTF::GLTFState&, int, Vector<Skeleton*>&, Vector<int> const&, Node*) + 1424
    frame #14: 0x000000010ee669d0 Godot`EditorSceneImporterGLTF::_generate_bone(EditorSceneImporterGLTF::GLTFState&, int, Vector<Skeleton*>&, Vector<int> const&, Node*) + 1424
    frame #15: 0x000000010ee669d0 Godot`EditorSceneImporterGLTF::_generate_bone(EditorSceneImporterGLTF::GLTFState&, int, Vector<Skeleton*>&, Vector<int> const&, Node*) + 1424
    frame #16: 0x000000010ee669d0 Godot`EditorSceneImporterGLTF::_generate_bone(EditorSceneImporterGLTF::GLTFState&, int, Vector<Skeleton*>&, Vector<int> const&, Node*) + 1424
    frame #17: 0x000000010ee669d0 Godot`EditorSceneImporterGLTF::_generate_bone(EditorSceneImporterGLTF::GLTFState&, int, Vector<Skeleton*>&, Vector<int> const&, Node*) + 1424
    frame #18: 0x000000010ee669d0 Godot`EditorSceneImporterGLTF::_generate_bone(EditorSceneImporterGLTF::GLTFState&, int, Vector<Skeleton*>&, Vector<int> const&, Node*) + 1424
    frame #19: 0x000000010ee669d0 Godot`EditorSceneImporterGLTF::_generate_bone(EditorSceneImporterGLTF::GLTFState&, int, Vector<Skeleton*>&, Vector<int> const&, Node*) + 1424
    frame #20: 0x000000010ee669d0 Godot`EditorSceneImporterGLTF::_generate_bone(EditorSceneImporterGLTF::GLTFState&, int, Vector<Skeleton*>&, Vector<int> const&, Node*) + 1424
    frame #21: 0x000000010ee669d0 Godot`EditorSceneImporterGLTF::_generate_bone(EditorSceneImporterGLTF::GLTFState&, int, Vector<Skeleton*>&, Vector<int> const&, Node*) + 1424
    frame #22: 0x000000010ee669d0 Godot`EditorSceneImporterGLTF::_generate_bone(EditorSceneImporterGLTF::GLTFState&, int, Vector<Skeleton*>&, Vector<int> const&, Node*) + 1424
    frame #23: 0x000000010ee669d0 Godot`EditorSceneImporterGLTF::_generate_bone(EditorSceneImporterGLTF::GLTFState&, int, Vector<Skeleton*>&, Vector<int> const&, Node*) + 1424
    frame #24: 0x000000010ee669d0 Godot`EditorSceneImporterGLTF::_generate_bone(EditorSceneImporterGLTF::GLTFState&, int, Vector<Skeleton*>&, Vector<int> const&, Node*) + 1424
    frame #25: 0x000000010ee65f59 Godot`EditorSceneImporterGLTF::_generate_node(EditorSceneImporterGLTF::GLTFState&, int, Node*, Node*, Vector<Skeleton*>&) + 1753
    frame #26: 0x000000010ee65f8e Godot`EditorSceneImporterGLTF::_generate_node(EditorSceneImporterGLTF::GLTFState&, int, Node*, Node*, Vector<Skeleton*>&) + 1806
    frame #27: 0x000000010ee65f8e Godot`EditorSceneImporterGLTF::_generate_node(EditorSceneImporterGLTF::GLTFState&, int, Node*, Node*, Vector<Skeleton*>&) + 1806
    frame #28: 0x000000010ee65f8e Godot`EditorSceneImporterGLTF::_generate_node(EditorSceneImporterGLTF::GLTFState&, int, Node*, Node*, Vector<Skeleton*>&) + 1806
    frame #29: 0x000000010ee65f8e Godot`EditorSceneImporterGLTF::_generate_node(EditorSceneImporterGLTF::GLTFState&, int, Node*, Node*, Vector<Skeleton*>&) + 1806
    frame #30: 0x000000010ee6b121 Godot`EditorSceneImporterGLTF::_generate_scene(EditorSceneImporterGLTF::GLTFState&, int) + 961
    frame #31: 0x000000010ee6bdc7 Godot`EditorSceneImporterGLTF::import_scene(String const&, unsigned int, int, List<String, DefaultAllocator>*, Error*) + 1495
    frame #32: 0x000000010ee93f02 Godot`ResourceImporterScene::import(String const&, String const&, Map<StringName, Variant, Comparator<StringName>, DefaultAllocator> const&, List<String, DefaultAllocator>*, List<String, DefaultAllocator>*) + 2226
    frame #33: 0x000000010ead3d44 Godot`EditorFileSystem::_reimport_file(String const&) + 2628
    frame #34: 0x000000010eaccdf2 Godot`EditorFileSystem::reimport_files(Vector<String> const&) + 1410
    frame #35: 0x000000010eacba20 Godot`EditorFileSystem::_update_scan_actions() + 1936
    frame #36: 0x000000010ead0832 Godot`EditorFileSystem::_notification(int) + 802
    frame #37: 0x000000010ead8edc Godot`EditorFileSystem::_notificationv(int, bool) + 76
    frame #38: 0x000000010fe79426 Godot`Object::notification(int, bool) + 22
    frame #39: 0x000000010f199059 Godot`SceneTree::_notify_group_pause(StringName const&, int) + 473
    frame #40: 0x000000010f19951a Godot`SceneTree::idle(float) + 394
    frame #41: 0x000000010e129db6 Godot`Main::iteration() + 870
    frame #42: 0x000000010e105542 Godot`OS_OSX::run() + 402
    frame #43: 0x000000010e1083c2 Godot`main + 866
    frame #44: 0x00007fff5786e115 libdyld.dylib`start + 1
    frame #45: 0x00007fff5786e115 libdyld.dylib`start + 1
  thread #2
    frame #0: 0x00007fff579bf41a libsystem_kernel.dylib`read + 10
    frame #1: 0x000000010e108549 Godot`SemaphoreOSX::wait() + 25
    frame #2: 0x000000011005755c Godot`_IP_ResolverPrivate::_thread_function(void*) + 60
    frame #3: 0x000000010e8a0966 Godot`ThreadPosix::thread_callback(void*) + 54
    frame #4: 0x00007fff57af96c1 libsystem_pthread.dylib`_pthread_body + 340
    frame #5: 0x00007fff57af956d libsystem_pthread.dylib`_pthread_start + 377
    frame #6: 0x00007fff57af8c5d libsystem_pthread.dylib`thread_start + 13
  thread #3
    frame #0: 0x00007fff579bf41a libsystem_kernel.dylib`read + 10
    frame #1: 0x000000010e108549 Godot`SemaphoreOSX::wait() + 25
    frame #2: 0x000000010fcf61ad Godot`VisualServerScene::_gi_probe_bake_thread() + 29
    frame #3: 0x000000010e8a0966 Godot`ThreadPosix::thread_callback(void*) + 54
    frame #4: 0x00007fff57af96c1 libsystem_pthread.dylib`_pthread_body + 340
    frame #5: 0x00007fff57af956d libsystem_pthread.dylib`_pthread_start + 377
    frame #6: 0x00007fff57af8c5d libsystem_pthread.dylib`thread_start + 13
  thread #4, name = 'com.apple.audio.IOThread.client'
    frame #0: 0x00007fff579b47c2 libsystem_kernel.dylib`mach_msg_trap + 10
    frame #1: 0x00007fff579b3cdc libsystem_kernel.dylib`mach_msg + 60
    frame #2: 0x00007fff2f92095a CoreAudio`HALB_MachPort::SendMessageWithReply(unsigned int, unsigned int, unsigned int, unsigned int, mach_msg_header_t*, bool, unsigned int) + 124
    frame #3: 0x00007fff2f9208cd CoreAudio`HALB_MachPort::SendSimpleMessageWithSimpleReply(unsigned int, unsigned int, int, int&, bool, unsigned int) + 45
    frame #4: 0x00007fff2f91d939 CoreAudio`HALC_ProxyIOContext::IOWorkLoop() + 977
    frame #5: 0x00007fff2f91d39c CoreAudio`HALC_ProxyIOContext::IOThreadEntry(void*) + 128
    frame #6: 0x00007fff2f91d0de CoreAudio`HALB_IOThread::Entry(void*) + 72
    frame #7: 0x00007fff57af96c1 libsystem_pthread.dylib`_pthread_body + 340
    frame #8: 0x00007fff57af956d libsystem_pthread.dylib`_pthread_start + 377
    frame #9: 0x00007fff57af8c5d libsystem_pthread.dylib`thread_start + 13
  thread #5, name = 'SGen worker'
    frame #0: 0x00007fff579bdcee libsystem_kernel.dylib`__psynch_cvwait + 10
    frame #1: 0x00007fff57afa662 libsystem_pthread.dylib`_pthread_cond_wait + 732
    frame #2: 0x000000010e0cf62f Godot`thread_func + 687
    frame #3: 0x00007fff57af96c1 libsystem_pthread.dylib`_pthread_body + 340
    frame #4: 0x00007fff57af956d libsystem_pthread.dylib`_pthread_start + 377
    frame #5: 0x00007fff57af8c5d libsystem_pthread.dylib`thread_start + 13
  thread #6, name = 'SGen worker'
    frame #0: 0x00007fff579bdcee libsystem_kernel.dylib`__psynch_cvwait + 10
    frame #1: 0x00007fff57afa662 libsystem_pthread.dylib`_pthread_cond_wait + 732
    frame #2: 0x000000010e0cf612 Godot`thread_func + 658
    frame #3: 0x00007fff57af96c1 libsystem_pthread.dylib`_pthread_body + 340
    frame #4: 0x00007fff57af956d libsystem_pthread.dylib`_pthread_start + 377
    frame #5: 0x00007fff57af8c5d libsystem_pthread.dylib`thread_start + 13
  thread #7, name = 'Finalizer'
    frame #0: 0x00007fff579b47fe libsystem_kernel.dylib`semaphore_wait_trap + 10
    frame #1: 0x000000010dfb1065 Godot`finalizer_thread + 293
    frame #2: 0x000000010e061833 Godot`start_wrapper + 675
    frame #3: 0x00007fff57af96c1 libsystem_pthread.dylib`_pthread_body + 340
    frame #4: 0x00007fff57af956d libsystem_pthread.dylib`_pthread_start + 377
    frame #5: 0x00007fff57af8c5d libsystem_pthread.dylib`thread_start + 13
  thread #8
    frame #0: 0x00007fff579be05a libsystem_kernel.dylib`__semwait_signal + 10
    frame #1: 0x00007fff5793975c libsystem_c.dylib`nanosleep + 199
    frame #2: 0x000000010e89952b Godot`OS_Unix::delay_usec(unsigned int) const + 59
    frame #3: 0x000000010e94ddd5 Godot`EditorExportAndroid::_device_poll_thread(void*) + 8901
    frame #4: 0x000000010e8a0966 Godot`ThreadPosix::thread_callback(void*) + 54
    frame #5: 0x00007fff57af96c1 libsystem_pthread.dylib`_pthread_body + 340
    frame #6: 0x00007fff57af956d libsystem_pthread.dylib`_pthread_start + 377
    frame #7: 0x00007fff57af8c5d libsystem_pthread.dylib`thread_start + 13
  thread #9
    frame #0: 0x00007fff579bf41a libsystem_kernel.dylib`read + 10
    frame #1: 0x000000010e108549 Godot`SemaphoreOSX::wait() + 25
    frame #2: 0x000000010eba44ac Godot`EditorResourcePreview::_thread() + 76
    frame #3: 0x000000010e8a0966 Godot`ThreadPosix::thread_callback(void*) + 54
    frame #4: 0x00007fff57af96c1 libsystem_pthread.dylib`_pthread_body + 340
    frame #5: 0x00007fff57af956d libsystem_pthread.dylib`_pthread_start + 377
    frame #6: 0x00007fff57af8c5d libsystem_pthread.dylib`thread_start + 13
  thread #10
    frame #0: 0x00007fff579be05a libsystem_kernel.dylib`__semwait_signal + 10
    frame #1: 0x00007fff5793975c libsystem_c.dylib`nanosleep + 199
    frame #2: 0x000000010e89952b Godot`OS_Unix::delay_usec(unsigned int) const + 59
    frame #3: 0x000000010ee20584 Godot`EditorFileServer::_thread_start(void*) + 884
    frame #4: 0x000000010e8a0966 Godot`ThreadPosix::thread_callback(void*) + 54
    frame #5: 0x00007fff57af96c1 libsystem_pthread.dylib`_pthread_body + 340
    frame #6: 0x00007fff57af956d libsystem_pthread.dylib`_pthread_start + 377
    frame #7: 0x00007fff57af8c5d libsystem_pthread.dylib`thread_start + 13
  thread #11, name = 'com.apple.NSEventThread'
    frame #0: 0x00007fff579b47c2 libsystem_kernel.dylib`mach_msg_trap + 10
    frame #1: 0x00007fff579b3cdc libsystem_kernel.dylib`mach_msg + 60
    frame #2: 0x00007fff2feb9dc5 CoreFoundation`__CFRunLoopServiceMachPort + 341
    frame #3: 0x00007fff2feb9117 CoreFoundation`__CFRunLoopRun + 1783
    frame #4: 0x00007fff2feb8787 CoreFoundation`CFRunLoopRunSpecific + 487
    frame #5: 0x00007fff2d5ce3c8 AppKit`_NSEventThread + 184
    frame #6: 0x00007fff57af96c1 libsystem_pthread.dylib`_pthread_body + 340
    frame #7: 0x00007fff57af956d libsystem_pthread.dylib`_pthread_start + 377
    frame #8: 0x00007fff57af8c5d libsystem_pthread.dylib`thread_start + 13
  thread #12
    frame #0: 0x00007fff579be562 libsystem_kernel.dylib`__workq_kernreturn + 10
    frame #1: 0x00007fff57af906a libsystem_pthread.dylib`_pthread_wqthread + 1035
    frame #2: 0x00007fff57af8c4d libsystem_pthread.dylib`start_wqthread + 13
(lldb) detach

=================================================================
Got a SIGILL while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries 
used by your application.
=================================================================

Process 40945 detached
(lldb) quit
@vnen
Copy link
Member

vnen commented May 6, 2018

Does this happen on import or when you load in-game? Also, have you tried in the non-Mono version?

@wolfviking0
Copy link
Author

Hi @vnen, the crash happen during the import. And it happen with both version mono and non-mono.

The same big model is loading fine with the three.js viewer.

@wolfviking0
Copy link
Author

@vnen is it possible to run godot directly from Xcode to breakpoint and try to give you more information about the crash ?

@vnen
Copy link
Member

vnen commented May 7, 2018

@wolfviking0 yes, it's possible. You need to set up the command line arguments to run the editor directly and not the project manager. There's a doc page about configuring Xcode, though I'm not sure if it's up to date: http://docs.godotengine.org/en/latest/development/cpp/configuring_an_ide.html#xcode

@wolfviking0
Copy link
Author

wolfviking0 commented May 7, 2018

@vnen I was able to configure the project to start with Xcode and breakpoint, unfortunately the loading of the path directly do not seem to work for me, any suggestion ?

Console:

arguments
0: /Users/anthony.liot/Desktop/engine/godot/bin/godot.osx.tools.64
1: --path
2: /Users/anthony.liot/Desktop/github/aliot/gltfloader/godot/BasicGLTF
3: --editor
4: -NSDocumentRevisionsDebugMode
5: YES
Current path: /
2018-05-07 11:45:59.078545-0700 godot.osx.tools.64[23775:16434992] MessageTracer: Falling back to default whitelist
OpenGL ES 3.0 Renderer: AMD Radeon HD - FirePro D500 OpenGL Engine
2018-05-07 11:46:06.103666-0700 godot.osx.tools.64[23775:16434992] ERROR: load_interactive: Condition ' err != OK ' is true. returned: Ref()
At: scene/resources/scene_format_text.cpp:1225.
�[1;31mERROR: load_interactive: �[0m�[1mCondition ' err != OK ' is true. returned: Ref()
�[0;31m At: scene/resources/scene_format_text.cpp:1225.�[0m
2018-05-07 11:46:06.104178-0700 godot.osx.tools.64[23775:16434992] ERROR: _load: Failed loading resource: res:/Users/anthony.liot/Library/Application Support/Godot/editor_settings-3.tres
At: core/io/resource_loader.cpp:186.
�[1;31mERROR: _load: �[0m�[1mFailed loading resource: res:/Users/anthony.liot/Library/Application Support/Godot/editor_settings-3.tres
�[0;31m At: core/io/resource_loader.cpp:186.�[0m
2018-05-07 11:46:06.104209-0700 godot.osx.tools.64[23775:16434992] WARNING: create: Could not open config file.
At: editor/editor_settings.cpp:855.
�[1;33mWARNING: create: �[0m�[1mCould not open config file.
�[0;33m At: editor/editor_settings.cpp:855.�[0m

@vnen
Copy link
Member

vnen commented May 7, 2018

@wolfviking0 looks like it can't find nor create the config file. I'm not sure why this is a problem but you can try to put a blank file called ._sc_ in the same directory as the executable which will the run in self-contained mode (it will create settings and needed files in the same directory).

@wolfviking0
Copy link
Author

@vnen I can see the issue of the loading the config file is gone, but still Godot is not launching directly the project using --path.

@wolfviking0
Copy link
Author

@vnen, finally here more information I was able to catch, the crash happen in the line 1743 of the file editor_scene_importer_gltf.cpp

The p_parent_bones size is 3, but the index request is 3 too. So the operator [] crash of course.

I am not sure why it's happening in Godot, as I say before this model load fine with three.js.

@vnen
Copy link
Member

vnen commented May 8, 2018

I don't know about glTF, but maybe it could be fixed by checking the actual size of vector in the condition:

if (p_parent_bones.size()) {
s->set_bone_parent(bone_index, p_parent_bones[i]);
}

@wolfviking0
Copy link
Author

wolfviking0 commented May 8, 2018

@vnen right if I add something like,
if (i >= 0 && i< p_parent_bones.size()) { s->set_bone_parent(bone_index, p_parent_bones[i]); }

Godot it's not crashing anymore, but the model is incorrect, is missing one big part (The head ...)

@wolfviking0
Copy link
Author

wolfviking0 commented May 12, 2018

@vnen I wanted to try another model a little bit simpler, but with a similar structure, I try to load this model https://github.com/KhronosGroup/glTF-Sample-Models/tree/master/2.0/CesiumMan
And it seems the animation is not working, it seems the mesh is not attached properly to the squeleton.
It the same issue with other gltf model with squeleton.

@fire
Copy link
Member

fire commented Sep 13, 2018

There have been improvements to GLTF2 loading. Please try your test models.

@Calinou
Copy link
Member

Calinou commented Dec 21, 2019

@wolfviking0 Can you still reproduce this on 3.2 beta4?

@fire
Copy link
Member

fire commented Jan 7, 2020

Can we close this bug after two weeks?

@akien-mga
Copy link
Member

Yes. Please comment if you can still reproduce the issue, and share the affected model.

@akien-mga akien-mga added this to the 3.2 milestone Jan 7, 2020
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