def geometers_materials():
"""
@return:
"""
_dict = {}
all_meshs = cmds.ls(type="mesh", dag=True, l=True)
for _mesh in all_meshs:
_mesh_dict = {}
sgs = cmds.listConnections(_mesh, type="shadingEngine")
sgs_dict = {}
for _sg in sgs:
_sg_dict = {}
"""
获取材质引擎关联信息
"""
surface_shader = cmds.listConnections("{}.surfaceShader".format(_sg))
displacement_shader = cmds.listConnections("{}.displacementShader".format(_sg))
volume_shader = cmds.listConnections("{}.volumeShader".format(_sg))
aisurface_shader = cmds.listConnections("{}.aiSurfaceShader".format(_sg))
aivolume_shader = cmds.listConnections("{}.aiVolumeShader".format(_sg))
_sg_dict["surfaceShader"] =surface_shader
_sg_dict["displacementShader"] = displacement_shader
_sg_dict["volumeShader"] =volume_shader
_sg_dict["aiSurfaceShader"]= aisurface_shader
_sg_dict["aiVolumeShader"] = aivolume_shader
sgs_dict[_sg] = _sg_dict
_mesh_dict["sgs"] = sgs_dict
_dict[_mesh] = _mesh_dict
return _dict
获取到整个模型文件中,模型和材质引擎以及材质球的相关联信息
剩下的就是保存到本地的json 了,正常情况我们是保存在服务器上的,临时保存到json 就可以了,方便后面读取