[cb] Assetbundle打包(一)

简介:



一、简介

Unity的Assetbundle是Unity Pro提供的功能。

理解:Asset 资源,资产;Bundle :包,一批,捆;字面上的意思,就是把资源打包。

在项目中怎么使用Assetbunlde呢?

答:我们的项目分为两个工程:Art和Client。其中Art工程,把Prefab打包成AssetBundle及拼接美术资源,Client工程读取AssetBundle及游戏逻辑;

二、Art

下面这张是Art工程下的自定义编辑器功能,菜单栏 Game/资源打包/打包 XXX

image

下是是Project截图,可以看到在Product目录下,有按规则命名的文件夹。菜单栏的功能就是打包这些目录下的Prefab,例如:执行 Game/资源打包/打包Actors ,就是把 项目工程路径/Assets/Product/Actor/* 打包成Assetbundle

image

当打包完之后,所有的AssetBundle都存放在Product\AssetBundles\[Android][IOS[Win32] (注:在打包时需注意Assetbundle有运行平台之分

image

 

三、Client

Client工程主要的是Code,负责游戏的逻辑。

下面是Client的Project截图(注:StreamingAssets下的是当前运行平台AssetBundle快捷方式

image

四、资源更新

      由于移动平台上不能更新脚本,也就Prefab上绑定的脚本是不会被执行的。但是如果本地工程有同样的脚本,那么Unity会自动将这个脚本绑定在下载的Prefab上,并且他们执行的非常好。

如果本地工程中没有Prefab上的脚本,那么这个脚本是永远不会执行的。

      比如:Box1.Prefab和Coin1.Prefab同样引用CBonesObject.cs,但是某些Public的变量值不一样,打包Assetbundle也是没有问题的,一样可以识别的很好。

image

 

Art工程里Prefab上绑定了脚本CBonesObject.cs

image

 在Client工程同样有CBonesObject.cs,CBonesManager.cs 脚本

image

 

这样当下载完了Box1的Assetbundle,它上面绑定的脚本在Client存在,这个脚本就一样可以正常执行了(包括IOS平台也能正常执行)


本文转自赵青青博客园博客,原文链接:http://www.cnblogs.com/zhaoqingqing/p/3775105.html,如需转载请自行联系原作者

相关文章
|
1月前
|
开发框架 前端开发 算法
【Qt App 编译 】Qt Cmake 资源文件的加载:如何使用 CMakeLists.txt 文件和资源文件
【Qt App 编译 】Qt Cmake 资源文件的加载:如何使用 CMakeLists.txt 文件和资源文件
26 0
|
4月前
|
缓存 API 图形学
【Unity 3D】AssetBundle打包、上传、加载、卸载详解及演示(附源码)
【Unity 3D】AssetBundle打包、上传、加载、卸载详解及演示(附源码)
77 0
|
9月前
UE打包时候生成多个PAK
UE打包时候生成多个PAK
67 0
|
前端开发 JavaScript PHP
Yii2 使用AssetBundle中的$sourcePath对资源文件进引入和调用
Yii2 使用AssetBundle中的$sourcePath对资源文件进引入和调用
211 0
|
JSON JavaScript 前端开发
Rollup.js打包代码
Rollup.js打包代码
|
存储 缓存 API
5.0版本之后的AssetBundle资源的打包和解析加载(Unity3D)
这几天在研究AssetBundle资源打包盒解析加载,也踩过很多坑,参考过很多人的文章 发现很多人关于AssetBundle的文章不是API过时了不能用,就是有点乱 也不是有点乱,就是摸不着头脑,让人不能快速的get到这个东西如何使用 所以我特意在踩过坑之后把我这个学到的经验分享给大家。
|
图形学 UED
Unity打包/读取AssetBundle资源全教程
Unity 资源AssetBundle打包 本文提供全流程,中文翻译。 Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 —— 高分辨率用户请根据需求调整网页缩放比例) Chi...
2138 0
|
存储 缓存 API
AssetBundle使用模式
翻译自官网文档:https://unity3d.com/cn/learn/tutorials/topics/best-practices/assetbundle-usage-patterns?playlist=30089 管理加载的资产 在内存敏感的环境中仔细控制加载的对象的大小和数量非常重要。
1423 0
|
图形学 Android开发 iOS开发