簡體   English   中英

使用Python執行GameFbxExporter Maya

[英]Execute GameFbxExporter Maya with Python

我需要使用Maya的GameFbXExporter插件導出數千個文件,並且我想知道是否有任何方法可以編寫這些導出腳本,因為知道每個文件中的參數都很好。 我需要做的就是在FBX中填寫路徑部分和導出文件的名稱,然后使用插件啟動導出本身。

我有點迷茫,不知道該怎么做。 有人可以幫我理解如何實現嗎?

謝謝

游戲導出器是用MEL編寫的,因此您可以使用maya.mel模塊從Python與它進行交互。 這將打開對話框,例如:

import maya.mel as mel
mel.eval("gameFbxExporter();")

不幸的是,快速瀏覽一下實際的游戲導出器腳本(位於scripts/others目錄中的maya安裝目錄中-它們都以前綴“ gameFBX”開頭)使UI看起來像是無可救葯地糾纏了出口; 它似乎沒有公開實際上只是以批處理友好的方式導出當前文件的任何內容。

該操作過程稱為gameExp_FBXExport ,在“ gameFbxExporter.mel”中定義。 看起來實際的出口業務實際上是委派給常規的FBX插件-游戲導出器中的所有其他內容都只是在管理fbx預設,選擇要導出的部分場景(如果您以這種方式設置了場景)和然后調用fbx插件。 因此,您可以通過遍歷文件並從Python調用FBXExport()來使用Python批處理該過程。 這會將文件導出到FBX:

 import maya.cmds as cmds
 cmds.FBXExport('-file', 'path/to/file.fbx')

它只會使用當前處於活動狀態的FBX設置,因此您需要確信文件設置正確。 您將很容易將其編寫為cmds.FBXExport(f='path/to/file')但這不起作用cmds.FBXExport(f='path/to/file')插件命令不使用常規的python語法。

如果您當前的設置依賴於導出選擇的功能,則需要弄清楚如何緩存正確的選擇-如果您使用的是“導出選擇集”功能,則應該可以讓導出器通過以下方式找到設置名稱,然后在導出之前選擇它。

 cmds.select("name_of_selection_set")
 cmds.FBXExport('-file', 'path/to/file.fbx')

您可以使用此處記錄的其他FBX插件命令來檢查和操作文件中的設置。

大多數專業用戶不完全使用GameExport管道,因為它非常不透明並且不批處理。 從長遠來看,您可能需要編寫一個簡單的系統,為不同的文件類型提供標准設置,並在不使用GameExporter的情況下直接導出FBX。盡管這是一個不平凡的項目,但它的維護和擴展將比黑客攻擊更容易。坦率地說,這很Auto腳,繞過Autodesk版本的邊緣。

如果您還不熟悉它,那么http://tech-artists.org/是尋求管道幫助和建議的好地方。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM