mirror of
https://github.com/ynput/ayon-core.git
synced 2026-01-03 01:14:54 +01:00
🐛 fix handling of extra geometry
This commit is contained in:
parent
3fffcf29ea
commit
45d228ce9f
3 changed files with 18 additions and 25 deletions
|
|
@ -61,10 +61,10 @@ class ExtractCameraAlembic(openpype.api.Extractor):
|
|||
|
||||
if bake_to_worldspace:
|
||||
job_str += ' -worldSpace'
|
||||
for member in member_shapes:
|
||||
self.log.info(f"processing {member}")
|
||||
for member in members:
|
||||
transform = cmds.listRelatives(
|
||||
member, parent=True, fullPath=True)[0]
|
||||
member, parent=True, fullPath=True)
|
||||
transform = transform[0] if transform else member
|
||||
job_str += ' -root {0}'.format(transform)
|
||||
|
||||
job_str += ' -file "{0}"'.format(path)
|
||||
|
|
|
|||
|
|
@ -172,18 +172,22 @@ class ExtractCameraMayaScene(openpype.api.Extractor):
|
|||
dag=True,
|
||||
shapes=True,
|
||||
long=True)
|
||||
attrs = {"backgroundColorR": 0.0,
|
||||
"backgroundColorG": 0.0,
|
||||
"backgroundColorB": 0.0,
|
||||
"overscan": 1.0}
|
||||
|
||||
# Fix PLN-178: Don't allow background color to be non-black
|
||||
for cam in cmds.ls(
|
||||
for cam, (attr, value) in itertools.product(cmds.ls(
|
||||
baked_camera_shapes, type="camera", dag=True,
|
||||
shapes=True, long=True):
|
||||
attrs = {"backgroundColorR": 0.0,
|
||||
"backgroundColorG": 0.0,
|
||||
"backgroundColorB": 0.0,
|
||||
"overscan": 1.0}
|
||||
for attr, value in attrs.items():
|
||||
plug = "{0}.{1}".format(cam, attr)
|
||||
unlock(plug)
|
||||
cmds.setAttr(plug, value)
|
||||
shapes=True, long=True), attrs.items()):
|
||||
# the above call still pull in shapes that are not
|
||||
# cameras, so we filter them out here
|
||||
if cmds.nodeType(cam) != "camera":
|
||||
continue
|
||||
plug = "{0}.{1}".format(cam, attr)
|
||||
unlock(plug)
|
||||
cmds.setAttr(plug, value)
|
||||
|
||||
self.log.info("Performing extraction..")
|
||||
cmds.select(cmds.ls(members, dag=True,
|
||||
|
|
|
|||
|
|
@ -52,20 +52,9 @@ class ValidateCameraContents(pyblish.api.InstancePlugin):
|
|||
|
||||
if not cls.validate_shapes:
|
||||
cls.log.info("not validating shapes in the content")
|
||||
|
||||
for member in members:
|
||||
parents = cmds.ls(member, long=True)[0].split("|")[1:-1]
|
||||
cls.log.info(parents)
|
||||
parents_long_named = [
|
||||
"|".join(parents[:i]) for i in range(1, 1 + len(parents))
|
||||
]
|
||||
cls.log.info(parents_long_named)
|
||||
if cameras[0] in parents_long_named:
|
||||
cls.log.error(
|
||||
"{} is parented under camera {}".format(member, cameras[0]))
|
||||
invalid.extend(member)
|
||||
return invalid
|
||||
|
||||
|
||||
# non-camera shapes
|
||||
valid_shapes = cmds.ls(shapes, type=('camera', 'locator'), long=True)
|
||||
shapes = set(shapes) - set(valid_shapes)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue