0
我想從Maya導入一個運動曲線進入我的XNA遊戲,但我無法弄清楚如何。基本上我想通過它的名字來捕捉曲線,並在不同的時間點查找它的值。從Maya導入XNA曲線?
曲線是否完全導出到FBX中?而且,如果不是,那麼如何捕捉它呢?
編輯:瑪雅可以輸出到瑪雅ASCII,我試圖解析它,但我不知道什麼公式我應該用來重新創建曲線。
這裏是一個瑪雅ASCII段形成的典型曲線:
createNode transform -name "curve1";
createNode nurbsCurve -name "curveShape1" -parent "curve1";
setAttr -keyable off ".visibility";
setAttr ".cached" -type "nurbsCurve"
3 11 0 no 3
16 0 0 0 1 2 3 4 5 6 7 8 9 10 11 11 11
14
-4.9774564508407968 0 -6.8331005825440476
-5.5957526204336077 0 -5.5944567905896161
-6.8323449596191823 0 -3.1171692066807277
-5.6935230034445992 0 3.3047128765440847
-1.6528787527978079 0 8.8676235621397499
7.5595909161095838 0 10.325347443191644
9.2297347448508607 0 8.5586791722955731
10.0730315036276 0 0.93412333819133941
5.9770106513247976 0 3.7809964481624871
2.9006817236214149 0 -3.3327711853359037
11.373191256465434 0 -4.6672854260704906
4.5697574985247682 0 -14.178349348937205
2.4191279569332935 0 -11.415532638650156
1.3438131861375628 0 -10.034124283506653
;
我設法某個地方找到該文件格式參考,這裏最重要的信息是結指數(16 0 0 0 1 2 3 4 5 6 7 8 9 10 11 11 11
)和座標(包含所有行三個數字)。
但是,我仍然不知道如何重新創建曲線。我爲nurbscurves,bsplines等搜索了很多,但無法將Maya中的結果與我能找到的任何代碼進行匹配。
它可以保存到Maya Ascii。我已經爲它做了一個解析器,但是我一直無法以這種方式重新創建正確的路徑,格式太複雜。我希望XNA可以導入FBX並以這種方式訪問曲線。 – sinsro
我編輯了原文,並添加了關於Maya ASCII定義曲線方式的一些信息。 – sinsro
@sinsro是的,我可以看到這將很難重現! XNA將曲線模型化爲有理Bézier樣條曲線,而不是曲折曲面。在Maya中創建曲線作爲bézier樣條曲線而不是nurbs會有多逼真? (不幸的是,我從來沒有用過Maya) – MattDavey