maya通过视窗获取相机并设置可渲染
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
import maya.cmds as cmds import maya.mel as mel import maya.OpenMaya as OpenMaya import maya.OpenMayaUI as OpenMayaUI #读取视窗 view = OpenMayaUI.M3dView.active3dView() camDag = OpenMaya.MDagPath() view.getCamera(camDag) camera = camDag.fullPathName() name= cmds.listRelatives(camera, parent = True)[0] #print (name)#打印视口相机名 render_cam = name def change_render_cam(render_cam): modernCam = modelPanel("modelPanel4", q=1, cam=1) render_cam_shape = cmds.listRelatives(render_cam, shapes=1)[0]#查询渲染列表相机 cam_list = cmds.ls(type='camera') for cam_shap in cam_list: if cam_shap != render_cam_shape: cmds.setAttr("%s.renderable"%cam_shap, 0) else: cmds.setAttr("%s.renderable"%cam_shap, 1) mel.eval('unifiedRenderGlobalsWindow;') #注销这一行不弹渲染窗口,对功能无影响 change_render_cam(render_cam)