Unity随手记
过年11天假期,带娃带了7天,吃吃喝喝。也看了点书,《射雕英雄传》(书)看了一半,还有就是在看《unity官方案例精讲》这本。
随手记一些自觉有价值或者有意思的点。
1. 对脚本中变量设定range
[Range(0.0f, 10.0f)]
public float speed = 0.0f;

2. 交叉数组(Jagged Array)
(1)声明交叉数组可以指定数组的行数,但不能指定列数
(2)交叉数组的长度(Length)等于行数
(3)交叉数组的每一行元素都是一个一维数组
void TestJaggedArray()
{
int[][] mArr1 = new int[][]; //声明一个3行的交叉数组
mArr1[] = new int[] { , , , , , , }; //为交叉数组mArr1一行元素赋值
print(mArr1.Length); //输出3 int[][] mArr2 = new int[][] { new int[] { , , }, new int[] { , , , , }, new int[] { , , , } }; //声明并初始化一个3行的交叉数组
print(mArr2.Length); //输出3 int[][] mArr3 = new int[][] { new int[] { , }, new int[] {, , }, new int[] { , , , }, new int[] { , , , , , }}; // 声明一个4行的交叉数组,行数未指定,由编译器根据初始值推断 int[][] mArr4; // 声明一个交叉数组,未初始化,未指定行数 foreach(var a in mArr2)
{
print(a.Length); //输出每一行中元素的个数
foreach(var b in a)
print(b); //输出每一行上的元素
}
}
对比下普通二维数组:
void Test2DArray()
{
int[,] arr1 = new int[, ]; //声明一个3x4的二维数组arr1
arr1[,] = ;
arr1[,] = ;
print(arr1.Length); //输出12 int[,] arr2 = new int[, ] { {, , }, {, , }}; //声明并初始化一个2x3的二维数组arr2
print(arr2.Length); //输出6 //遍历二维数组中的元素
for(int i = ; i < ; ++i)
for(int j = ; j < ; ++j)
print(arr2[i,j]); //输出1 2 3 4 5 6
}
3.Net Reflector
.NET Reflector,是一个可以将以.NET Framework为基础开发出来的的DLL或EXE文件,反编译为原始程序的工具软件。
装了下这软件(然后破解了= =),然后把C:\Program Files\Unity\Editor\Data\Managed(我的路径)下的UnityEngine.dll和UnityEditor.dll拖进去:

mscorlib是CLR的library,上面这个么就慢慢翻看了。。。
4. Script Execution Order
之前组内分享的时候说同一个对象下的script,无法指定哪个先执行哪个后执行。确实:
“默认情况下,不同的脚本的Awake,OnEnable,Update函数根据脚本的加载顺序来依次调用(脚本的加载顺序是不确定的)。”
在Edit/Project Settings/Script Execution Order里可以指定顺序:

可以把脚本拖进去,然后上下交换位置,在上面的先执行。
Unity随手记的更多相关文章
- Unity AssetBundle爬坑手记
这篇文章从AssetBundle的打包,使用,管理以及内存占用各个方面进行了比较全面的分析,对AssetBundle使用过程中的一些坑进行填补指引以及喷! AssetBundle是Unity推荐的 ...
- (转)Unity AssetBundle爬坑手记
转自:http://www.cnblogs.com/ybgame/p/3973177.html 这篇文章从AssetBundle的打包,使用,管理以及内存占用各个方面进行了比较全面的分析,对Asset ...
- HoloLens开发手记 - Unity之Tracking loss
当HoloLens设备不能识别到自己在世界中的位置时,应用就会发生tracking loss.默认情况下,Unity会暂停Update更新循环并显示一张闪屏图片给用户.当设备重新能追踪到位置时,闪屏图 ...
- HoloLens开发手记 - Unity之Recommended settings 推荐设置
Unity提供了大量的设置选项来满足全平台的配置,对于HoloLens,Unity可以通过切换一些特定的设置来启用HoloLens特定的行为. Holographic splash screen 闪屏 ...
- HoloLens开发手记 - Unity development overview 使用Unity开发概述
Unity Technical Preview for HoloLens最新发行版为:Beta 24,发布于 09/07/2016 开始使用Unity开发HoloLens应用之前,确保你已经安装好了必 ...
- HoloLens开发手记 - Unity之摄像头篇
当你穿戴好HoloLens后,你就会处在全息应用世界的中心.当你的项目开启了"Virtual Reality Support"选项并选中了"Windows Hologra ...
- HoloLens开发手记 - Unity之Gaze凝视射线
凝视是HoloLens首要输入方式,形式功能类似于桌面系统的光标,用于选择操作全息对象.然而在Unity中并没有明确的Gaze API或者组件. 实现Gaze Implementing Gaze 概念 ...
- HoloLens开发手记 - Unity之World Anchor空间锚
World Anchor空间锚提供了一种能够将物体保留在特定位置和旋转状态上的方法.这保证了全息对象的稳定性,同时提供了后续在真实世界中保持全息对象位置的能力.简单地说,你可以为全息物体来添加空间锚点 ...
- HoloLens开发手记 - Unity之Persistence 场景保持
Persistence 场景保持是HoloLens全息体验的一个关键特性,当用户离开原场景中时,原场景中全息对象会保持在特定位置,当用户回到原场景时,能够准确还原原场景的全息内容.WorldAncho ...
随机推荐
- Keepalived详细介绍简介
1.1.Keepalived简介 Keepalived是Linux下一个轻量级别的高可用解决方案.高可用(High Avalilability,HA),其实两种不同的含义:广义来讲,是指整个系统的高可 ...
- 转发:iOS开发系列--触摸事件、手势识别、摇晃事件、耳机线控
-- iOS事件全面解析 转载来自崔江涛(KenshinCui) 链接:http://www.cnblogs.com/kenshincui/p/3950646.html 概览 iPhone的成功很大一 ...
- Lua学习系列(二)
资源整理: 风云老师博客: http://blog.codingnow.com/eo/luaoeeeaeau/ 知乎: https://www.zhihu.com/question/20736660 ...
- df换行问题的设置
df是linux下用来查磁盘空间的命令,而在使用了LVM分区或网络挂载的情况下,再用df取分区的使用率时,发现有些分区显示换行了,这样会导致通过脚本取的数据不对. [root@ ]# df -h Fi ...
- 原来在ARC下还有这么多不同?!
1.ARC空声明变量 使用ARC的另一个优势是所有未初始化的变量默认都是"空值化"的.这意味着像下面这样的声明使用ARC编译后指向的是空值(nil): NSObject myObj ...
- jqGrid的搜索框下拉
当需要在jqGrid的搜索框里配置搜索条件时,如下拉,日期等,代码如下: datePick = function(elem) { jQuery(elem). } colNames : [ " ...
- Javascript 页面刷新
Javascript 页面刷新的实现代码收藏 1 2 3 4 5 6 7 8 history.go(0) location.reload() location=location location.as ...
- make的参数
转载自 陈皓<跟我一起写 Makefile> 下面列举了所有GNU make 3.80版的参数定义.其它版本和产商的make大同小异,不过其它产商的make的具体参数还是请参考各自的产品文 ...
- IOS开发中如何使用通知NSNotification传值
通知 是在跳转控制器之间常用的传值代理方式,除了代理模式,通知更方便.便捷,一个简单的Demo实现通知的跳转传值. 输入所要发送的信息 ,同时将label的值通过button方法调用传递, - (IB ...
- jQuery之事件移除
当事件执行完了,想取消事件的效果可以通过一定的办法来处理.比如bind()方法,可以通过unbind()方法来移除事件的效果. 比如下面的一个案例: <script type="tex ...