1. 程式人生 > >Unity Camera 自旋及沿自身坐標系方向移動(一)

Unity Camera 自旋及沿自身坐標系方向移動(一)

自旋 offset getdir tran 自身 class () spa rec

void Update () {
  float h = Input.GetAxis("Horizontal");
  float v = Input.GetAxis("Vertical");

  if (Input.GetKey(KeyCode.J))
  {
    transform.Rotate(-Vector3.up * Time.deltaTime * 50f, Space.World);
  }

  if (h != 0 || v != 0)
  {
    Vector3 targetOffset = new Vector3(h, 0, v);
    float y = transform.rotation.eulerAngles.y;
    Vector3 targetDirection = Quaternion.Euler(0, y, 0) * targetOffset;
    transform.Translate(targetDirection * Time.deltaTime * 50, Space.World);
  }
}

  

Unity Camera 自旋及沿自身坐標系方向移動(一)