Bases: MayaInstancePlugin
Collect the renderable camera(s) for the render layer
Source code in client/ayon_maya/plugins/publish/collect_renderable_camera.py
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31 | class CollectRenderableCamera(plugin.MayaInstancePlugin):
"""Collect the renderable camera(s) for the render layer"""
# Offset to be after renderlayer collection.
order = pyblish.api.CollectorOrder + 0.02
label = "Collect Renderable Camera(s)"
hosts = ["maya"]
families = ["vrayscene_layer",
"renderlayer"]
def process(self, instance):
if "vrayscene_layer" in instance.data.get("families", []):
layer = instance.data.get("layer")
else:
layer = instance.data["renderlayer"]
cameras = cmds.ls(type="camera", long=True)
renderable = [cam for cam in cameras if
get_attr_in_layer("{}.renderable".format(cam), layer)]
self.log.debug(
"Found renderable cameras %s: %s", len(renderable), renderable
)
instance.data["cameras"] = renderable
|