36 lines
1016 B
Python
36 lines
1016 B
Python
|
#!/usr/bin/env python
|
|||
|
# -*- coding: utf-8 -*-
|
|||
|
|
|||
|
"""
|
|||
|
版权所有: 清泉时代科技有限公司
|
|||
|
联系方式: q.100@qq.com
|
|||
|
创建日期: 2024/03/04
|
|||
|
"""
|
|||
|
|
|||
|
import maya.cmds as cmds
|
|||
|
|
|||
|
def sg_current_project_dna():
|
|||
|
"""
|
|||
|
更新当前项目的DNA文件路径
|
|||
|
- 检查场景中的RL4节点
|
|||
|
- 更新项目DNA路径
|
|||
|
"""
|
|||
|
# 获取所有embeddedNodeRL4类型的节点
|
|||
|
rl4_nodes = cmds.ls(type="embeddedNodeRL4")
|
|||
|
|
|||
|
# 如果没有找到RL4节点,报错并返回
|
|||
|
if not rl4_nodes:
|
|||
|
cmds.error("No RL4 node object...")
|
|||
|
return
|
|||
|
|
|||
|
# 获取当前项目DNA路径
|
|||
|
pre_path = cmds.SGDescriptor(gpd=True)
|
|||
|
|
|||
|
# 检查每个RL4节点
|
|||
|
for node in rl4_nodes:
|
|||
|
# 获取节点的DNA文件路径
|
|||
|
rl4_path = cmds.getAttr(f"{node}.dnaFilePath")
|
|||
|
|
|||
|
# 如果文件存在且与当前路径不同,则更新项目DNA路径
|
|||
|
if cmds.file(rl4_path, query=True, exists=True) and rl4_path != pre_path:
|
|||
|
cmds.SGDescriptor(spd=rl4_path)
|