Unity3D_(游戏)控制物体的上、下、左、右移动
通过键盘上↑、↓、←、→实现对物体的控制

using System.Collections;
using System.Collections.Generic;
using UnityEngine; public class Gary_Text : MonoBehaviour { public Transform WuTi; public float speed = ; // Use this for initialization
void Start () { } // Update is called once per frame
void Update () {
//上
if(Input.GetKey(KeyCode.UpArrow))
{
transform.eulerAngles = new Vector3(, , );
transform.position += transform.forward * speed;
}
//下
else if (Input.GetKey(KeyCode.DownArrow))
{
transform.eulerAngles = new Vector3(, , );
transform.position += transform.forward * speed;
}
//左
else if (Input.GetKey(KeyCode.LeftArrow))
{
transform.eulerAngles = new Vector3(, , );
transform.position += transform.forward * speed;
}
//右
else if (Input.GetKey(KeyCode.RightArrow))
{
transform.eulerAngles = new Vector3(, , );
transform.position += transform.forward * speed;
}
}
}
Gary_Text.cs 控制物体移动脚本
实现过程
GameObject->3D Object->Sphere创建一个Sphere作为被移动物体对象
在Sphere物体上绑定Gary_Text.cs脚本
可以在工程界面修改游戏速度speed值,默认是1

//引用控制移动物体脚本
public Transform WuTi; //设置物体移动的速度,设置为public使在游戏界面可控制
public float speed = ;
在Updata()中跟新物体的坐标
void Update () {
//上
if(Input.GetKey(KeyCode.UpArrow))
{
transform.eulerAngles = new Vector3(, , );
transform.position += transform.forward * speed;
}
//下
else if (Input.GetKey(KeyCode.DownArrow))
{
transform.eulerAngles = new Vector3(, , );
transform.position += transform.forward * speed;
}
//左
else if (Input.GetKey(KeyCode.LeftArrow))
{
transform.eulerAngles = new Vector3(, , );
transform.position += transform.forward * speed;
}
//右
else if (Input.GetKey(KeyCode.RightArrow))
{
transform.eulerAngles = new Vector3(, , );
transform.position += transform.forward * speed;
}
}
======分割线Σ(= =!)...=======
工具栏Edit->Project Settings ->Input可打开输入设备管理器对用户

Horizeontal -> 监听物体水平移动
Vertival ->监听物体竖直移动
。。。。。。
还很多,要学习
Unity3D_(游戏)控制物体的上、下、左、右移动的更多相关文章
- js实现Mac触摸板双指事件(上/下/左/右/放大/缩小)
前言 这几天在修复一个web问题时,需要捕获Mac触摸板双指事件(上.下.左.右.放大.缩小),但发现并没有现成的轮子,还是要自己造. 例如:jquery.mousewheel.js(添加跨浏览器的鼠 ...
- iOS_2_button控制物体形变
终于效果图: BeyondViewController.h // // BeyondViewController.h // 02_button控制物体形变 // // Created by beyon ...
- Unity3D_(游戏)2D坦克大战 像素版
2D坦克大战 像素版 游戏规则: 玩家通过上.下.左.右移动坦克,空格键发射子弹 敌人AI出身时朝向己方大本营(未防止游戏快速结束,心脏上方三个单位障碍物设为刚体) 当玩家被击杀次数>=3 ...
- Unity3D_(游戏)贪吃蛇
Unity制作贪吃蛇小游戏 玩家通过“WASD”控制小蛇上下左右移动,蛇头撞倒食物,则食物被吃掉,蛇身体长一节,接着又出现食物,等待蛇来吃,如果蛇在移动中撞到墙或身体交叉蛇头撞倒自己身体游戏结束 可通 ...
- Unity3D_(游戏)卡牌03_选关界面
启动屏界面.主菜单界面.选关界面.游戏界面 卡牌01_启动屏界面 传送门 卡牌02_主菜单界面 传送门 卡牌03_选关界面 传送门 卡牌04_游戏界面 传送门 选关界面效果 (鼠标放在不同关 ...
- Unity3D 几个基本动画(控制物体移动、旋转、缩放)
Transform基本移动函数: 1.指定方向移动: //移动速度 float TranslateSpeed = 10f; //Vector3.forward 表示"向前" tra ...
- WEBGL学习笔记(七):实践练手1-飞行类小游戏之游戏控制
接上一节,游戏控制首先要解决的就是碰撞检测了 这里用到了学习笔记(三)射线检测的内容了 以鸟为射线原点,向前.上.下分别发射3个射线,射线的长度较短大概为10~30. 根据上一节场景的建设,我把y轴设 ...
- Unity3D_(游戏)双人3D坦克_简易版
双人3D坦克实现 player1: WSAD控制上下左右 空格键发射炮弹 player2: IKJL可控制上下左右 B键发射炮弹 每个坦克只有100hp,子弹击中1次扣30hp,hp时时显示在坦克上 ...
- Unity编程回忆录之控制物体移动
最新心血来潮,然后开始学习Unity3D游戏开发引擎,对于一个主流的跨平台3D游戏开发引擎,我已经深深的为他着迷了,于是果断的开始学习这个引擎,而且刚刚预装的游戏引擎最新版中4.3版本已经开始原生支持 ...
随机推荐
- python_0基础开始_day10
第十节 一.函数进阶 动态参数 *a r g s —— 聚合位置参数,动态位置参数 默认返回的是tuple元组 def eat(*args): # 函数的定义阶段 *聚合(打包) print( ...
- CSS(下)
目录 CSS(下) CSS属性相关 宽和高 字体属性 背景属性 边框 border-radius display属性 CSS盒子模型 margin外边距 padding内填充 浮动(float) 限制 ...
- python网络爬虫(4)结构与基本概念
基本模型 请求与响应 import urllib.request as urllib2 request=urllib2.Request('http://www.zhihu.com') response ...
- awk--基本操作
二:awk--将一行分为数个字段处理 PS:awk [option] '条件类型 {动作1} 条件类型{动作2} ...' filename PS: awk 'Pattern {action}' fi ...
- Abp添加新的接口(扩展底层接口)
在https://aspnetboilerplate.com/Templates 创建项目之后,下载用Vs2019打开(vs2017不支持netcore3.0)结构如下: 一. 2. 在xx.core ...
- FastDFS集群部署(转载 写的比较好)
FastDFS集群部署 之前介绍过关于FastDFS单机部署,详见博文:FastDFS+Nginx(单点部署)事例 下面来玩下FastDFS集群部署,实现高可用(HA) 服务器规划: 跟踪服务器1 ...
- 虚拟机无法启动,提示:无法打开内核功能扩展“com.vmware.kext.vmci”: 无此文件或目录
打开 系统偏好设置->安全性与隐私->允许打开 即可
- 关于redis的几件小事(五)redis保证高并发以及高可用
如果你用redis缓存技术的话,肯定要考虑如何用redis来加多台机器,保证redis是高并发的,还有就是如何让Redis保证自己不是挂掉以后就直接死掉了,redis高可用 redis高并发:主从架构 ...
- springboot(十八)-session共享
前言 在传统的单服务架构中,一般来说,只有一个服务器,那么不存在 Session 共享问题,但是在分布式/集群项目中,Session 共享则是一个必须面对的问题,先看一个简单的架构图: 在这样的架构中 ...
- Zookeeper启动失败,报错 can not open chanel to 2
zookeeper 3.4.8 安装在 7 台不同的虚拟机上,配置文件如下: tickTime= initLimit= syncLimit= dataDir=/var/zookeeper client ...