查看: 1131|回复: 1
打印 上一主题 下一主题

web大场景资源动态加载方案求助

[复制链接]

2508

主题

2

听众

3万

积分

资深设计师

Rank: 7Rank: 7Rank: 7

纳金币
32806
精华
12

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

跳转到指定楼层
楼主
发表于 2012-11-16 09:16:24 |只看该作者 |倒序浏览
为了解决web游戏场景动态加载的问题。将场景里的GameObject单独打包成资源包,然后生成自己的场景配置文件,在游戏运行时根据场景配置文件动态加载资源。

1.首先遍历游戏场景中的对象,为每个GameObject生成一个Prefab,加入PrefabList

2.然后将Prefablist里的对象打包:

    >打包时先将所有的贴图分离出作为共享资源,放入一个单独的TextureAsset.untiy3d;

    >然后每N个Prefab放入一个资源包,使用BuildPipeline.BuildAssetBundle(null, prefabs, path, BuildAssetBundleOptions.CollectDependencies | BuildAssetBundleOptions.CompleteAssets),打包;

3.在游戏运行时是用WWW下载资源包,然后加入场景中。



遇到的问题:

大部分场景对象可以正确的在游戏运行时,加载并显示。但是有很少的对象,找不到贴图,或者干脆GameObject无法创建,实例化时返回null。此时我将原始场景中,GameObject的名字改成其他名字(默认名字和资源名字相同),再次打包,然后加载,却全部显示正确。一直不清楚是什么原因,难道名字还和资源对应有关系吗?或是什么其他原因?

分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏0 支持支持0 反对反对0
回复

使用道具 举报

may    

8830

主题

81

听众

7万

积分

首席设计师

Rank: 8Rank: 8

纳金币
52344
精华
343

最佳新人 热心会员 灌水之王 活跃会员 突出贡献 荣誉管理 论坛元老

沙发
发表于 2012-11-30 03:45:10 |只看该作者
支持一下楼主
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

手机版|纳金网 ( 闽ICP备2021016425号-2/3

GMT+8, 2025-7-21 00:00 , Processed in 0.069157 second(s), 29 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部