使用Editor导出或者直接编译Android工程时,需要借助几个外部工具,JDK、SDK、NDK和Gradle,在Preferences中的External Tools中可以看到它们。每个版本的Editor,绑定了固定版本的外部工具。
MacOS输入法输出当前时间
由遇到一个问题到解决一个问题,来发现思维的路径依赖。
博客首页有一个「技术博客」,日常发现的一些有趣的网站、或是值得一读文章,我会不定期记录到里面。今天更新的时候,突然闪出个想法,想给这个页面加一个最后更新时间,这样一来当有人进到这个页面时,就会知道距离上次更新过去了多久,就像是给页面打上一个生产日期。
Unity截图功能
截图是个常见的需求,大概找了3种不同的方式,每种方式略有区别。
Unity调整UGUI和粒子系统显示的层级
粒子系统作为常用的特效方式,在使用中与UGUI Image共同显示时,可能会遇到显示层级的问题,比如浮在Image上显示、夹在几张Image中间层显示,或是沉于Image底层显示,等等。
Unity的内存优化
Unity公开课中,有些内容谈到了这方面的内容,相对于查找网上的资源,学习官方提供的教程算是比较直接的方式。基于这些,同时结合一些其他资料,在这里整理一下有关的知识点。
Unity中AudioClip的导入设置
为了减少最后导出包体的大小,通常会对导入的音频文件做一些通用设置。将其写成一个工具栏的按钮,便于一键操作。
Unity导出XCode Workspace项目
XCode中,Project和Workspace的关系就类似于.net里Project和Solution。现在Unity的外部依赖一般都在用EDM4U管理,也就是External Dependency Manager For Unity,EDM可以选择导出项目的类型。
EDM4U Github地址
各个版本EDM4U UnityPackage
CSharp使用代码在新Terminal窗口执行命令
当通过代码调用其他系统命令或者程序时,需要弹出一个新的终端窗口,并在这个窗口中执行命令,命令执行完成后,这个窗口则会自动关闭。
在代码中通过MSBuild编译CSharp项目
MSBuild命令是微软提供的编译CSharp项目的一种方式。如果有这样的需求,将一个单Project的Solution编程生成DLL文件,然后将DLL文件作为依赖添加到Unity工程中,相比于每次都打开CSharp工程编译,通过代码进行这个操作较为方便。
快速排序
直白的说,快速排序的主要思想是分治,将一个大数组,分成两个数组,然后对两个数组分别排序。对小数组排序的时候,同样按照这种思想,分成两个,再排序。直到不能再分,也就是长度为1,那么这个小数组就排好,当所有的小数组都排好了的时候,整个大数组也就排好了。