Unity——第一人称控制器的实现】的更多相关文章

Unity--第一人称控制器的实现 一.功能描述 在一个场景中实现人物的前后左右移动和跳跃功能:其中前后左右移动通过W.A.S.D方向键实现,跳跃功能通过空格键实现,并且考虑到重力作用,来调节跳跃功能. 二.功能实现 2.1创建一个Character Controller 先创建一个新的GameObject,并重命名为Player 并为其添加一个Character Controller组件 在Player下,创建一个Cylinder物体(代替人物),并将场景中的主相机(Main Camera)放…
[开源互助-原创文章,转载请说明出处]第三帖中已经创建了一个cardboard自带的demo应用,但它是不能移动的,玩家只能站在原地,通过头部转动来观察四周,除此之外,玩家并没有更多的手段与游戏场景进行交互.本帖将描述如何使用蓝牙手柄实现玩家的位置移动,包括前.后.左.右,跳跃等动作.第一步:首先我们得有一个第一人称角色在场景中,因此,导入UNITY自带的第一人称模型包: 导入场景后,在项止浏览窗口中: 第二步:将第一人称控制器下的prefab拉入到场景中: 如下: 第三步:移除场景中第一人称控…
一.在u3d编辑器中删除FPSController游戏对像中自带的Camera: 二.在u3d编辑器中将CardBoardMain游戏对像添加到FPSController的子物体: 三.修改脚本: 1.删除FirstPersonController脚本中的RotateView方法调用: 2.在CardboardHead中的UpdateHead中,修改FPSController对像的transform的Y轴上的转向: 以上,即可以完成使用cardboard追踪到的头部转向数据来控制第一人称游戏对像…
CharacterMotor.cs using UnityEngine; using System.Collections; /** * @Author : www.xuanyusong.com */ [RequireComponent(typeof(CharacterController))] [AddComponentMenu("Character/Character Motor")] public class CharacterMotor : MonoBehaviour { //…
关系图 红色菱形:脚本 白色矩形:组件 移动代码 //移动代码 public CharacterController controller;//角色控制器 public float speed = 12f;//移动速度 public float gravity = -20f;//重力加速度 public float jumpHeight = 3f;//跳跃高度 public Transform groundCheck;//碰撞检测物体(空物体),模型底部的东西 , 用于检测是否落地 public…
private int zRotation; public GameObject obj; public void Update() { //obj = GameObject.Find("Camera");   //获取名为Camera的相机对象 zRotation = player.transform.eulerAngles.y; //player是unity第一人称 compass.transform.eulerAngles = new Vector3(0, 0, zRotatio…
1.导入unity自带的Character Controllers包 2.可以看到First Person Controller组件的构成 Mouse Look() : 随鼠标的移动而使所属物体发生旋转 FPSInput Controller() : 控制物体的移动 3.同样的,我们为自己的模型添加以上四个组件 其中Mouse Look() 中的Axes属性,是调整围绕的旋转轴 所谓第一人称就是,鼠标左右晃动则模型以X为轴进行旋转 鼠标上下晃动则模型的腰关节以Z轴进行旋转 4.找到模型的腰关节,…
当前Unity最新版本5.6.3f1,我使用的是5.5.1f1 场景搭建 1: 导入人物模型, 手持一把枪;2: 导入碎片模型;3: 创建一个平面;4: 创建一个障碍物;5: 导入人物模型;6: 配置一个十字瞄准器, 设想机对准的中心就是瞄准的中心, 屏幕中心;7: 配置一个第一人称的摄像机,做人的眼睛; 开枪射击 1: 鼠标左键按下开火;2: 从摄像机位置开始,根据摄像机的正前方,在一定的射击距离内如果碰撞到了某个物体,那么就表示这个物体被子弹射击;3: 播放射击的子弹碎片: 在射击碰撞点产生…
public float sensitivityX = 5f; public float sensitivityY = 5f; public float sensitivetyKeyBoard = 0.1f; public float sensitivetyMouseWheel = 10f; private GameObject Playercamera; public Rigidbody rigidbody; public float speed = 5; void Start() { Pla…
首先要导入unity标准资源包Character Controllers 这个标准资源包,为了方便,还添加了两外一个资源包Scripts,后者包含了一些基本的脚本个摄像机脚本. 没错,这次我们要使用其中一个摄像机脚本, 创建一个terrain (地形ller组件(如),创建一个capsule ,并为这个胶囊提添加 CharactContro果没有导入角色标准资源包的话竟不能被添加该组件),注意只是一个CharactController 组件而已. 当我们点击 add Component——Cha…