1. 角色移动
public int speed = 1; // 用于调试速度
void Update()
{
float h = Input.GetAxis("Horizontal"); // 取水平方向的按键输入
float v = Input.GetAxis("Vertical"); // 取竖直方向的按键输入
controller.SimpleMove(new Vector3(-v, 0, h)*speed);
}
2. Camera追踪
public Transform playerTransform; // 用于获取角色的transform组件
private Vector3 offset; // 相机与角色的偏移量
void Start()
{
offset = transform.position - playerTransform.position;
}
void Update()
{
transform.position = playerTransform.position + offset;
}
3. 碰撞检测
// 碰撞开始
void OnCollisionEnter(Collision collision) {}
// 碰撞结束
void OnCollisionExit(Collision collision) {}
// 碰撞持续中
void OnCollisionStay(Collision collision) {}
4. 触发检测
// 开始接触
void OnTriggerEnter(Collider collider) {}
// 接触结束
void OnTriggerExit(Collider collider) {}
// 接触持续中
void OnTriggerStay(Collider collider) {}
5. GameObject的创建与删除
GameObject.Instantiate(Object, position, rotation);
Destroy(gameobject);