2016-04-30 52 views
0

我的目標是在物體碰撞某物時改變物體的顏色。 對象本身是一個具有一些粒子效果的capsuleCollider。 CapsuleCollider正在跟蹤玩家手錶的位置。OnCollisionEnter無法正常工作Unity3d 5

telePoint.GetComponent<Rigidbody>().MovePosition(new Vector3(tempHit.point.x, player.transform.position.y, tempHit.point.z)); 

我嘗試使用這個腳本連接到撞機我位置球員觀看:

void OnCollisionEnter(Collision col) { 

    Debug.LogError("COLLISION ??" + col.gameObject.name); 
    if (!col.gameObject.name.Contains("floor")) { 

     player.GetComponent<telePortationScript>().teleEnabled = false; 
    } 
    else { 
     Debug.LogError("Collision with -> " + col.gameObject.name); 
     player.GetComponent<telePortationScript>().teleEnabled = true; 
    } 

} 

該膠囊對撞機,我動也有一個剛體的構件且動能已啓用。其他物體只有碰撞體,沒有剛體。

任何人都可以幫助我嗎?

+1

兩個物體都有對撞機,而移動的物體有一個剛體(非動能)?這裏是一些例子,代碼如何看起來像http://docs.unity3d.com/ScriptReference/Collider.OnCollisionEnter.html –

+0

你能詳細說明你的代碼嗎? – MSB

+0

增加了更多代碼 –

回答

0

標誌着我膠囊對撞機的觸發和附加功能

void OnTriggerStay(Collider col) 

和它的工作!