Hierarchy视图里的Transform和Camera组件
Hierarchy视图里的Transform和Camera组件
在Hierarchy视图里,选中Camera,然后在Inspector视图里查看其各组件,如图1-8所示。对于Transform和Camera组件,对于使用过Unity的读者来说再熟悉不过本文选自NGUI从入门到实战教程。
但是其上名为UICamera(Script)的脚本组件,才是NGUI创建的UI控件所特有的。提示:UICamera(Script)脚本组件通常会被赋予特定的摄像机对象,而这些摄像机的特殊之处在于它需要与UI控件发生交互。即接收来自于UI控件的各种消息事件,例如,游戏界面上的特定按钮被点击的事件本文选自NGUI从入门到实战教程。

图1-8 Camera里的各组件
UICamera(Script)脚本组件包含了大量的属性:
q Event Type:指定这个摄像机将会发送的事件类型;
提示:此属性包含了两个参数:World和UI。前者表示事件来自于与3D世界中游戏对象的交互;后者表示事件来自于与2D控件的交互;
q Event Mask:指定可以接收到事件消息的图层;
q Allow Multi Touch:指定是否允许多点触控;
q Sticky Press:指定当手指在一个按钮处按下,然后手指滑动到按钮外部的时候,按钮是否会弹起,而其它对象则是否会接收到来自于这个手指的触发事件;
提示:复选Sticky Press属性的时候,按钮会持续处于被按下的状态,即使此时手指已经滑动到了按钮外,而其它控件也不会接收到来自于手指的触发事件;
q Sticky Tooltip:指定UI控件上作为控件说明的便笺信息,将在怎样的事件被触发以后显示;
提示:Sticky Tooltip属性被复选的时候,便笺信息在鼠标移动到UI控件外部的时候显示;取消复选的时候,鼠标移动到UI控件上的时候显示便笺信息,移出后马上消失。
q Tooltip Delay:用于设置便笺信息持续显示的时间,单位是秒;
q Raycast Range:Raycast实际上可以被看作是一条不可见的射线,它以鼠标的位置或者屏幕上被触摸的位置为起点,以当前摄像机的朝向为方向发射一条射线,此射线就被用于检测碰撞以及其它事件,有些开发者或许希望可以指定这个射线能够检测的范围,就可以通过设置这个属性来实现。
提示:Raycast Range默认的属性值是-1,表示没有范围限制;
q Event Sources:此属性用于指定摄像机所监听事件的来源;
提示:一共有4个可选项,Mouse表示监听鼠标事件,可以来自于鼠标左键、右键、中键和滚轮;Touch表示监听移动设备的触摸事件;Keyboard表示监听键盘的输入事件;Controller表示监听来自于操纵杆设备的事件;
q Thresholds:指定特定事件可以被触发的临界值;
提示:一个有4个可设置的值,Mouse Drag表示判定当前事件是鼠标拖动事件的临界值是鼠标至少拖拽了多少个像素点;Mouse Click表示判断当前事件是鼠标点击事件的临界值是鼠标按下了以后,在拖动了多少个像素点之内,松开了按键,超出范围则不判定为点击事件;Touch Drag与Touch Tap类似于前两个可设置的值,只不过是鼠标换成了手指;
q Axes and Keys:设置NGUI插件的输入系统。
提示:在Unity中,Keys几乎表示了所有输入设备的键值,例如,键盘上的所有按键都有对应的Keys,其它游戏操纵杆也一样,因此可以直接使用Keys表示特定的按键。同时,Unity将其中一些常用的Keys映射到了一些其它的Axes上,因此开发者也可以直接使用Axes表示特定的按键。NGUI对Axes and Keys属性的默认设置如图1-9所示,前3个是Axes,后4个是Keys。

图1-9 NGUI对Axes and Keys属性的默认设置
对于Keys,读者可以直接从名称上识别出其对应的键,但是对于Axes,与它对应Keys读者也许并不了解,而且读者有时可能需要修改Axes对应的Keys,有时则是直接添加Axes。那么,在Unity中如何添加和修改Axes呢?方法是,单击Edit|Project Settings|Input命令,即可弹出名为InputManager的对话框,读者可以在此对话框中添加和修改Axes,如图1-10所示本文选自NGUI从入门到实战教程。

图1-10 Unity默认设置的Axes
Hierarchy视图里的Transform和Camera组件的更多相关文章
- iOS Programming View and View Hierarchy 视图和视图等级
iOS Programming View and View Hierarchy 视图和视图等级 1.1(1)File → New → Project.. From the iOS section, ...
- thinkphp 3.2视图里添加URL参数 实例
使用TP的时候URL传参 到控制器里 视图里 <ul> <volist name="content" id="data"> <li ...
- #你好Unity3D#Hierarchy视图监听gameObject点击事件
今天无意间又找到了个好方法 1 2 3 4 5 6 7 8 9 10 [InitializeOnLoadMethod] static void Start () { Selection.s ...
- [2013.9.8网络首发]导入Android4.2源码里的Gallery2和Camera模块至Eclipse全过程
[2013.9.8网络首发]导入Android4.2源码里的Gallery2和Camera模块至Eclipse全过程 google的android自带的apps写的是相当牛逼的,将其导入到ecli ...
- 用css3动画 @keyframes里设置transform:rotate(); 控制动画暂停和运动用属性:animation-play-state:paused暂停,在微信和safari里设置paused无效,在QQ里是正常的
这几天遇到了两个很奇葩的问题,终于找到原因,趁还记得解决方法,赶紧记下来: 用css3动画 @keyframes里设置transform:rotate(); 控制动画暂停和运动可以用属性:animat ...
- VueJs(11)---vue-router(命名路由,命名视图,重定向别名,路由组件传参)
vue-router 上篇文章讲了第一篇vue-router相关文章,文章地址:VueJs(10)---vue-router(进阶1) 一.命名路由 有时候,通过一个名称来标识一个路由显得更方便一些, ...
- unity操作Hierarchy视图下同名的对象
上周遇到了一个令我尴尬的问题,在同一个场景内有了两个名字相同的对象,给个形象化的栗子: 场景内有橱窗,橱窗是模型,窗户是可以打开的[点击控制],窗户可以控制打开和关闭的.然后我就选用了一个保守的方式进 ...
- Razor基础,视图里如何调用controller里的函数
1.单行代码书写 @代码 2.多行代码书写 @{ //@加个大括号就可以在里面写C#代码了. C#代码第一行 C#代码第二行 } 3.Razor模板引擎会自动判别代码块,但是当代码存在二义性的时候,可 ...
- vue里图片压缩上传组件
//单图上传 <template> <div> <div class="uploader" v-if='!dwimg'> <van-upl ...
随机推荐
- matlab 之字体调整
FontWeight {normal} | bold | light | demi
- TCP/IP网络编程技术基础
零零碎碎记下点→ 不对的欢迎大家批评纠正→ 以免本人及偶尔看到此博客的人继续迷途未返→ >>>>>基础知识→ 1→TCP/IP英文名:Tranmission Contro ...
- TYVJ1359 收入计划
描述 高考结束后,同学们大都找到了一份临时工作,渴望挣得一些零用钱.从今天起,Matrix67将连续工作N天(1<=N<=100 000).每一天末他可以领取当天及前面若干天里没有 ...
- PHP的SQL注入攻击的技术实现以及预防措施
最近在折腾 PHP + MYSQL 的编程.了解了一些 PHP SQL 注入攻击的知识,总结一下经验.在我看来,引发 SQL 注入攻击的主要原因,是因为以下两点原因: 1. php 配置文件 php. ...
- codeforces 258div2 B Sort the Array
题目链接:http://codeforces.com/contest/451/problem/B 解题报告:给出一个序列,要你判断这个序列能不能通过将其中某个子序列翻转使其成为升序的序列. 我的做法有 ...
- 用php实现百度网盘图片直链的代码分享
第一种代码:代码量较少通过正则表达式获取百度网盘的文件真实地址,来实现直链的效果 将下面的代码保存为downbd.php 复制代码代码如下: <?php $canshu=$_SERVER[&qu ...
- 【Web】关于URL中文乱码问题
关于URL编码 一.问题的由来 URL就是网址,只要上网,就一定会用到. ...
- Java异常的栈轨迹fillInStackTrace和printStackTrace的用法
本文转自wawlian 捕获到异常时,往往需要进行一些处理.比较简单直接的方式就是打印异常栈轨迹Stack Trace.说起栈轨迹,可能很多人和我一样,第一反应就是printStackTrace()方 ...
- sharepoint部件webparth关闭找回的方法
- 43. 动态规划求解n个骰子的点数和出现概率(或次数)[Print sum S probability of N dices]
[题目] 把N个骰子扔在地上,所有骰子朝上一面的点数之和为S.输入N,打印出S的所有可能的值出现的概率. [分析] 典型的动态规划题目. 设n个骰子的和为s出现的次数记为f(n,s),其中n=[1-N ...