关键功能:

1、摄影机跟随船体移动

2、船体在水面上晃动

3、摇杆控制方向

摇杆控制方向的话,这里我是简单的使用了一个Unity的插件:EasyTouch,EasyTouch里面的有一个EasyJoyStick(摇杆控制)

当你导入到你的Unity工程的时候,你的窗口选项就会多一个:

然后我们就可以按照这个步骤来创建一个EasyJoyStick的对象:

创建完成之后,我们就可以在Game视图看到一个摇杆

这个摇杆就是只有横竖两个值,x,y值,分别对应3D空间中的x,z轴。

然后我们创建一个脚本,然后将这个脚本挂在我们要控制的人物的身上,

下面是详细的代码分析:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;  public class BossMove : MonoBehaviour
{  // 这个是我们刚才创建的 EasyJoyStick的对象,我们使用它来获取 一些简单的数值public EasyJoystick easyJoystick;  float Speed = 5.0f;  // 假设3秒转一圈,那么一秒就算是转120度  ,这个数值是用来控制转向的float w_speed = 120f;  // Start is called before the first frame update  void Start()  {  }  // Update is called once per frame  void Update()  {  ControlMove();  }  void ControlMove()
{  // 我们通过摇杆的x,y的偏移量float Joystick_x = easyJoystick.JoystickAxis.x;  float Joystick_y = easyJoystick.JoystickAxis.y;  //Vector3 targetDirection;  // 船的移动
//当摇杆摇动超过一定范围的时候,才去移动对象if (Joystick_y >= 0.5f)  {  // Translate:向某个方向移动多少距离
// 摇杆的Y轴对应的就是3D空间的Z轴,然后当摇杆Y轴有动的时候,就将物体在Z轴方向移动 this.transform.Translate(0, 0, Speed * Time.deltaTime);   }  else if(Joystick_y <= -0.5f)  {  // 上面是摇杆的方向向上(Y轴的正方向),也就是3D向前移动,//  现在是摇杆方向向下(Y轴的负方向),也就是3D里面向移动 this.transform.Translate(0, 0, -Speed * Time.deltaTime);  }  if (Joystick_x >= 0.5f)  {  // Translate:向某个方向移动多少距离  // 这个是和上面的移动方式同理,只不过摇杆的X轴移动,对应的是3D物体的X轴移动this.transform.Translate(Speed * Time.deltaTime, 0, 0);  }  else if (Joystick_x <= -0.5f)  {  this.transform.Translate(-Speed * Time.deltaTime, 0, 0);  }  // 船的转向  // 船的转向一定是绕着Y轴旋转,所以当摇杆的X轴有变化的时候,也就是有转向变化的时候
// 当X轴的值大于0,也就是右转向的时候,我们旋转正值if(Joystick_x > 0.5f)  {    // 这个时候我们让其围绕着Y轴,做正方向的旋转this.transform.Rotate(0,this.w_speed * Time.deltaTime,0);  }  else if(Joystick_x < -0.5f)  {  // 当摇杆是负方向的时候,就旋转一个负值,这个时候对应的就是相反的方向this.transform.Rotate(0, -this.w_speed * Time.deltaTime, 0);  }  }
}

Github:https://github.com/YuDang1024/UnityGames/tree/master/MovingBoat

Unity小游戏——移动的小船船(摇杆控制方向)相关推荐

  1. Unity小游戏——移动的小船船(船体在水面上晃动)

    关键功能: 1.摄影机跟随船体移动 2.船体在水面上晃动 3.摇杆控制方向 船在水面上晃动的原理其实就是船体围绕着Z轴和X轴旋转一个小的角度,然后在恢复回来,然后在旋转的一个小过程 using Sys ...

  2. Unity小游戏——移动的小船船(摄影机跟随船体移动)

    关键功能: 摄影机跟随船体移动 船体在水面上晃动 摇杆控制方向 摄影机跟随对象的原理: 每一帧的开始的时候,都先去把这个摄影机移动到和对象相同的位置,然后收集跟随对象旋转的角度,然后将摄影家挪到对象的 ...

  3. 自制Unity小游戏TankHero-2D(3)开始玩起来

    自制Unity小游戏TankHero-2D(3)开始玩起来 我在做这样一个坦克游戏,是仿照(http://game.kid.qq.com/a/20140221/028931.htm)这个游戏制作的.仅 ...

  4. Unity小游戏-平衡大师(安卓、PC、web)2D益智类游戏 项目展示+完整项目源码

    游戏录像 游戏试玩 平衡带师_平衡带师html5游戏_4399h5游戏-h.4399.com 游戏玩法 这是一款类似堆积木的游戏,它非常考验玩家的智商和手速,难度系数很高的游戏,谁能征服它,谁就是平衡 ...

  5. unity小游戏制作之见缝插针

    unity小游戏制作之见缝插针 先看效果图这个游戏是一个入门的小游戏,主要技术就是圆盘的旋转,针跟随圆盘旋转以及分数累加等 游戏先拖入一个圆,更改格式为2D然后建立脚本使其转动 public clas ...

  6. 自制Unity小游戏TankHero-2D(1)制作主角坦克

    自制Unity小游戏TankHero-2D(1)制作主角坦克 我在做这样一个坦克游戏,是仿照(http://game.kid.qq.com/a/20140221/028931.htm)这个游戏制作的. ...

  7. 2022unity超简单课设-模拟太阳系的Unity小游戏

    模拟太阳系的Unity小游戏(附下载链接) 下载链接 unity课程实践做的一个模拟太阳系的Unity小游戏,你可以使用飞船移动来查看太阳系中的各个星球. 飞船拥有两种驾驶模式,一种更加真实,是通过给 ...

  8. Unity 小游戏:3D射箭

    Unity 小游戏:3D射箭 前两周因为实训太忙,再加上自己对老师所讲的设计模式并不是很理解,所以就没有写博客.这次博客是记录3D射箭游戏的实现过程. Unity 小游戏3D射箭 准备资源 布置场景 ...

  9. Unity小游戏(一)——Unity JigsawPuzzle(拼图游戏)

    1.前言: 简单的Unity小游戏,切割图片,生成随机区块,拖拽交换位置. 此游戏代码只贴了一小部分,具体可见GitHub:源码 效果: 2.素材准备 简单做了下,所以没有用太多素材,只准备了两种字体 ...

最新文章

  1. 4514: [Sdoi2016]数字配对
  2. leetcode题解:Construct Binary Tree from Preorder and Inorder Traversal (根据前序和中序遍历构造二叉树)...
  3. SpringBoot_数据访问-整合MyBatis(一)-基础环境搭建
  4. C语言 回调函数 produce(arr,len,getRand)
  5. cam350怎么看顶层_厉害的人是怎么分析问题的?(实操干货)
  6. mysql 5.7.13 mac_Mac 安装mysql 5.7.13版本 登录及改密码
  7. share——Alpha版(内部测试版)发布
  8. 传统服务化(SOA)与微服务(Micro Service)的融合之道 1
  9. OllyDBG 入门
  10. 数据库可视化工具(SQLyog安装教程)
  11. 第七届山东理工大学ACM趣味编程循环赛 Round#2 sdut4120 城堡问题
  12. 换页符'\f'的问题
  13. Linux系统的应用软件流程图绘制软件yEd
  14. Mac操作指南:Mac显示器颜色不正如何调节?
  15. Nginx快速入门(三)正向代理、HTTP服务器与动静分离
  16. swift 调用震动
  17. 用Excel数据透视表快速地统计各部门的男女比例
  18. 菜鸟站长的坎坷建站经历
  19. 计量经济学之时间序列分析学习笔记(单位根检验、协整检验、单整阶数判断、ECM建模)——基于R(二)
  20. 云产品相关网络概念学习Regison/AZ/VPC

热门文章

  1. vs打字时字母间距变大,半角全角怎么更改
  2. Python Challenge 第5关
  3. 深圳入户办理:阎王的愿景是好的,小鬼的道路是曲折的
  4. 头脑风暴:如何解决重复性工作
  5. java自动生成用户名手机号邮箱IP地址等信息
  6. 如何硬盘克隆,硬盘对拷图文教程
  7. 截取mat文件一部分数据
  8. [转载]Docker和k8s的区别与介绍
  9. 蓝牙耳机真的能实现CD音质吗?南卡N2s蓝牙耳机新品上市
  10. [转]天龙八部服务器端-共享内存的设计