实力封装:Unity打包AssetBundle(番外篇)
自定义AssetBundle包扩展名
在之前的教程中,我们已经多次提到过扩展名了,并且也已经说明了如何设置自定义的AssetBundle扩展名。至于为什么还要把它单独拿出来说一遍,自然是有它的道理的,因为这里面有一个巨大的坑...
注意,前方有坑。。。
根据前面的剧情,我们有三方式可以设置自定义的AssetBundle包扩展名,下面就来一一讲解:
一、在Inspector面板中设置扩展名
这种设置AssertBundle包扩展名的方式可能是最简单的方式了,这里我把图片再放一遍↓↓
使用这种方式设置扩展名也有坑的地方,据我的尝试,也不是任意的扩展名都可以的,假如通过这种方式设置了扩展名,但是打包以后却没有看到扩展名,那么就换一个扩展名再试试。
二、通过AssetBundleName设置扩展名
意思是什么呢?就是我们在给AssetBundle包设置名字的时候,同时加入扩展名。
假如说,我们给AssetBundle包取名字叫做“MyAssetBundle”,那么这个时候,我们把名字换成“MyAssetBundle,assetbundle”,不用再设置扩展名,直接打包,我们会看到打包出来的AssetBundle包带上了扩展名。
其实这是一种讨巧的方式。用这种方式可以设置任何扩展名,都没有问题,而且可以被正确加载。
三、通过AssetBundleBuild.assetBundleVariant设置扩展名
兴许在我心里这种方式设置扩展名才是正统,也不知道为什么会有这种奇怪的念头。
我们可以在上一教程的代码基础上加上这样一句话↓↓
buildMap.assetBundleVariant = "assetbundle";
- Error: Variant folder path cannot be empty
简直让人崩溃,问度娘,度娘说:我不知道...
哎,无奈之下只好问谷哥了,幸好谷哥给力了一把↓↓
总算是找到原因了,按照上图的方法添加这几行代码,再次运行打包,就不会再报错了,心好累...
但是你以为这样就完了??那你就太年轻了...
在添加了上面的代码之后,每次运行后,你设置的信息都会存储到Inspector面板中的这里↓↓还有这里↓↓
(用画图打的马赛克,将就着看吧)
也不能通过Remove Unused Names把它们删除掉,如果是处女座的话...
总结来看,最方便最保险最安全最**的设置AssetBundle后缀名的方式还是第二种方式。
最后非常非常非常感谢这位叫王思元的筒子给出的正解,它的博客里还有很多很多关于AssetBundle包和打包的知识,以及各种报错的解决方案,我只是截取了其中一段,欢迎大家去看看他的博客→→博客链接←←
实力封装:Unity打包AssetBundle(番外篇)的更多相关文章
- 【Unity|C#】番外篇(1)——6个重要概念:栈与堆,值类型与引用类型,装箱与拆箱
传送门:https://www.cnblogs.com/arthurliu/archive/2011/04/13/2015120.html
- 实力封装:Unity打包AssetBundle(大结局)
→→前情提要:让用户选择要打包的文件←← 大结局:更多选择 Unity打包AssetBundle从入门到放弃系列终于要迎来大结局了[小哥哥表示实在写不动了o(╥﹏╥)o]... 经过上一次的教程,其实 ...
- 【番外篇】ASP.NET MVC快速入门之免费jQuery控件库(MVC5+EF6)
目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...
- electron教程(番外篇二): 使用TypeScript版本的electron, VSCode调试TypeScript, TS版本的ESLint
我的electron教程系列 electron教程(一): electron的安装和项目的创建 electron教程(番外篇一): 开发环境及插件, VSCode调试, ESLint + Google ...
- electron教程(番外篇一): 开发环境及插件, VSCode调试, ESLint + Google JavaScript Style Guide代码规范
我的electron教程系列 electron教程(一): electron的安装和项目的创建 electron教程(番外篇一): 开发环境及插件, VSCode调试, ESLint + Google ...
- 番外篇!全球首个微信应用号开发教程!小程序 DEMO 视频奉上!
大家好,我是博卡君.经过国庆节的七天假期,相信很多朋友都已经研究出自己的小程序 demo 了吧?我最近也利用休息时间关注了一下网上关于小程序开发的讨论,今天就利用这个番外篇谈谈自己对小程序的一些想法吧 ...
- (九)羽夏看C语言——C++番外篇
写在前面 此系列是本人一个字一个字码出来的,包括示例和实验截图.本人非计算机专业,可能对本教程涉及的事物没有了解的足够深入,如有错误,欢迎批评指正. 如有好的建议,欢迎反馈.码字不易,如果本篇文章 ...
- iOS冰与火之歌(番外篇) - 基于PEGASUS(Trident三叉戟)的OS X 10.11.6本地提权
iOS冰与火之歌(番外篇) 基于PEGASUS(Trident三叉戟)的OS X 10.11.6本地提权 蒸米@阿里移动安全 0x00 序 这段时间最火的漏洞当属阿联酋的人权活动人士被apt攻击所使用 ...
- 给深度学习入门者的Python快速教程 - 番外篇之Python-OpenCV
这次博客园的排版彻底残了..高清版请移步: https://zhuanlan.zhihu.com/p/24425116 本篇是前面两篇教程: 给深度学习入门者的Python快速教程 - 基础篇 给深度 ...
- 可视化(番外篇)——在Eclipse RCP中玩转OpenGL
最近在看有关Eclipse RCP方面的东西,鉴于Gephi是使用opengl作为绘图引擎,所以,萌生了在Eclipse RCP下添加画布,使用opengl绘图的想法,网上有博文详细介绍这方面的内容, ...
随机推荐
- Spring Boot之Swagger2集成
一.Swagger2简单介绍 Swagger2,它可以轻松的整合到Spring Boot中,并与Spring MVC程序配合组织出强大RESTful API文档.它既可以减少我们创建文档的工作量,同时 ...
- android--------Socket的简单了解
Socket目录 Socket通信简介 Android与服务器的通信方式主要有两种,一是Http通信,一是Socket通信.两者的最大差异在于,http连接使用的是“请求—响应方式”,即在请求时建立连 ...
- nginx-exporter安装使用
一.没有vts的启动方式 #nginx_exporter -telemetry.address=:9113 -nginx.scrape_uri="http://127.0.0.1:100 ...
- python 绝版线程池
2.绝版线程池设计思路:运用队列queue a.队列里面放任务 b.线程一次次去取任务,线程一空闲就去取任务 import queueimport threadingimport contextlib ...
- oracle中rownum和row_number()
row_number()over(partition by col1 order by col2)表示根据col1分组,在分组内部根据col2排序,而此函数计算的值就表示每组内部排序后的顺序编号(组内 ...
- Python面向对象编程-类的封装,继承、多态
面向对象是一种程序设计思想,对象作为程序基本单元,包含了数据和操作数据的函数. 面向对象的三大特点--数据封装.多态和继承. #类的创建,class关键字,类名大写,object表示从哪个类继承而来, ...
- Visual Studio references中的package找不到
1. 把solution里面所有project的.net版本设成一样的 2. ERROR: This project references NuGet package(s) that are miss ...
- 十四、MVC的WEB框架(Structs2)
一.Structs2中的Session 1.一个是传统的servlet包下的HttpSession,一个是Structs2中自己定义的Session Servlet下的Session获取方法:Serv ...
- IntelliJ IDEA下载及安装,破解
IntelliJ IDEA下载及安装,破解 百度百科:IDEA 全称IntelliJ IDEA,是java语言开发的集成环境,IntelliJ在业界被公认为最好的java开发工具之一,尤其在智能代码助 ...
- 【转】MVC5学习笔记 BindAttribute
// POST: Movies/Create // 为了防止“过多发布”攻击,请启用要绑定到的特定属性,有关 // 详细信息,请参阅 http://go.microsoft.com/fwlink/?L ...