2013-02-06 143 views
1

我是新來的團結。我有兩個動畫的.fbx格式。他們可以移動..現在我想當兩個將相互碰撞一個聲音會產生。是否有任何想法我將如何做到這一點。預先感謝如何在Unity中碰撞.fbx動畫

回答

2

我認爲你需要閱讀物理學如何工作,然後瞭解如何處理觸發事件和分離檢測。

閱讀this這裏,和this。第一個讓你瞭解Unity引擎如何工作。後者提供了關於如何進行碰撞檢測的視頻教程。

如果你不想這樣做,只是想代碼,我發現this一個快速谷歌:

var crashSound : AudioClip; // set this to your sound in the inspector function 
OnCollisionEnter (collision : Collision) {  
    // next line requires an AudioSource component on this gameobject5.  
    audio.PlayOneShot(crashSound); 
} 
+0

感謝您的回覆。事實上,我可以將物理應用於簡單物體,就像cube.But現在我想應用物理動畫這是我的fbx文件..我無法做到這一點...我已添加網格對撞機,剛體重力與我的fbx文件。我有一個地形下面有地形對撞機,但是當我按下播放按鈕時,我的角色會穿過地形並墜落下來..我不知道這是怎麼回事......我已經閱讀了所有發送的鏈接... –

+0

我發現了這個,也許它是相關的? http://answers.unity3d.com/questions/47095/mesh-colliders-not-working-on-fbx-imported-buildin.html – Joetjah

+0

你將不得不使用對撞機,最常見的是膠囊,因爲你不能動畫碰撞器使網狀碰撞器在動畫對象上不能很好地工作。你說你有一個箱子可以工作,它有相同的概念。 – Shredder2500

0

您可以將MeshCollider添加到FBX網格。無論如何,這不是一個好主意,因爲這會導致性能問題。

您可以爲每個角色創建一個空的gameobject,並添加到它們:fbx動畫和一個簡單的對撞機(某些立方體,球體,膠囊等)。然後,當你使用它們的腳本時,你將它附加到父對象上,然後從那裏處理整個事情。

如果您希望碰撞器從動畫的特定位置移動(如拳擊運動或踢球),那麼您可以要求3D動畫師/建模師在該點上添加一個簡單的網格。例如,一個拳頭上的球體,將與動畫一起移動。然後,在Unity中,您將隱藏球體的網格,但添加一個網格物體碰撞體。 :)

希望它有幫助!

0

大多數情況下,如果您將動畫應用到對象上,那麼您將失去物理反應。不要相信我?看到這裏:http://www.youtube.com/watch?v=oINKQUJZc1Q

很明顯,動畫不是Unity物理的一部分。想一想......統一物理學根據牛頓和朋友的法律來決定物體的位置和旋轉。你認爲這些法則如何符合關鍵幀任意動畫?他們不能:因此,當你嘗試時你會得到瘋狂的結果。

如何解決?使用Unity物理也可用於動畫:學會掌握rigidbody.AddForce以及所有其他描述here的內容。

您可能總是希望將物理和動畫分開。 That's how you get out of trouble

如果你真的想知道:這是我的個人經驗,關於如何調解與動畫物理。

有時,即使結合簡單的參數到物理和另一 到的動畫(或介導用戶輸入的腳本)可能導致 災難性後果。我做了一個星體:由 用戶鼠標(通過標記「塊剛體旋轉」),方向和物理速度爲 旋轉控制器。它在一個箱子對撞機裏面。想象一下,如果一個以幾度角度定向的立方體遇到平坦的地面會發生什麼 :它應該掉落並旋轉,直到其中一個面完全落在地面上。這是不可能的,因爲我阻止了與身體的旋轉的任何物理交互:因此,該框想要在地面上變得平坦,但是不能。這種緊張最終使得它永遠向前發展:在現實世界中不可能發生的事情。爲了調解這個錯誤, 我已經根據用戶輸入根據 動態改變了「塊旋轉」參數:當船正在移動時,旋轉由用戶控制,但是一旦用戶停止控制船, 旋轉參數被返回給物理引擎。另一個解決方案是在對撞機上投下一道光線,檢查地面是否接近,並避免船隻不在移動時發生碰撞(我認爲這就是Halo Combat Evolved中女妖的控制方式)。當玩電子遊戲時,總是看看你的用戶輸入是如何被調入物理引擎的:你可以發現一般玩家通常不會注意到的東西。

+0

順便說一句,也可能有其他原因,一個非工作對撞機。當期待你的動畫對象相應於物理行爲時,這只是需要記住的一點。 – Saturnix

+0

嘗試[animatePhysics](http://docs.unity3d.com/Documentation/ScriptReference/Animation-animatePhysics.html)。如果動畫角色速度不是很高,我從來沒有遇到動畫角色的問題。 – Kay