level 1
一直听人说星空加载黑屏,我就想想个方案一下。具体来说,我做一个空的地图,只有大致的地形,山阿水阿,和简化的森林,远影的小镇。如果玩家角色是传送到某地点:加载该地点的详细模型和npc 等,加载完玩家角色坐标移动到该地点,同时反加载移动前的地点模型,因为加载肯定需时,一定需要一个过渡加载画面(黑屏)。但如果玩家角色是移动接近某地点,则根据距离后台动态加载/反加载模型,后台加载肯会吃掉cpu功效,我需要反复测试加载多少模型和距离,确保不会影响当前玩家坐标地点的针数。这样的想法有现成的模板或库可以用吗?
2024年10月20日 06点10分
1
level 8
不是这样的,不会做空地图,容易穿帮,大世界资源是分多级lod的,传送到某地点必须要有一个中间过程来掩饰加载,中间过程可以是动画,可以是一个空间,让玩家穿行才能看到目的地。加载资源一般会有一个独立线程去做不会阻塞主线程,场景资源会使用一些加速查询的数据结构去维护,加载顺序会优先加载玩家视野范围的,然后是周围的,卸载也是逐步卸载。因为是多线程,涉及线程调度还有同步,一般要做到底层,星空可能底层不好改吧,所以割了。
2024年10月20日 11点10分
2
如果配置特别垃圾,动画时间都不够用来掩饰加载,可能会加入临时加载过场来解决这类极端情况,或者糙一点直接阻塞主线程等待加载完毕,效果就是卡一下。
2024年10月20日 11点10分
level 1
那么具体来说,地图全部模型都用多级lod 加载吗?好像房子大厦山洞里面的桌子椅子也是lod来调控吗?我自己还没做过大型地图,只是想知道进出房子室内不做成独立场影可以吗?
2024年10月21日 04点10分
3