当前位置:   article > 正文

Unity3d 周分享(13期 2019.3.23 )_spriteatlasutility.packallatlases

spriteatlasutility.packallatlases

选自过去1~2周 自己所看到外文内容:https://twitter.com/unity3d 和各种其他博客来源吧

            csdn 的东西, 不想吐槽, 笔记的拷贝  还需要重新传图片,  代码排版等问题, 垃圾~

 

1、 看到 “Unity Asynchronous完全理解学习小组” 视频的笔记

参考视频和文章

异步处理的基础知识

特点

  • 处理不会立即返回结果
  • 您无需等待功能完成即可执行以下操作
  • 异步处理不一定是多线程的
  • 协同程序是单线程和异步的
  • 有并发执行和并行执行,同时CPU共享,每个CPU实现并行
  • 处理结束时发出消息
  • 收到邮件的收件人会做一些事情
  • 发出一条OnNext或Error消息

问题点

  • 处理执行结果
  • 串行/并行处理
  • 错误处理
  • 取消执行
  • 控制执行上下文(多线程控制)
  • 写愚蠢是无法控制的

错误处理

  • 将其发布在日志上并完成
  • 要重试
  • 回到另一个过程
  • 放弃处理
  • 抓住失败

 

 

 

2、 [Unity]我在iOS中将架构从Universal更改为ARM 64,并检查了可以减少多少Xcode构建时间

 

Architecture

构建時間

任务数

Universal

240 秒

291

ARM64

140 秒

161

*任务数量是Xcode顶部显示的数字

 

 

 

【Unity】我尝试通过减少Android上的Target Architectures来缩短构建时间

  • Unity版本:2018.3.7f1
  • 脚本编写后端:IL2CPP
  • 构建系统:Gradle
  • 使用空Unity项目进行验证

Architecture

构建時間

ARMv7 + x86

55 秒

只有 ARMv7

71 秒

 

 

 

[Unity]我试着看看通过减少Android上的Target Architectures可以减少多少应用程序容量

  • Unity版本:2018.3.7f1
  • 脚本编写后端:IL2CPP
  • 构建系统:Gradle
  • 使用空Unity项目进行验证

Architecture

容量

ARMv7 + x86

12.7 MB

只有 ARMv7

6.63 MB

 

 

 

 

 

 

 

3、 [Unity] “SpriteAtlasUtility.PackAllAtlases” 可以打包指定的SpriteAtlas

using UnityEditor; using UnityEditor.U2D; using UnityEngine.U2D; public static class Example { [MenuItem( "Tools/Hoge" )] private static void Hoge() { var path = "【SpriteAtlas的路径】"; var atlas = AssetDatabase.LoadAssetAtPath<SpriteAtlas>( path ); var atlases = new []{ atlas }; SpriteAtlasUtility.PackAtlases( atlases, BuildTarget.Android ); } }

https://docs.unity3d.com/2018.2/Documentation/ScriptReference/U2D.SpriteAtlasUtility.PackAtlases.html

 

[Unity]“SpriteAtlasUtility.PackAllAtlases”可以打包Unity项目中的所有SpriteAtlas

using UnityEditor; using UnityEditor.U2D; public static class Example { [MenuItem( "Tools/Hoge" )] private static void Hoge() { SpriteAtlasUtility.PackAllAtlases( BuildTarget.Android ); } }

https://docs.unity3d.com/2018.2/Documentation/ScriptReference/U2D.SpriteAtlasUtility.PackAllAtlases.html

 

 

 

4、 [Unity] Unity 2018.1 新功能在 iOS / Android 上使用 “GUIUtility.systemCopyBuffer”,可以将字符串复制到剪贴板

 

using UnityEngine; public class Example : MonoBehaviour { private void Awake() { GUIUtility.systemCopyBuffer = "皮卡丘"; } }

 

 

 

5、[Unity] Unity 2018.3新功能“Application.consoleLogPath”可以获取控制台日志的输出目标路径

using UnityEngine; public class Test : MonoBehaviour { private void Awake() {; Debug.Log( Application.consoleLogPath ); } }

平台

文字列

Windows编辑器

C:/Users/【用户名称】/AppData/Local/Unity/Editor/Editor.log

Android的

【空字符串】

iOS版

【空字符串】

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/140585
推荐阅读
相关标签
  

闽ICP备14008679号