1
我是新來的團結,我試圖讓無盡的跑步者。當我的球員(一個球)擊中牆壁時,比賽需要進入場景:LostMenu。我的問題是碰撞不起作用。碰撞時沒有任何反應......這裏是玩家和牆上的檢查員:牆壁http://prntscr.com/a2pgzm玩家http://prntscr.com/a2ph66。Unity3D與角色控制器的碰撞
碰撞腳本的牆壁上:
using UnityEngine;
using System.Collections;
public class LostByWallCSR : MonoBehaviour
{
void OnCollisionEnter (Collision col)
{
if(col.gameObject.name == "Player")
{
Application.LoadLevel("LostMenu");
Debug.Log ("WORKS!");
}
}
}
運動腳本的球員:
using UnityEngine;
using System.Collections;
public class CharacterControllerz : MonoBehaviour {
public float speed = 5f;
public float gravity = 20f;
private Vector3 moveDirections = new Vector3();
private Vector3 inputs = new Vector3();
void FixedUpdate()
{
CharacterController cc = GetComponent<CharacterController>();
if (cc.isGrounded)
{
if (Input.GetKey("left"))
inputs.z = 3;
else if (Input.GetKey("right"))
inputs.z = -3;
else
inputs.z = 0;
moveDirections = transform.TransformDirection(inputs.x, 0, inputs.z) * speed;
}
inputs.x = 5;
moveDirections.y = inputs.y - gravity;
cc.Move(moveDirections * Time.deltaTime);
}
}
如何設置碰撞妥善任何想法?附加一個rigibody並不能幫助它。除非我錯過了某些課程。
沒有在這兩個機構連接剛體OnCollision將無法正常工作 –
所以,你告訴我,我需要附加一個剛體和我的球員一個CharacterController?我不認爲這些東西一起工作得很好... – BelgianWizard
將剛體連接到你的牆上而不是 –