Deme_遥感控制物体移动(涉及遮罩,小摄像机跟随)
using UnityEngine;
using System.Collections;
using UnityEngine.EventSystems; public class JoyController : MonoBehaviour,IDragHandler,IEndDragHandler { //摇杆圆盘半径
public float radius = 75f;
//摇杆原始位置
private Vector3 origin;
//玩家的角色控制器
private CharacterController player;
//玩家移动速度
public float speed = ;
//声明一个方向向量
Vector3 dir; void Start()
{
//获取当前位置
origin = transform.position;
//找到主角玩家
player = GameObject.FindWithTag ("Player").
GetComponent<CharacterController> ();
} void Update()
{
//玩家移动
player.SimpleMove (new Vector3(dir.x,,dir.y) * speed * Time.deltaTime);
} /// <summary>
/// 摇杆拖拽中
/// </summary>
/// <param name="eventData">Event data.</param>
public void OnDrag (PointerEventData eventData)
{
//计算起点位置与当前鼠标位置的距离
float distance = Vector3.Distance (origin, Input.mousePosition);
//求方向向量
dir = Input.mousePosition - origin;
//如果拖拽在圆盘范围内
if (distance <= radius) {
//摇杆随鼠标移动而移动
transform.position = Input.mousePosition;
} else {
//实际向量
Vector3 real = dir.normalized * radius;
//最终摇杆的位置
transform.position = real + origin;
}
}
/// <summary>
/// 结束拖拽
/// </summary>
/// <param name="eventData">Event data.</param>
public void OnEndDrag (PointerEventData eventData)
{
dir = Vector3.zero;
//回到初始位置
transform.position = origin;
}
}
要注意的几个位置,添加相应组件。1,脚本挂载在遥感中心点Controller上.2,小摄像头(设置正交)挂为Player子物体跟随玩家移动3,遮罩设置



Deme_遥感控制物体移动(涉及遮罩,小摄像机跟随)的更多相关文章
- [Silverlight 2.0 控制物体绕圆弧运行(C#初探篇)]
我自己写的第一个 Silverlight 2.0 程序 [Silverlight 2.0 控制物体绕圆弧运行(C#初探篇)] 程序运行时:小地球将绕着圆形轨迹做圆周运动. ...
- Maya 脚本控制物体自转
在Maya中,我们可以用脚本来控制物体的自转方向,速度等等,步骤如下: 选择需要操作的物体object,打开通道盒Channel Box,点击编辑Edit,打开表达式Expressions面板 选择需 ...
- Unity3D 几个基本动画(控制物体移动、旋转、缩放)
Transform基本移动函数: 1.指定方向移动: //移动速度 float TranslateSpeed = 10f; //Vector3.forward 表示"向前" tra ...
- Unity编程回忆录之控制物体移动
最新心血来潮,然后开始学习Unity3D游戏开发引擎,对于一个主流的跨平台3D游戏开发引擎,我已经深深的为他着迷了,于是果断的开始学习这个引擎,而且刚刚预装的游戏引擎最新版中4.3版本已经开始原生支持 ...
- iOS_2_button控制物体形变
终于效果图: BeyondViewController.h // // BeyondViewController.h // 02_button控制物体形变 // // Created by beyon ...
- Unity —— 通过鼠标点击控制物体移动
//ClickMove - - 通过鼠标点击控制物体移动 using System.Collections; using System.Collections.Generic; using Unity ...
- Unity3d 控制物体移动、旋转、缩放
在Unity中通过利用 Input Manager(输入管理器)可以很简单的实现对一个物体进行移动.旋转.缩放操作. 演示代码: //通过虚拟轴控制物体移动.旋转.缩放 public class Mo ...
- Unity3D_(游戏)控制物体的上、下、左、右移动
通过键盘上↑.↓.←.→实现对物体的控制 using System.Collections; using System.Collections.Generic; using UnityEngine; ...
- Unity使用transform.Translate()移动子物体时遇到的小问题
Unity使用transform.Translate()移动子物体时遇到的小问题 情况大概是这样:父物体A下有子物体B,希望使B在本地坐标系下移动1单位. B物体挂脚本代码如下: transform. ...
随机推荐
- 【POJ1195】【二维树状数组】Mobile phones
Description Suppose that the fourth generation mobile phone base stations in the Tampere area operat ...
- Node.js的长连接
之前写的js服务器脚本,在服务器上运行的挺好的.也经过了压力测试,单次接受4000次的连接不成问题.在5s里,可以应答1W多次的连接.对于这个连接次数,我们还是挺满意的,但是Boss说:客户端每2分钟 ...
- javascript——归并方法
<script type="text/javascript"> //ECMAScript5 还新增了2个归并数组的方法:reduce()和reduceRight(). ...
- dedecms 修改标题长度可以修改数据库
数据表为dede__archives 字段为title 首先要在 a.系统->系统基本参数->其它选项->文章标题长度 b.系统->SQL命令行工具 alter table # ...
- node应用通过multer模块实现文件上传
multer用于处理文件上传的nodejs中间件,主要跟express框架搭配使用,只支持表单MIME编码为multipart/form-data类型的数据请求. 如果要处理其他编码的表单数据可以通过 ...
- C#应用程序获取项目路径的方法总结
一.非Web程序 //基目录,由程序集冲突解决程序用来探测程序集 1.AppDomain.CurrentDomain.BaseDirectory //当前工作目录的完全限定路径2.Envi ...
- TatukGIS - GisDefs - CheckDir 函数
函数名称 CheckDir 所在单元 GisDefs 函数原型 function CheckDir(const _path: String): Boolean; 函数说明 如果 _path ...
- Apache:To Config The Vhost of Django Project
It is not a good idea to use dev server in Production Environment. Apache or Nginx are good choice.B ...
- 怎么用notepad配置来运行C语音环境
想要运行C语言,我们可以用notepad软件来进行编辑,那么怎么用notepad 配置运行c语言开发环境呢? Notepad++是一款很好的编辑器,可以用来开发很多的工具,具体大家请看下文给大家详细讲 ...
- 用汇编语言研究C语言的全局变量、局部变量、参数、返回值放在哪里
前提知识 c0s调用main函数的地址: 11ah main函数的连接地址: 01fah 一.全局变量与局部变量 测试程序 int a1,a2,a3; void f(void); void g(voi ...