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) |