Rigidbody相关的操作最好放在FixedUpdate中,update中可能会无效果

void Turning()
{

// Create a ray from the mouse cursor on screen in the direction of the camera.
Ray camRay = Camera.main.ScreenPointToRay(Input.mousePosition);

// Create a RaycastHit variable to store information about what was hit by the ray.
RaycastHit floorHit;

// Perform the raycast and if it hits something on the floor layer...
if (Physics.Raycast(camRay, out floorHit, camRayLength, floorMask))
{

// Create a vector from the player to the point on the floor the raycast from the mouse hit.
Vector3 playerToMouse = floorHit.point - transform.position;

// Ensure the vector is entirely along the floor plane.
playerToMouse.y = 0f;

// Create a quaternion (rotation) based on looking down the vector from the player to the mouse.
Quaternion newRotatation = Quaternion.LookRotation(playerToMouse);

// Set the player's rotation to this new rotation.
m_Rigidbody.MoveRotation(newRotatation);

}

posted @ 2016-11-29 22:17  alps_01  阅读(512)  评论(0编辑  收藏  举报