实力封装:Unity打包AssetBundle(番外篇)

2024-02-27 04:40

本文主要是介绍实力封装:Unity打包AssetBundle(番外篇),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前情提要:第二种打包方式。

自定义AssetBundle包扩展名

在之前的教程中,我们已经多次提到过扩展名了,并且也已经说明了如何设置自定义的AssetBundle扩展名。至于为什么还要把它单独拿出来说一遍,自然是有它的道理的,因为这里面有一个巨大的坑...

注意,前方有坑。。。

 

根据前面的剧情,我们有三方式可以设置自定义的AssetBundle包扩展名,下面就来一一讲解:

 

一、在Inspector面板中设置扩展名

这种设置AssertBundle包扩展名的方式可能是最简单的方式了,这里我把图片再放一遍↓↓

使用这种方式设置扩展名也有坑的地方,据我的尝试,也不是任意的扩展名都可以的,假如通过这种方式设置了扩展名,但是打包以后却没有看到扩展名,那么就换一个扩展名再试试。

 

二、通过AssetBundleName设置扩展名

意思是什么呢?就是我们在给AssetBundle包设置名字的时候,同时加入扩展名。

假如说,我们给AssetBundle包取名字叫做“MyAssetBundle”,那么这个时候,我们把名字换成“MyAssetBundle,assetbundle”,不用再设置扩展名,直接打包,我们会看到打包出来的AssetBundle包带上了扩展名。

其实这是一种讨巧的方式。用这种方式可以设置任何扩展名,都没有问题,而且可以被正确加载。

 

三、通过AssetBundleBuild.assetBundleVariant设置扩展名

兴许在我心里这种方式设置扩展名才是正统,也不知道为什么会有这种奇怪的念头。

我们可以在上一教程的代码基础上加上这样一句话↓↓

 

buildMap.assetBundleVariant = "assetbundle";
然后点击菜单,运行打包程序,虽然最后打包成功了,编辑器会报错,错误信息是这样的↓↓

 

 

  1. Error: Variant folder path cannot be empty
这是个死活找不出原因的错,明明都打包成功了,哪里报的错??逗我来了吧??

 

 

简直让人崩溃,问度娘,度娘说:我不知道...

哎,无奈之下只好问谷哥了,幸好谷哥给力了一把↓↓

 

 

总算是找到原因了,按照上图的方法添加这几行代码,再次运行打包,就不会再报错了,心好累...

 

 

但是你以为这样就完了??那你就太年轻了...

在添加了上面的代码之后,每次运行后,你设置的信息都会存储到Inspector面板中的这里↓↓还有这里↓↓

 

(用画图打的马赛克,将就着看吧)

 

也不能通过Remove Unused Names把它们删除掉,如果是处女座的话...

 

总结来看,最方便最保险最安全最**的设置AssetBundle后缀名的方式还是第二种方式。

最后非常非常非常感谢这位叫王思元的筒子给出的正解,它的博客里还有很多很多关于AssetBundle包和打包的知识,以及各种报错的解决方案,我只是截取了其中一段,欢迎大家去看看他的博客→→博客链接←←

 

下期见啦~

转载于:https://www.cnblogs.com/huwenya/p/9246232.html

这篇关于实力封装:Unity打包AssetBundle(番外篇)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/751251

相关文章

PyInstaller打包selenium-wire过程中常见问题和解决指南

《PyInstaller打包selenium-wire过程中常见问题和解决指南》常用的打包工具PyInstaller能将Python项目打包成单个可执行文件,但也会因为兼容性问题和路径管理而出现各种运... 目录前言1. 背景2. 可能遇到的问题概述3. PyInstaller 打包步骤及参数配置4. 依赖

鸿蒙中Axios数据请求的封装和配置方法

《鸿蒙中Axios数据请求的封装和配置方法》:本文主要介绍鸿蒙中Axios数据请求的封装和配置方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1.配置权限 应用级权限和系统级权限2.配置网络请求的代码3.下载在Entry中 下载AxIOS4.封装Htt

SpringBoot中封装Cors自动配置方式

《SpringBoot中封装Cors自动配置方式》:本文主要介绍SpringBoot中封装Cors自动配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录SpringBoot封装Cors自动配置背景实现步骤1. 创建 GlobalCorsProperties

Flutter打包APK的几种方式小结

《Flutter打包APK的几种方式小结》Flutter打包不同于RN,Flutter可以在AndroidStudio里编写Flutter代码并最终打包为APK,本篇主要阐述涉及到的几种打包方式,通... 目录前言1. android原生打包APK方式2. Flutter通过原生工程打包方式3. Futte

Java导入、导出excel用法步骤保姆级教程(附封装好的工具类)

《Java导入、导出excel用法步骤保姆级教程(附封装好的工具类)》:本文主要介绍Java导入、导出excel的相关资料,讲解了使用Java和ApachePOI库将数据导出为Excel文件,包括... 目录前言一、引入Apache POI依赖二、用法&步骤2.1 创建Excel的元素2.3 样式和字体2.

JAVA封装多线程实现的方式及原理

《JAVA封装多线程实现的方式及原理》:本文主要介绍Java中封装多线程的原理和常见方式,通过封装可以简化多线程的使用,提高安全性,并增强代码的可维护性和可扩展性,需要的朋友可以参考下... 目录前言一、封装的目标二、常见的封装方式及原理总结前言在 Java 中,封装多线程的原理主要围绕着将多线程相关的操

linux打包解压命令方式

《linux打包解压命令方式》文章介绍了Linux系统中常用的打包和解压命令,包括tar和zip,使用tar命令可以创建和解压tar格式的归档文件,使用zip命令可以创建和解压zip格式的压缩文件,每... 目录Lijavascriptnux 打包和解压命令打包命令解压命令总结linux 打包和解压命令打

将java程序打包成可执行文件的实现方式

《将java程序打包成可执行文件的实现方式》本文介绍了将Java程序打包成可执行文件的三种方法:手动打包(将编译后的代码及JRE运行环境一起打包),使用第三方打包工具(如Launch4j)和JDK自带... 目录1.问题提出2.如何将Java程序打包成可执行文件2.1将编译后的代码及jre运行环境一起打包2

配置springboot项目动静分离打包分离lib方式

《配置springboot项目动静分离打包分离lib方式》本文介绍了如何将SpringBoot工程中的静态资源和配置文件分离出来,以减少jar包大小,方便修改配置文件,通过在jar包同级目录创建co... 目录前言1、分离配置文件原理2、pom文件配置3、使用package命令打包4、总结前言默认情况下,

C++实现封装的顺序表的操作与实践

《C++实现封装的顺序表的操作与实践》在程序设计中,顺序表是一种常见的线性数据结构,通常用于存储具有固定顺序的元素,与链表不同,顺序表中的元素是连续存储的,因此访问速度较快,但插入和删除操作的效率可能... 目录一、顺序表的基本概念二、顺序表类的设计1. 顺序表类的成员变量2. 构造函数和析构函数三、顺序表