#blender #gltf
Вопрос:
Я довольно новичок в blender, анимации и gltf. Я успешно создал свою 3d-модель и смог экспортировать ее в файл glb. В настоящее время я пытаюсь добавить анимацию ходьбы, но экспорт в gltf с анимацией не работает. Это ошибка, которую выдает экспортер:
Python: Traceback (most recent call last):
File "E:ApplicationsBlender2.92scriptsaddonsio_scene_gltf2__init__.py", line 575, in execute
return gltf2_blender_export.save(context, export_settings)
File "E:ApplicationsBlender2.92scriptsaddonsio_scene_gltf2blenderexpgltf2_blender_export.py", line 46, in save
json, buffer = __export(export_settings)
File "E:ApplicationsBlender2.92scriptsaddonsio_scene_gltf2blenderexpgltf2_blender_export.py", line 63, in __export
__gather_gltf(exporter, export_settings)
File "E:ApplicationsBlender2.92scriptsaddonsio_scene_gltf2blenderexpgltf2_blender_export.py", line 72, in __gather_gltf
active_scene_idx, scenes, animations = gltf2_blender_gather.gather_gltf2(export_settings)
File "E:ApplicationsBlender2.92scriptsaddonsio_scene_gltf2blenderexpgltf2_blender_gather.py", line 39, in gather_gltf2
animations = __gather_animations(blender_scene, export_settings)
File "E:ApplicationsBlender2.92scriptsaddonsio_scene_gltf2blenderexpgltf2_blender_gather.py", line 83, in __gather_animations
animations_, merged_tracks = gltf2_blender_gather_animations.gather_animations(_blender_object, merged_tracks, len(animations), export_settings)
File "E:ApplicationsBlender2.92scriptsaddonsio_scene_gltf2blenderexpgltf2_blender_gather_animations.py", line 76, in gather_animations
animation = __gather_animation(blender_action, blender_object, export_settings)
File "E:ApplicationsBlender2.92scriptsaddonsio_scene_gltf2blenderexpgltf2_blender_gather_animations.py", line 114, in __gather_animation
channels=__gather_channels(blender_action, blender_object, export_settings),
File "E:ApplicationsBlender2.92scriptsaddonsio_scene_gltf2blenderexpgltf2_blender_gather_animations.py", line 150, in __gather_channels
blender_action, blender_object, export_settings)
File "E:ApplicationsBlender2.92scriptsaddonsio_scene_gltf2blenderexpgltf2_blender_gather_cache.py", line 65, in wrapper_cached
result = func(*args)
File "E:ApplicationsBlender2.92scriptsaddonsio_scene_gltf2blenderexpgltf2_blender_gather_animation_channels.py", line 83, in gather_animation_channels
None)
File "E:ApplicationsBlender2.92scriptsaddonsio_scene_gltf2blenderexpgltf2_blender_gather_animation_channels.py", line 202, in __gather_animation_channel
sampler=__gather_sampler(channels, blender_object, export_settings, bake_bone, bake_channel, bake_range_start, bake_range_end, action_name, driver_obj),
File "E:ApplicationsBlender2.92scriptsaddonsio_scene_gltf2blenderexpgltf2_blender_gather_animation_channels.py", line 263, in __gather_sampler
export_settings
File "E:ApplicationsBlender2.92scriptsaddonsio_scene_gltf2blenderexpgltf2_blender_gather_cache.py", line 65, in wrapper_cached
result = func(*args)
File "E:ApplicationsBlender2.92scriptsaddonsio_scene_gltf2blenderexpgltf2_blender_gather_animation_samplers.py", line 65, in gather_animation_sampler
bake_bone, bake_channel, bake_range_start, bake_range_end, action_name, driver_obj, export_settings),
File "E:ApplicationsBlender2.92scriptsaddonsio_scene_gltf2blenderexpgltf2_blender_gather_cache.py", line 65, in wrapper_cached
result = func(*args)
File "E:ApplicationsBlender2.92scriptsaddonsio_scene_gltf2blenderexpgltf2_blender_gather_animation_samplers.py", line 240, in __gather_input
export_settings)
File "E:ApplicationsBlender2.92scriptsaddonsio_scene_gltf2blenderexpgltf2_blender_gather_cache.py", line 65, in wrapper_cached
result = func(*args)
File "E:ApplicationsBlender2.92scriptsaddonsio_scene_gltf2blenderexpgltf2_blender_gather_animation_sampler_keyframes.py", line 240, in gather_keyframes
step
File "E:ApplicationsBlender2.92scriptsaddonsio_scene_gltf2blenderexpgltf2_blender_gather_cache.py", line 90, in wrapper_bonecache
result = func(*args)
File "E:ApplicationsBlender2.92scriptsaddonsio_scene_gltf2blenderexpgltf2_blender_gather_animation_sampler_keyframes.py", line 177, in get_bone_matrix
drivers_to_manage = get_sk_drivers(obj_driver)
File "E:ApplicationsBlender2.92scriptsaddonsio_scene_gltf2blenderexpgltf2_blender_gather_cache.py", line 117, in wrapper_skdriverdiscover
result = func(*args)
File "E:ApplicationsBlender2.92scriptsaddonsio_scene_gltf2blenderexpgltf2_blender_gather_drivers.py", line 54, in get_sk_drivers
sk_name = child.data.shape_keys.path_resolve(get_target_object_path(sk_c.data_path)).name
ValueError: Key.path_resolve("key_blocks["Key 1"]") could not be resolved
location: <unknown location>:-1
Я предполагаю, что экспортер gltf не может найти мои ключевые кадры, но я понятия не имею, как исправить эту проблему.
Любая помощь будет очень признательна!
Спасибо
Ответ №1:
Я отправил сообщение об ошибке для экспортера gltf. Вы можете посмотреть на это здесь: https://github.com/KhronosGroup/glTF-Blender-IO/issues/1401 Удаление недействительных драйверов устраняет проблему.