Error while exporting gltf in Blender 3.0 #93929

Closed
opened 2021-12-10 08:58:09 +01:00 by Christoph Werner · 20 comments

System Information
Version: 3.0.0, branch: master, commit date: 2021-12-02 18:35, hash: f1cca3055776, type: release
Build date: 2021-12-03, 00:44:02 Platform: 'Windows-10-10.0.19043-SP0'

Short description of error
I get this error when trying to export to gltf in Blender 3.
This happen as soon as I change something in the scene and try to export it, this error appears.
A second try exports the file correctly and the error disappears. But it appears again as soons as something will be changed.

Error: Python: Traceback (most recent call last):
  File "C:\Program Files\Blender Foundation\Blender 3.0\3.0\scripts\addons\io_scene_gltf2\__init__.py", line 464, in invoke
    for (k, v) in settings.items():
RuntimeError: IDPropertyGroup changed size during iteration

How to reproduce:

  • Open default scene
  • {nav File > Export > glTF 2.0}
  • On sidebar, create new operator preset (lets say "test")
  • Select "test"
  • Enable Export Settings
  • Export

Repeat step 2

Another try and the error disappears. Objekt will be exported.

Is there a fix for this or can I do something myself?
2021-12-10 12-43-11.mp4

**System Information** Version: 3.0.0, branch: master, commit date: 2021-12-02 18:35, hash: f1cca3055776, type: release Build date: 2021-12-03, 00:44:02 Platform: 'Windows-10-10.0.19043-SP0' **Short description of error** I get this error when trying to export to gltf in Blender 3. This happen as soon as I change something in the scene and try to export it, this error appears. A second try exports the file correctly and the error disappears. But it appears again as soons as something will be changed. ``` Error: Python: Traceback (most recent call last): File "C:\Program Files\Blender Foundation\Blender 3.0\3.0\scripts\addons\io_scene_gltf2\__init__.py", line 464, in invoke for (k, v) in settings.items(): RuntimeError: IDPropertyGroup changed size during iteration ``` **How to reproduce:** - Open default scene - {nav File > Export > glTF 2.0} - On sidebar, create new operator preset (lets say "test") - Select "test" - Enable Export Settings - Export # Repeat step 2 Another try and the error disappears. Objekt will be exported. Is there a fix for this or can I do something myself? [2021-12-10 12-43-11.mp4](https://archive.blender.org/developer/F12726919/2021-12-10_12-43-11.mp4)

Added subscriber: @ChristophWerner

Added subscriber: @ChristophWerner

blender/blender#94678 was marked as duplicate of this issue

blender/blender#94678 was marked as duplicate of this issue

blender/blender#93937 was marked as duplicate of this issue

blender/blender#93937 was marked as duplicate of this issue
Member

Added subscriber: @PratikPB2123

Added subscriber: @PratikPB2123
Member

Hi, thanks for the report. Can not reproduce here on master and 3.0.0

Could you please share your export settings? (you can find them in sidebar of the the file view)

image.png

Hi, thanks for the report. Can not reproduce here on master and 3.0.0 Could you please share your export settings? (you can find them in sidebar of the the file view) ![image.png](https://archive.blender.org/developer/F12726453/image.png)

Here're my settings. Maybe when preferences are loaded?

image.png

And here's a video to see what happen.

2021-12-10 12-43-11.mp4

Here're my settings. Maybe when preferences are loaded? ![image.png](https://archive.blender.org/developer/F12726902/image.png) And here's a video to see what happen. [2021-12-10 12-43-11.mp4](https://archive.blender.org/developer/F12726919/2021-12-10_12-43-11.mp4)
Member

Added subscriber: @Zoni

Added subscriber: @Zoni
Member

Changed status from 'Needs Triage' to: 'Confirmed'

Changed status from 'Needs Triage' to: 'Confirmed'
Member

Thanks for clarifying. Can confirm.

Thanks for clarifying. Can confirm.

Added subscriber: @scurest

Added subscriber: @scurest

While it's easy to fix (invoke should not modify settings while iterating over it; just handle export_selected before the loop), save_settings should also not save export_selected in the first place since it only exists for backwards compatibility.

While it's easy to fix (invoke should not modify settings while iterating over it; just handle export_selected before the loop), save_settings should also not save export_selected in the first place since it only exists for backwards compatibility.
Member

Added subscriber: @JulienDuroure

Added subscriber: @JulienDuroure
Julien Duroure self-assigned this 2021-12-11 22:28:55 +01:00
Member
Proposed fix: https://github.com/KhronosGroup/glTF-Blender-IO/pull/1497

@JulienDuroure Thank you very much! I've have tested your fix. Seem to work fine so far!

@JulienDuroure Thank you very much! I've have tested your fix. Seem to work fine so far!

This issue was referenced by 503570ad70

This issue was referenced by 503570ad703268ef55cfa38beaa28ad15e3ecc57
Member

Changed status from 'Confirmed' to: 'Resolved'

Changed status from 'Confirmed' to: 'Resolved'

Just out of curiosity: will the fix also be included in the next official update?

Just out of curiosity: will the fix also be included in the next official update?
Member

Hello,
This will be included in 3.1 alpha with next build (tomorrow)

There is no plan to add it in next 3.0.1 corrective release (This is not a regression, not a critical bug).

Workaround you can use if you want, is writing this in python console:

del bpy.context.scene['glTF2ExportSettings']['export_selected']

Hello, This will be included in 3.1 alpha with next build (tomorrow) There is no plan to add it in next 3.0.1 corrective release (This is not a regression, not a critical bug). Workaround you can use if you want, is writing this in python console: > del bpy.context.scene['glTF2ExportSettings']['export_selected']

In #93929#1274319, @JulienDuroure wrote:
Hello,
This will be included in 3.1 alpha with next build (tomorrow)

There is no plan to add it in next 3.0.1 corrective release (This is not a regression, not a critical bug).

Workaround you can use if you want, is writing this in python console:

del bpy.context.scene['glTF2ExportSettings']['export_selected']

Thank you. I've updated the py code file already with your changes.

> In #93929#1274319, @JulienDuroure wrote: > Hello, > This will be included in 3.1 alpha with next build (tomorrow) > > There is no plan to add it in next 3.0.1 corrective release (This is not a regression, not a critical bug). > > Workaround you can use if you want, is writing this in python console: >> del bpy.context.scene['glTF2ExportSettings']['export_selected'] Thank you. I've updated the py code file already with your changes.
Member

Added subscribers: @labguy, @iss

Added subscribers: @labguy, @iss
Sign in to join this conversation.
No Milestone
No project
No Assignees
5 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender-addons#93929
No description provided.