Skip to content

Conversation

@tobiasjewson
Copy link

Remove use of material.use_nodes deprecated in Blender 5.0

material.use_nodes has been deprecated in Blender 5.0.

detailed explanation

  • Removed use of use_nodes in the PlasterWrapper constructor and harvest_from_rendercontent.

fixes / resolves

Importing a .3dm file in Blender 5.0 currently fails with the error:

Python: Traceback (most recent call last):
  File "/Users/<USER>/Library/Application Support/Blender/5.0/extensions/user_default/import_3dm/__init__.py", line 201, in execute
    return read_3dm(context, options)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/<USER>/Library/Application Support/Blender/5.0/extensions/user_default/import_3dm/read3dm.py", line 121, in read_3dm
    converters.handle_materials(context, model, materials, update_materials)
  File "/Users/<USER>/Library/Application Support/Blender/5.0/extensions/user_default/import_3dm/converters/material.py", line 509, in handle_materials
    default_material(blmat)
  File "/Users/<USER>/Library/Application Support/Blender/5.0/extensions/user_default/import_3dm/converters/material.py", line 277, in default_material
    plaster = PlasterWrapper(blender_material)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/<USER>/Library/Application Support/Blender/5.0/extensions/user_default/import_3dm/converters/material.py", line 202, in __init__
    super(PlasterWrapper, self).__init__(material, is_readonly=False, use_nodes=True)
TypeError: ShaderWrapper.__init__() got an unexpected keyword argument 'use_nodes'

Removing the use of use_nodes resolves this and import apears to work in line with Blender 4.

@tobiasjewson
Copy link
Author

This should be a fix for #153.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant