ucupumar / ucupaint

Ucupaint is Blender addon to manage texture layers for Eevee and Cycles renderer.
GNU General Public License v3.0
874 stars 31 forks source link

Error when baking Other Object's layer when the other object is Text or Curves #126

Closed alexking closed 3 weeks ago

alexking commented 3 weeks ago

I'm not sure if this is supported, but I've found an issue while baking other objects to a channel, where if the object isn't a mesh (and is instead a text or curve), a python error appears and it doesn't work.

Error: Python: Traceback (most recent call last):
  File "[...]\Blender Foundation\Blender\4.1\scripts\addons\ucupaint\BakeToLayer.py", line 1072, in execute
    prepare_bake_settings(book, objs, yp, samples=self.samples, margin=self.margin,
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "[...]\Blender\4.1\scripts\addons\ucupaint\bake_common.py", line 561, in prepare_bake_settings
    uv = uv_layers.get(uv_map)
         ^^^^^^^^^^^^^
AttributeError: 'list' object has no attribute 'get'

I believe this is happening because in common.py it returns a blank array if it isn't a MESH, which it doesn't seem like prepare_bake_settings is expecting.