[UnityEditor.InitializeOnLoad] 修饰类 每次修改这个类的内容,就会重新执行一变构造方法
[UnityEditor.InitializeOnLoadMethod] 修饰方法 也会在构造方法之后执行一遍
[UnityEditor.InitializeOnEnterPlayMode] 修饰方法 编辑器脚本来初始化静态变量或者静态事件处理器
[RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.BeforeSceneLoad)]
[RuntimeInitializeOnLoadMethod]
[RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.AfterSceneLoad)]
[DefaultExecutionOrder(-50)] 脚本执行顺序
查找所有对象 包括隐藏
Resources.FindObjectsOfTypeAll<>()
// .NET 4.x
Debug.Log($"Player health: {Health}");
如果Maximum Allowed Timestep设置为0.1秒,当某次Update的时间(某帧)超过0.1时,
Time.deltaTime的时间其实还是0.1,因而导致比实际的时间慢了。
使用Time.unscaledDeltaTime替换Time.deltaTime来实现定时器。
await
WaitUntil
打印堆栈
string trackStr = new System.Diagnostics.StackTrace().ToString();
Debug.Log ("Stack Info:" + trackStr);
BitConverter.GetBytes(float)
BitConverter.ToSingle(byteArr, 0)
this.GetType().Name 当前类名
Enum.GetValues(typeof(MyEnum));
Application.logMessageReceived
csc.rsp C#编译选项
MonoPInvokeCallback:C调C#
ZFBrowser
https://blog.csdn.net/han15939423461/article/details/78033511
https://blog.csdn.net/yhx956058885/article/details/107004676
Assets/Plugins/Android/xxx.jar
Assets/zzz/Plugins/Android/xxx.jar
Asset/Plugins/Android/zzz/libs/xxx.jar
有project.properties时 jar包的Android属性要勾掉
下载文件
HttpWebRequest c#
UnityWebRequest
WWW 老api
WebClient
安卓中一个页面为Activity,只能有一个Application
iOS中一个页面为Controller
在iOS中静态库以.a和.framework的形式存在,动态库以.dylib和.framework的形式存在。
苹果禁止用户级App使用动态库,所以iOS中系统级的.framework是动态库,用户级的.framework是静态库。
.a是纯二进制文件,不能单独使用,要有.h文件配合。而.framework除了二进制文件外,还包含一些资源文件(头文件,plist等),由于自身包含了头文件,所以.framework可以单独使用
编辑器扩展
菜单栏:修饰函数 [MenuItem("Tools/XXXX")]
创建资源:修饰类 [CreateAssetMenu(fileName = "文件名", menuName ="菜单名")]
创建窗口:XXX继承EditorWindow,[CustomEditor(typeof(XXX))] 修饰
Inspector右键菜单:修饰函数 [ContextMenu("XXX")]
扩展Inspector属性:继承Editor,[CustomEditor(typeof(原有类))]
AssetDatabase.FindAssets()
AssetDatabase.GUIDToAssetPath()
AssetDatabase.LoadAssetAtPath<>()
AssetDatabase.ImportAsset();
Selection.GetFiltered(typeof(Texture2D), SelectionMode.DeepAssets);
手机性能优化
打开Graphics Jobs: 效果明显
关闭GPU Skinning(Compute Skinning):效果不明显
关闭Multithread Render:效果不明显
Unity中各类物理投射性能横向比较
Unity - 射线检测
Unity匿名函数的堆内存优化
逆向工具