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_遥感控制物体移动(涉及遮罩,小摄像机跟随)的更多相关文章

  1. [Silverlight 2.0 控制物体绕圆弧运行(C#初探篇)]

    我自己写的第一个 Silverlight 2.0 程序    [Silverlight 2.0 控制物体绕圆弧运行(C#初探篇)]            程序运行时:小地球将绕着圆形轨迹做圆周运动. ...

  2. Maya 脚本控制物体自转

    在Maya中,我们可以用脚本来控制物体的自转方向,速度等等,步骤如下: 选择需要操作的物体object,打开通道盒Channel Box,点击编辑Edit,打开表达式Expressions面板 选择需 ...

  3. Unity3D 几个基本动画(控制物体移动、旋转、缩放)

    Transform基本移动函数: 1.指定方向移动: //移动速度 float TranslateSpeed = 10f; //Vector3.forward 表示"向前" tra ...

  4. Unity编程回忆录之控制物体移动

    最新心血来潮,然后开始学习Unity3D游戏开发引擎,对于一个主流的跨平台3D游戏开发引擎,我已经深深的为他着迷了,于是果断的开始学习这个引擎,而且刚刚预装的游戏引擎最新版中4.3版本已经开始原生支持 ...

  5. iOS_2_button控制物体形变

    终于效果图: BeyondViewController.h // // BeyondViewController.h // 02_button控制物体形变 // // Created by beyon ...

  6. Unity —— 通过鼠标点击控制物体移动

    //ClickMove - - 通过鼠标点击控制物体移动 using System.Collections; using System.Collections.Generic; using Unity ...

  7. Unity3d 控制物体移动、旋转、缩放

    在Unity中通过利用 Input Manager(输入管理器)可以很简单的实现对一个物体进行移动.旋转.缩放操作. 演示代码: //通过虚拟轴控制物体移动.旋转.缩放 public class Mo ...

  8. Unity3D_(游戏)控制物体的上、下、左、右移动

    通过键盘上↑.↓.←.→实现对物体的控制 using System.Collections; using System.Collections.Generic; using UnityEngine; ...

  9. Unity使用transform.Translate()移动子物体时遇到的小问题

    Unity使用transform.Translate()移动子物体时遇到的小问题 情况大概是这样:父物体A下有子物体B,希望使B在本地坐标系下移动1单位. B物体挂脚本代码如下: transform. ...

随机推荐

  1. 让div 实现 input效果

    <div class="arcils-info" c /> .arcils-info { border: none; width: 100%; font-size: 1 ...

  2. Linux命令:cat命令详解

    概述:查看文件内容,连接文件,重定向输出到文件 1.查看整个文件 2.cat > filename 创建文件 3.合并输出到文件 1.查看文件(单个或者多个) cat demo.txt 2.创建 ...

  3. MySQL增删改查的常用操作指令总结

    总结: 1.数据库操作: 创建库: create database db_name; 查询库: show databases; //显示所有的数据库 show create databases db_ ...

  4. php中的JSON中文处理

    最近在PHP中要输出JSON,上网查了一下,对中文支持不太好,要不就先转成utf-8的编码,再用json_encode生成,客户端还要再utf-8转中文.对于网页已经用GB2312的服务器,不想这样折 ...

  5. Bootstrap_Javascript_手风琴

    触发手风琴可以通过自定义的 data-toggle 属性来触发.其中data-toggle值设置为 collapse,data-target="#折叠区标识符". 第一步,设计一个 ...

  6. 用jQuery实现瀑布流效果学习笔记

    jQuery一直没系统的学,只知道是js库,封装了好多js函数,方便了开发.以前做过一个原生的图片网站瀑布流效果,超级麻烦,这次用了jQuery方法,瞬间代码浓缩了,只有56行js代码.神奇的让我来把 ...

  7. php之购物车类思路及代码

    <?php /* 购物车类 1.整站范围内,购物车--全局有效 解决:把购物车的信息,放在session里 2.既然全局有效,购物车的实例只有一个 解决:单例模式 技术选型:session+单例 ...

  8. TatukGIS - GisDefs - ChangeDir 函数

    函数名称  ChangeDir 所在单元  GisDefs 函数原型  function ChangeDir(const _path: String): String;   函数说明 如果 _path ...

  9. django访问sqlserver中的坑

    首先不用说先安装django-sqlserver    pip install django-sqlserver 然后在settings.py中修改'ENGINE': 'sqlserver_ado', ...

  10. ASP.NET导出Excel(利用NPOI和EPPlus库,无需安装Office)

    网上提供了很多Asp.net中操作Excel的方法,其中大部分是调用微软的Office组件,下面提供三个无须安装Office即可从Asp.net输出Excel的方法. 1 简单方法 //下面代码输出的 ...