解决打包地图时,引擎资源没法加入的问题

在看人宅的热更新视频教程时,提到了引擎资源没法打包的问题。比如,下图中打包www文件夹中的MyWWW地图,
在这里插入图片描述
其中的资源是box文件夹里的,
在这里插入图片描述
而floor是引擎资源里的,这样,打包地图时,就会漏下去,
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
那么只能把box.pak也放到里面
在这里插入图片描述
在这里插入图片描述
之所以比编辑器中的东西多两个,是因为在蓝图中,读取了关卡关联的资源mesh和actor,生成在场景中了,(刚才漏下去时的两个模型,也是蓝图生成的。)
在这里插入图片描述
由此可见,确实是把这两个关联的资源打进了关卡包里。为了测试是否如此,把蓝图断掉。重新打基础包。应该和编辑器中关卡出现的一致。
在这里插入图片描述
ok,果然和编辑器中的关卡一致了。

我们再深入考虑一下,如果box,pak很大,只有floor没有和关卡关联上,而TestActor和Wall_Door_400x300这两个资源是打进去了,那么可否只把floor这种引擎相关的资源放到另外一个文件夹MyEngineResource里,单独打包呢?
在这里插入图片描述
在这里插入图片描述
将mywww地图的地板用MyEngineresource里的。
在这里插入图片描述
OK,果然地板出现了。

那么问题来了,为什么关卡没有还原呢?因为关卡里面的东西好比指针,指向了各个文件夹。比如/game/box/和/game/MyEngineresource.它们组合成了关卡。
那么,关卡包里有没有关联后的资源,有的。从上面可以看到,如果调用这些关联后的资源也是可以的,再用蓝图或者c++进行逻辑调用就行了。即,士兵都在关卡包里,但是,关卡是排名布阵后的士兵。
再深入去看看,在没有box.pak的情况下,加上蓝图,也可以照样还原回关卡。
在这里插入图片描述
现在重新烘培,打基础包。
现在pak包里仍然只有三个
在这里插入图片描述
看看,蓝图起作用没有
在这里插入图片描述
ok,很明显,没有box.pak,也能生成里面的资源,说明,box.pak的资源确实已经关联到关卡包里了。

总结下
1,除了引擎关联的资源外,均可通过关联关卡相关的资源,给关卡打包。
2,引擎关联的资源,可以单独当成资源包,供关卡包使用
3,关卡里的资源好比营房里的士兵,可以通过蓝图和c++排兵布阵形成关卡。
4,如果不更改蓝图和c++,可以根据编辑器的相对位置,根据关卡引用的资源所在的文件夹,来形成关卡。这些资源文件夹通过关卡中排兵布阵。比如,关卡引用了文件夹a,b,c,那么把a.pak,b.pak和c.pak放到content文件夹里即可。
5,为什么关卡指向编辑器里的各个资源文件夹里的资源,而不是关卡包关联的资源?这是个因果关系,没有编辑器各个资源文件夹,就没有关卡包里的资源。编辑器各个资源文件夹类似于指针,关卡指向的是指针,而不是拷贝。

就这样吧。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值