上下左右 键控制人移动
来源:互联网 发布:乔任梁网络暴力议论文 编辑:程序博客网 时间:2024/06/15 07:45
出自Unity3D开发一书,
这个脚本式只是简单的控制人物移动,不是很理想,但是可以学习 通过 上 、下、左、右 按键怎么实现任务的移动
using UnityEngine;using System.Collections;public class MoveByADSW : MonoBehaviour {public const int HERO_UP = 0;public const int HERO_RIGHT = 1;public const int HERO_DOWN = 2;public const int HERO_LEFT = 3;//人物当前行走的方向状态public int state = 0;//人物移动速度public int moveSpeed = 2;//初始化人物位置public void Awake(){state = HERO_UP;}// Use this for initializationvoid Start () {}// Update is called once per framevoid Update () {//获取控制的方向, 上下左右, float KeyVertical = Input.GetAxis("Vertical");float KeyHorizontal = Input.GetAxis("Horizontal");Debug.Log("keyVertical" + KeyVertical);Debug.Log("keyHorizontal" + KeyHorizontal);if(KeyVertical == -1){setHeroState(HERO_DOWN);}else if(KeyVertical == 1){setHeroState(HERO_UP);}if(KeyHorizontal == 1){setHeroState(HERO_RIGHT);}else if(KeyHorizontal == -1){setHeroState(HERO_LEFT);}if(KeyVertical == 0 && KeyHorizontal == 0){animation.Play("idle");}}void setHeroState(int newState){//根据当前人物方向与上一次备份的方向计算出模型旋转的角度int rotateValue = (newState - state) * 90;Vector3 transformValue = new Vector3();//播放行走动画animation.Play("walk");//模型移动的位置数值switch(newState){case HERO_UP:transformValue = Vector3.forward * Time.deltaTime;break;case HERO_DOWN:transformValue = (-Vector3.forward) * Time.deltaTime;break;case HERO_LEFT:transformValue = Vector3.left * Time.deltaTime;break;case HERO_RIGHT:transformValue = (-Vector3.left) * Time.deltaTime;break;}transform.Rotate(Vector3.up, rotateValue);//移动人物transform.Translate(transformValue * moveSpeed, Space.World);state = newState;}}
- 上下左右 键控制人移动
- 上下左右 键控制人移动
- <Unity3D>上下左右 键控制人移动
- android之DPAD上下左右四个键控制
- android之DPAD上下左右四个键控制
- android之DPAD上下左右四个键控制
- JavaScript键盘上下键控制移动
- 鼠标左键控制玩家移动
- 上下左右移动
- 实现按上下键控制li的样式移动
- Tab键控制光标在指定范围内移动
- 控制控件上下左右移动
- div+css 上下左右移动
- 移动端上下左右滑动
- 移动的上下左右滑动
- 点击上下左右按钮让背景上下左右移动
- ASP.NET网站,通过上下键控制Gridview行焦点的移动
- 80x86汇编语言编程:用光标键控制三角形的移动
- 自定义Dialog
- Libgdx专题系列:地图篇 地图的绘制
- http://wenwen.51.com/293285427-186.html
- 如何选择RIA技术
- PHP-YAF 的 PPA 源
- 上下左右 键控制人移动
- [UIImage resizableImageWithCapInsets:] 函数说明
- EGOTableViewPullRefresh实现下拉刷新
- java之String,StringBulider,StringBuffer的比较
- DWR3.0框架入门(1) —— 实现ajax
- 学习分享——Memcached
- 正则表达式并没你想的那么难
- Clojure 学习入门(5)—— 关键字
- two or more data types in declaration of