unity学习笔记:小球吃方块

刚体Rigidbody的简单应用

基本编程格式:

public class NewBehaviourScript : MonoBehaviour
{
     //声明一个刚体对象 rd
	private Rigidbody rd;
	

	void Start ()
	{
         // 得到刚体组件 赋值给 rd
		rd = GetComponent();

	}

	void Update () {
         //为刚体添加一个力的方向(x,y,z)
		rd.AddForce(new Vector3(1,0,0));
	}
}

键盘控制球形刚体移动:

public class NewBehaviourScript : MonoBehaviour
{

	private Rigidbody rd;
    //设置一个开放的整型 froce(力的大小) 方便在Unity控制器里灵活设置参数
	public int froce=5;

	void Start ()
	{
		rd = GetComponent();
	}

	void Update ()
	{
        //Horizontal 得到水平轴的值 --左右按键 默认为AD
		float h = Input.GetAxis("Horizontal");
        //Vertical 得到水平轴的值 --垂直按键 默认为 WS
		float v = Input.GetAxis("Vertical");
		
		rd.AddForce(new Vector3(h,0,v)*froce);
	}
}

刚体碰撞检测 响应事件Messages:

碰撞发生OnCollisionEnter(执行一次)

void Update ()

          //Collision 碰撞到的物体
	void OnCollisionEnter(Collision collision)
	{
         //collider 获取碰撞到物体身上的组件
		string name = collision.collider.name;
		print(name);
           //判断移除指定碰到的碰撞物体(别忘了为碰撞到的物体添加tag 用来识别)
		if (collision.collider.tag=="tag1")
		{
             //Destroy 销毁碰撞到的物体
			Destroy(collision.collider.gameObject);
		}
	}
}

碰撞结束OnCollisionExit(一次)

碰撞物体相接触OnCollisionStay(持续触发)

你可能感兴趣的:(unity学习笔记:小球吃方块)