1

我实际上正在编写一个脚本,以使用 Maya 批处理模式 (mayapy.exe) 将一个非常基本的 Maya.ma场景转换为 Nuke.nk项目

我已经找到了如何从相机中选择、搜索信息,但我不知道如何将它们导出到文本文件中,因为带有.nk扩展名的文本文件在 Nuke 中有效。目前我使用它来将相机导出为 FBX :

outputFilename = os.path.splitext(current)[0]+'.fbx'
    print "Output file: ", outputFilename

cmds.file(outputFilename, exportSelected=True, typ="FBX export", force=True, options="v=0;", es=1)

但这不适用于文本文件或.nk文件,因为 Maya 在导出设置中没有此选项。知道如何指定在带有.nk扩展名的文本文件中写入吗?

谢谢你。

4

1 回答 1

2

对于批量转换,使用这样的语法来完成fbx导出:

import maya.mel as mel

mel.eval('FBXExport -f "/Users/swift/Desktop/fileName";')

您将fileName.fbx在桌面上获得文件。

...或者只是将您想要的内容写入.nk文件...

fileName = "/Users/swift/Desktop/fileName.nk"

# pass in 'r' for reading a file
# pass in 'r+' for reading and writing a file
# pass in 'w' for overwriting the file
# pass in 'a' for appending to the file

fileWrite = open(fileName,'w')

# write here a content of .nk file
fileWrite.write('Hello, NUKE! ...blah, blah, blah...') 
fileWrite.close()

您将fileName.nk在桌面上获得文件。


对于非批量转换,使用如下代码:

from pymel.core import *

fileName = fileDialog2()
print fileName[0]
fileWrite = open(fileName[0],'w')

# write here a content of .nk file
fileWrite.write('Hello, NUKE') 
fileWrite.close()
print open(fileName[0],'r').read()

在打开的对话框中只需键入fileName扩展.nk名。你会得到.nkASCII 文件。

于 2018-04-06T20:48:37.207 回答