过年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随手记的更多相关文章

  1. Unity AssetBundle爬坑手记

    这篇文章从AssetBundle的打包,使用,管理以及内存占用各个方面进行了比较全面的分析,对AssetBundle使用过程中的一些坑进行填补指引以及喷!   AssetBundle是Unity推荐的 ...

  2. (转)Unity AssetBundle爬坑手记

    转自:http://www.cnblogs.com/ybgame/p/3973177.html 这篇文章从AssetBundle的打包,使用,管理以及内存占用各个方面进行了比较全面的分析,对Asset ...

  3. HoloLens开发手记 - Unity之Tracking loss

    当HoloLens设备不能识别到自己在世界中的位置时,应用就会发生tracking loss.默认情况下,Unity会暂停Update更新循环并显示一张闪屏图片给用户.当设备重新能追踪到位置时,闪屏图 ...

  4. HoloLens开发手记 - Unity之Recommended settings 推荐设置

    Unity提供了大量的设置选项来满足全平台的配置,对于HoloLens,Unity可以通过切换一些特定的设置来启用HoloLens特定的行为. Holographic splash screen 闪屏 ...

  5. HoloLens开发手记 - Unity development overview 使用Unity开发概述

    Unity Technical Preview for HoloLens最新发行版为:Beta 24,发布于 09/07/2016 开始使用Unity开发HoloLens应用之前,确保你已经安装好了必 ...

  6. HoloLens开发手记 - Unity之摄像头篇

    当你穿戴好HoloLens后,你就会处在全息应用世界的中心.当你的项目开启了"Virtual Reality Support"选项并选中了"Windows Hologra ...

  7. HoloLens开发手记 - Unity之Gaze凝视射线

    凝视是HoloLens首要输入方式,形式功能类似于桌面系统的光标,用于选择操作全息对象.然而在Unity中并没有明确的Gaze API或者组件. 实现Gaze Implementing Gaze 概念 ...

  8. HoloLens开发手记 - Unity之World Anchor空间锚

    World Anchor空间锚提供了一种能够将物体保留在特定位置和旋转状态上的方法.这保证了全息对象的稳定性,同时提供了后续在真实世界中保持全息对象位置的能力.简单地说,你可以为全息物体来添加空间锚点 ...

  9. HoloLens开发手记 - Unity之Persistence 场景保持

    Persistence 场景保持是HoloLens全息体验的一个关键特性,当用户离开原场景中时,原场景中全息对象会保持在特定位置,当用户回到原场景时,能够准确还原原场景的全息内容.WorldAncho ...

随机推荐

  1. java如何计算程序运行时间

    long startTime = System.currentTimeMillis();    //获取开始时间 doSomething();    //测试的代码段 long endTime = S ...

  2. spring调用mongodb

    1.环境 Jdk:1.6.0_10-rc2 Spring3.1.2  下载 依赖jar文件: 2.相关配置 ①.spring配置文件 <?xml version="1.0" ...

  3. CKeditor使用js验证不得为空

    if (CKEDITOR.instances.TextArea1.getData() == '') { alert('警告:详细内容不得为空!'); CKEDITOR.instances.TextAr ...

  4. LPC1768的USB使用-枚举过程

    枚举过程如下 #ifndef __USBCORE_H__ #define __USBCORE_H__ /* USB端点0 发送数据结构体*/ typedef struct _USB_EP_DATA { ...

  5. Vue.js实例

    构造器 每个 Vue.js 应用都是通过构造函数 Vue 创建一个 Vue 的根实例 启动的: var vm = new Vue({ // 选项 })

  6. Góra urządzenia z dwoma zwiększyć moc może sprawić

    Zaprojektowany z rzeczywistym komfortu i łatwości od sportowca w swoim umyśle, kolejna edycja ze wzr ...

  7. Thinking in scala (6)----高阶函数----返回一个函数

    在Thinking in scala (5)----高阶函数* 里面,我们演示了如何把一个函数作为参数传递给另外一个函数. 在本文里面,我们来演示函数式编程另外一个重要的特性:返回一个函数.首先来看这 ...

  8. mongodb学习(二)分级查询数组中的值

    (PS: 标题有点不妥当...) 大概是这样...数据结构如下: 需要模糊查询title的值... mongodb中操作语句: 主要是注意这里urlElements不需要加[0]...我开始的时候写成 ...

  9. iOS开发中视图控制器ViewControllers之间的数据传递

    iOS开发中视图控制器ViewControllers之间的数据传递 这里我们用一个demo来说明ios是如何在视图控制器之间传递重要的参数的.本文先从手写UI来讨论,在下一篇文章中讨论在storybo ...

  10. JAVA文件的两种读取方法和三种写入方法

    在使用java对文件进行读写操作时,有多种方法可以使用,但不同的方法有不同的性能. 此文对常用的读写方法进行了整理,以备不时之需. 1.文件的读取 主要介绍两种常用的读取方法.按行读取和按字符块读取. ...