加速 Unity 不同平台打包的一种思路
Unity打包总的来说还不是一件特别复杂的事情, 但是我们知道任何关于跨平台(多线程等)这类问题, 总是会把事情搞得复杂起来.
以前项目的打包是通过Jenkins对一个工程下对不同平台多次打包, 不可避免需要切换不同平台, 因而十分耗费时间, 之后改进了一种办法, 针对不同平台单独创建文件夹, 单独从SVN同步, 单独打包. 这种做法的主要问题是项目大起来之后, 整体占用空间太大, 我们用的Mac Pro还是500G的, 两个项目同时用, 硬盘更是吃紧.
最近我优化了一种方法, Unity针对不同平台要将源资源文件转成对应平台的硬件才能识别的文件, 这些内容的设置方法存放在meta文件中, 而转换后具体的结果则存放在Library中(为什么多次提到meta一定要, 但是Library不需要呢? 就是因为meta记录了我们的设置, pull下来之后, 机器自己去转化即可, Library也是很大的). PS: Unity本身也把各种各样的转换工具放在安装文件目录下, 很容易就可以找到.
知道这点后, 我们可以把不同平台的Library单独拿出来, 每次打包的时候只需要在工程目录下创建对应平台资源目录的软链接, 这样就不需要针对单个平台再去存一份了. 同样的有了这种思路之后, 我们也可以定期对不同平台的资源进行转换, 以提高后期出包时的效率. 今天实验过后, 这种方案是可行的. 至于Unity的打包流程, 则是另外一个话题, 后续有时间就说说吧.
加速 Unity 不同平台打包的一种思路的更多相关文章
- Unity自己主动打包工具
最開始有写打包工具的想法,是由于看到<啪啪三国>王伟峰分享的一张图,他们有一个专门的"工具程序猿"开发各种工具. (ps:说起来这个王伟峰和他的创始团队成员,曾经跟我是 ...
- Unity20172.0 Android平台打包
Android SDK及Jdk百度网盘下载链接:https://pan.baidu.com/s/1dFbEmdz 密码:pt7b Unity20172.0 Android平台打包 简介说明: 第一步: ...
- Android Studio签名打包的两种方式
签名打包的两种方式: 注:给我们自己开发的app签名,就代表着我自己的版权,以后要进行升级,也必须要使用相同的签名才行.签名就代表着自己的身份(即keystore),多个app可以使用同一个签名. 如 ...
- ASP.NET MVC中使用Unity进行依赖注入的三种方式
在ASP.NET MVC中使用Unity进行依赖注入的三种方式 2013-12-15 21:07 by 小白哥哥, 146 阅读, 0 评论, 收藏, 编辑 在ASP.NET MVC4中,为了在解开C ...
- Unity 多场景打包
本文章由cartzhang编写,转载请注明出处. 所有权利保留. 文章链接:http://blog.csdn.net/cartzhang/article/details/50580641 作者:car ...
- Android平台中的三种翻页效果机器实现原理
本文给开发者集中展现了Android平台中的三种翻页效果机器实现原理,希望能够对开发者有实际的帮助价值! 第一种翻页效果如下: 实现原理: 当前手指触摸点为a,则 a点坐标为(ax,ay), ...
- 解决Maven并行编译中出现打包错误问题的思路
解决Maven并行编译中出现打包错误问题的思路 并行构建 Maven 3.x 提供了并行编译的能力,通过执行下列命令就可以利用构建服务器的多线程/多核性能提升构建速度: mvn -T 4 clean ...
- js数组去重几种思路
在一些后台语言中都内置了一些方法来处理数组或集合中重复的数据.但是js中并没有类似的方法,网上已经有一些方法,但是不够详细.部分代码来源于网络.个人总计如下:大致有4种思路 1)使用两次循环比较原始的 ...
- CSS实现水平垂直同时居中的5种思路
× 目录 [1]水平对齐+行高 [2]水平+垂直对齐 [3]margin+垂直对齐[4]absolute[5]flex 前面的话 水平居中和垂直居中已经单独介绍过,本文将介绍水平垂直同时居中的5种思路 ...
随机推荐
- 手工下载php的composer软件包,如何让项目自动加载包里的类
有的时候需要手工下载php的composer包 1.将下载好的包放到项目的vendor目录下,比如包名:pinguo/php-aop 2.然后查看软件包目录(vendor/pinguo/php-aop ...
- [LeetCode] 237. Delete Node in a Linked List 删除链表的节点
Write a function to delete a node (except the tail) in a singly linked list, given only access to th ...
- vue-cli3 中console.log报错
Module Warning (from ./node_modules/eslint-loader/index.js):error: Unexpected console statement (no- ...
- C# 编译器 和 反编译器,你要哪个(歪头)? 我全都要(捏拳)!
前言 从 C# 6.0 开始,C# 编译器就从以前由 C++ 实现的 csc.exe 换成了用 C# 重新实现的开放式 API 式编译服务 Roslyn.这个编译器到现在已经替代了老式编译器,从前 W ...
- Python 推导式详解
各种推导式详解 推导式的套路 之前我们已经学习了最简单的列表推导式和生成器表达式.但是除此之外,其实还有字典推导式.集合推导式等等. 下面是一个以列表推导式为例的推导式详细格式,同样适用于其他推导式. ...
- 如何使用websocket实现前后端通信
websocket通信是很好玩的,也很有用的的通信方式,使用方式如下: 第一步由于springboot很好地集成了websocket,所以先在在pom.xml文件中引入依赖 <dependenc ...
- adb常用命令总结
针对移动端 Android 的测试, adb 命令是很重要的一个点,必须将常用的 adb 命令熟记于心, 将会为 Android 测试带来很大的方便,其中很多命令将会用于自动化测试的脚本当中. And ...
- (七)linux 学习 -- 键盘高级操作技巧
The Linux Command Line 读书笔记 - 部分内容来自 http://billie66.github.io/TLCL/book/chap09.html 文章目录 移动光标 修改文本 ...
- 第一二章、C++简介和基本语法
C++简介 C++包含了三种编程模式,分别是面向过程.面向对象和泛型编程. 程序执行过程 C++编程格式 C++每个程序都会有main()函数作为入口,基本编程包括预处理/头文件.函数.输入输出语句等 ...
- 爬虫请求库之requests库
一.介绍 介绍:使用requests可以模拟浏览器的请求,比之前的urllib库使用更加方便 注意:requests库发送请求将网页内容下载下来之后,并不会执行js代码,这需要我们自己分析目标站点然后 ...