unity3d如何进行碰撞检测
1、新建一个文件夹,存放脚本

2、新建一个平面,作为地面


3、添加平行光

4、新建一个Cube,按“Ctrl + D”,可以复制Cube

5、选中4个Cube,添加刚体

6、把4个Cube分别命名为“c1、c2、c3、c4”

7、新建一个C#脚本,命名为:Move
截图好像早了,具体请看文本的代码
“Move”脚本丢给摄像机

8、编写代码:
using UnityEngine;
using System.Collections;
public class Move : MonoBehaviour {
GameObject go;//
// Use this for initialization
void Start () {
go = GameObject.Find("c4");
go.renderer.material.color = Color.red;
}
// Update is called once per frame
void Update () {
if(Input.GetKey(KeyCode.W))
{
go.transform.Translate(0,0,5*Time.deltaTime,Space.Self);
}
if(Input.GetKey(KeyCode.S))
{
go.transform.Translate(0,0,-5*Time.deltaTime,Space.Self);
}
if(Input.GetKey(KeyCode.A))
{
go.transform.Translate(-5*Time.deltaTime,0,0,Space.Self);
}
if(Input.GetKey(KeyCode.D))
{
go.transform.Translate(5*Time.deltaTime,0,0,Space.Self);
}
}
}




9、新建一个C#脚本,命名为:pzjc
“pzjc”脚本丢给"c4"
代码如下:
using UnityEngine;
using System.Collections;
public class pzjc : MonoBehaviour {
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
}
/// <summary>
/// 每次游戏对象发生碰撞都执行都执行此方法
/// </summary>
/// <param name="co">可以获得被碰撞的游戏对象</param>
void OnCollisionEnter(Collision co)
{
co.gameObject.renderer.material.color = Color.blue;
}
}


10、测试

