2015-12-27 53 views
1

我無法在SceneKit中正確使用動畫。我想用3D構建一個漂亮的遊戲,但我陷入了一個非常簡單和基本的事情,比如動畫:-(SceneKit動畫問題

我看到了WWDC 2015會話606,印象非常深刻,開始使用示例代碼構建我的遊戲從福克斯項目(https://developer.apple.com/library/ios/samplecode/Fox/Introduction/Intro.html

步驟我做:

  1. 創造了3D工具(獵豹3D)立方體,並導出爲cube.dae
  2. 創建骨骼動畫(只是一個簡單的旋轉)用於立方體,並在cubeAnimation.dae中只導出沒有網格的骨架
  3. 副本cube.dae和cubeAnimation.dae到Xcode項目,並使用蘋果的示例代碼轉換他們cube.scn和cubeAnimation.scn
  4. (WWDC從2015年福克斯項目會話606)在場景中添加cube.scn 5使用Apple示例代碼(WWDC 2015會話606中的Fox項目)將cubeAnimation.scn動畫添加到cube.scn
  5. 構建並運行項目 - > cube.scn正在旋轉但是cube.scn將其初始位置重置爲一個在cubeAnimation.scn

認爲我的3d工具(獵豹3d)導出Collada與一些問題我試圖使用模型創建o開發商,但結果是一樣的。我試圖使用Autodesk Maya導出動畫,但結果相同。我甚至試圖使用來自虛幻引擎示例(https://wiki.unrealengine.com/File:ThirdPerson_FBX.zip)的模型,但結果相同。

我把這裏的Xcode項目源https://www.dropbox.com/s/8vtmem4jqnetmwd/XcodeProject.zip?dl=0 我把這裏https://www.dropbox.com/s/qkkbfhk7wrz4r4z/ModelsAndAnimations.zip?dl=0

也許有一些特殊的Collada導出設置,使動畫工作正確的模型和動畫源?

+0

如果您想要簡單並支持,請使用虛幻引擎。如果你想簡單,緩慢和有問題,使用Unity。如果您想要問題,請使用SceneKit。 – Confused

+0

困惑,也許你是對的:(你有場景包/團結/虛幻的豐富經驗? – Nils

+0

足夠的權力,讓我覺得我不會浪費你的時間作出評論 – Confused

回答

1

這似乎是我的錯,我沒有輸出到.dae時在初始模型中包含鑽機。我只在動畫模型中包含裝備。

1

如果cubeAnimation.scn中的動畫爲矩陣生成動畫,則預計此動畫控制位置,旋轉和縮放。如果關鍵幀包含旋轉(歐拉角,軸角或四元數),則旋轉繁忙而不重置其位置。

所以這取決於導出器如何導出動畫。 (例如,我知道3dsmax可以導出單個動畫進行翻譯/旋轉/縮放,直到您明確要求「烘焙變換」)。

一種解決方法是讓你的骨骼在0,0,0集中在cubeAnimation.scn和使用中間節點來移動你的立方體cube.scn