SurvivalShooter 是Unity的官方教程案例
主角跟随鼠标转动
利用射线的方法
floorMask是设定地板的层级,rayLength表示射线的长度
返回Unity中添加layer
添加“Floor”
将地板的Layer设置成“Floor”
在上一节的代码中新增这些代码
Ray mouseRay = Camera.main.ScreenPointToRay (Input.mousePosition);
RaycastHit floorHit;
Physics.Raycast (mouseRay,out floorHit,rayLength, floorMask);
第三个参数是射线的长度,第四个参数是一个标记。
表示只有地板区域是可点击的范围,都是为了优化加入的设计
Vector3 playerRotate = floorHit.point-transform.position;
Quaternion rotate = Quaternion.LookRotation (playerRotate);
旋转的方式有很多,这边选取四元数的方法来写。
点击运行,可以看到主角可以随鼠标旋转了