Unity3D实现键盘鼠标控制角色移动及旋转

Unity3D实现键盘鼠标控制角色前后左右移动及旋转

操作方法

  • 01

    打开Unity3D,新建项目,如图,项目名称先填写为“PlayerControl”,然后点“CreateProject”按钮。

  • 02

    在项目(Project)面板中的Assets下面分别建立“Materials"、"Prefabs"和"Scripts”文件夹。

  • 03

    在层级(Hierarchy)面板中,点鼠标右键,在弹出菜单中选“3D Object”-->"Plane"(地面),然后点检视(Inspector)面板中的Transform组件设置按钮,在弹出的菜单中选“Reset”,将添加的地面复位。可以看到在Inspector面板中的Transform组件里,Position(位置)属性X,Y,Z都是0。 下面进行关键的一步,按住ATL键,鼠标移到"Scene"面板中(这时鼠标变成眼睛形状),拖动鼠标,可以移动场景中的视角,注意:一定要将视角移动成如图所示的X轴在右方,Z轴在前方,Y轴在上方。这步很关键,移成这样的方位,后面移动物体时,前后左右才会正常,不然你的方向可能会和别人相反。

  • 04

    调整好Scene面板中的视角后,选中层级(Hierarchy)面板中的"Main Camera",点菜单"GameObject"-->"Align With View",将主摄像机位置调整到Scene面板中所看到的视角。

  • 05

    与上一步相同,在层级(Hierarchy)面板中,点鼠标右键,在弹出菜单中选“3D Object”-->"Cube"(立方体),然后点检视(Inspector)面板中的Transform组件设置按钮,在弹出的菜单中选“Reset”,然后将Transform组件里,Position(位置)的Y值改成0.5,X和Z均为0。

  • 06

    选中Project(项目)面板中的Assets下的"Materials"文件夹,在右边空白处,右击鼠标,选"Create"-->"Material",将新建的材质球默认名称"New Material"改名为"Cube",并在右边"Inspector"(检视)面板中,设置颜色为蓝色。将材质球"Cube"拖到Scene面板中的立方体"Cube"上面,这时,场景中的立体方Cube变成蓝色,如图所示。

方法/步骤2

  • 01

    点击项目(Project)面板中的"Prefabs"文件夹,将层级(Hierarchy)面板中的Cube立方体,拖动到项目(Project)面板中的"Prefabs"文件夹中,这时Cube立方体则变成了预制体。

  • 02

    点击项目(Project)面板中的"Script"文件夹,在右边空白处点鼠标右键,选"Create"-->"C# Script",将新创建的C#代码重命名为"PlayerController",并将该代码拖拽到层级(Hierarchy)面板中的Cube物体上。然后双击打开该代码。

  • 03

    在代码编辑器MomoDevelop或VS2015中,将以下代码输入,然后按CTRL+S保存代码。 using System.Collections; using System.Collections.Generic; using UnityEngine; public class PlayerController : MonoBehaviour { private Transform m_Transform; void Start () { m_Transform = gameObject.GetComponent<Transform>(); } // Update is called once per frame void Update () { MoveControl(); } void MoveControl() { if (Input.GetKey(KeyCode.W)) { m_Transform.Translate(Vector3.forward * 0.1f, Space.Self); } if (Input.GetKey(KeyCode.S)) { m_Transform.Translate(Vector3.back * 0.1f, Space.Self); } if (Input.GetKey(KeyCode.A)) { m_Transform.Translate(Vector3.left * 0.1f, Space.Self); } if (Input.GetKey(KeyCode.D)) { m_Transform.Translate(Vector3.right * 0.1f, Space.Self); } if (Input.GetKey(KeyCode.Q)) { m_Transform.Rotate(Vector3.up, -1.0f); } if (Input.GetKey(KeyCode.E)) { m_Transform.Rotate(Vector3.up, 1.0f); } m_Transform.Rotate(Vector3.up, Input.GetAxis("Mouse X")); m_Transform.Rotate(Vector3.left, Input.GetAxis("Mouse Y")); } }

  • 04

    回到Unity3D,点击"运行"按钮,发现原来的Scene面板会切换到Game(游戏预览)面板。这时,就可以通过WSAD键控制立方体的前后左右移动,Q和E键控制立方体左右旋转。同时,鼠标前后和左右移动可以控制物体上下及左右旋转了。

  • 05

    测试完成后,发现物体移出地面后竟然会悬在空中不会下落,这时,可以点击“运行”按钮,选中Cube立方体,点菜单“Component"-->"Physics"-->"Rigidbody",可以在检视(Inspector)面板中看到该立方体多了一个“刚体(Rigidbody)组件,因为默认的"Use Gravity"(启用重力)有打上勾。所以,再次运行,可以看到立方体移出地面(Plane)范围后会下落。

(0)

相关推荐

  • 怎么一套键盘鼠标控制多台电脑。

    怎么一套键盘鼠标控制多台电脑。

  • Unity3D之鼠标控制角色移动与奔跑示例

    ​    看到这个标题我相信大家应该并不陌生,一般在PC网络游戏中玩家通过鼠标左键在游戏世界中选择角色目标移动位置,接着主角将面朝点击的那 个方向移动.首先就本文来说我们应当掌握的知识点是" ...

  • 两个显示器怎么用一个鼠标控制(双显示器怎么设置鼠标方向)

    有没有办法让鼠标活动区域默认始终在显示器1,而不进入显示器2?然后通过其他方式(比如快捷键),才可以把指定软件弄过去?可以用来解决双显示器在打游戏的时候,鼠标突然跳出到第二块屏幕上的尴尬.    Ph ...

  • win7开启键盘鼠标键用键盘来控制鼠标的移动

    启用鼠标键就是用用键盘来控制鼠标的移动,在Windows7系统中这个选项在控制面板的轻松访问中心--使键盘更易于使用中,下面是图文说明: 打开控制面板--轻松访问 选择更改键盘的工作方式 选择使用键盘 ...

  • 怎么用鼠标键盘来控制Android手机

    网上大都是91助手for android来连接手机和电脑,我自己比较偏向于豌豆荚,都可以的,下面给出我的步骤及过程中遇到的几个小问题,供大家参考! 一、鼠标键盘控制手机教程 1、在PC上,安装豌豆荚, ...

  • 如何使用键盘来控制鼠标?

    有时会面临这样的困境:台式电脑有键盘没有鼠标,感觉用快捷键很麻烦,这时便有一个键盘代替鼠标的的想法.然而这一想法完全可以实现. 1.设置键盘控制鼠标 win XP "开始"菜单-& ...

  • 如何使用win10电脑上的键盘来控制鼠标

    我们在使用win10电脑的时候,想要使用键盘来控制鼠标,该怎么操作呢?今天就跟大家介绍一下如何使用win10电脑上的键盘来控制鼠标的具体操作步骤.1. 打开电脑,进入桌面,在左下角的开始图标处,右键, ...

  • 如何使用键盘来控制鼠标?

    如何使用键盘来控制鼠标 有时会面临这样的困境:台式电脑有键盘没有鼠标,感觉用快捷键很麻烦,这时便有一个键盘代替鼠标的的想法.然而这一想法完全可以实现. 操作方法 01 打开开始菜单,单击[控制面板]( ...

  • 在Plex播放器使用鼠标控制的方法

    下面介绍在Plex播放器里使用鼠标控制的方法. 进入Plex后,用方向键移动光标到"配置您的Preferences"上,回车.右侧会弹出二级菜单,同样用方向键+回车选择" ...