俯视角游戏的进图读取问题
- Hidewhite近段时间玩的两款游戏有感,永恒之柱2和极乐迪斯科都属于俯视角游戏,而在地图中进出房间都要读取,而且时间不短。本来我笔记本老旧了倒也不奇怪,但看上去好像其他人也是有类似问题的,只不过可能时间上更短些。
技术方面个人不懂,凭感觉说现在的开放世界在进出这种小房间可以完全不读图,保障游玩的流畅性,相对来说3A游戏的美术体量总该更大才是。虽然这两个俯视角游戏的美术显然也是挺花功夫的,但想来也不应该更超出。那到底是为什么类似游戏在一张地图里进出房间也要搞读取?过去这种分割式地图不同地区间要载入读取很正常,或者有某个大空间场景也正常,但这两个游戏的很多读取对象都只能算是小房间吧,但也要读图就觉得奇怪。 - nsevit迪斯科那个读盘已经不是上个世纪的水平能形容的了,比如找K小姐说次话:进旅馆读一次、上二楼读一次、二楼上三楼读一次、出阳台再读一次,走路时间还没有读盘时间长
- Chia挺好的ssd也要读十几秒,大概是
毛味优化吧 - h1r0因为室内大小和大场景中建筑尺寸不匹配吧
- FMIC迪斯科是独立游戏啦,没有那么多优化
- Kaltsit可能是背景的油画风格使改变场景时视角和光照的衔接很难做。比如迪斯科小姐房间的二楼那道开着但进出要加载的门,它表现出从房间里向外看是一片漆黑的,而在天台上却能清晰的看到房间内。如果这里做成连续的,就会出现俯视角很难处理的亮度变化。不过读取时间确实过长了,这种程度的场景加载屏幕黑一下就结束比较合理,不应该让玩家盯着三个点四五秒。
- Lunamos无缝分两种,一种是场景还是分割的,只不过距离出口较近的时候提前加载场景让玩家感受不出读取时间。另一种整个场景是开放世界,主要区别就是游戏世界是不是整体设计的,默认说的是前者吧。
这俩游戏都是Unity做的,LoadSceneMode倒是有Single和Additive,后者支持同时加载多个Scene,在地图边缘的时候运行即可提前加载。
考虑到游戏设计单元大小以及不同机能决定了互相有影响的GameObjects上限,因此单个Scene不能太大,相对应的所以读取就会相对频繁。
而如果用后台读取的方式隐藏加载时间会带来性能帧数问题(地图边缘拖慢),尤其负载不均衡的情况下更是酸爽,至少考虑一下你的游戏想不想上Switch吧。对关卡设计也有很大的制约(比如不能在场景里安排距离太近的出入口等等)
另外3A游戏看似视觉丰富,但东西可能不多。一个Terrain几个人物一堆贴图,大量的事交给GPU干就好了。独立游戏因为设计思路灵活,反而可能带来许多意想不到的CPU负载。
真无缝就要整个改变设计思路了。比如尤其是很多游戏设计之初就是关卡为单位。而一旦关卡间用无缝耦合起来会出现大量Bug。对于这种CRPG游戏想展现的核心体验,去花时间和力气一遍遍优化这些东西有些得不偿失,有时间还不如给游戏多加点内容。当然如果起初就把Seamless当成目标还是能做到的,牺牲一些其他东西。 - Hidewhite有看没懂
大概意思是技术问题?
极乐迪斯科不提,他的各种变式如何设计没看懂。但对于永恒之柱2来说,他的模式应该算是比较常规了的,应该不至于要算设计思路灵活那类,这种类型设计应该也算比较传统了的,老游戏里也算一抓一大把。黑曜石怎么说也算是老牌工作室了,不可能在技术上面有大问题。同地图模式的类型里老游戏载入效果比他们强的很多,这个问题是随着现代美术资源更丰富而使这种技术方式变得臃肿困难了,还是纯粹是黑曜石把优化放生的恶果? - Lunamos一言以蔽之的话当然是技术问题,优化这个也是时间人力,不如花时间多写点剧本。
没做预加载的大部分就是单纯的没做,除了省时间就是单纯没想过。另一部分是考虑性能拖慢问题。可能实现的时候低效的方法用得太多,场景一大就会拖慢,只能用小场景并避免预加载。
另外这也是Unity之类通用引擎的一个弊端。它考虑的设计场景是尽量通用和易用,很多东西的实现方法效率不高,尤其经验少的话也容易把场景的程序逻辑做得臃肿不堪。同样规模的东西放一个从图形API搭起来的C++引擎上肯定快很多。 - Ubique兄弟你可能对黑石头有什么误解,这家工作室的技术可能是非独立工作室里烂得出名的了,看看新维加斯,你能想象这游戏和rdr1是同年发售的吗?
玩TOW的时候我下完游戏第一反应是去n网上看有没有非官方补丁,结果一周目居然没有闪退等恶性bug(当然物品bug和射击判定bug依然是那个味儿)我都不敢相信。 - OldGlory那个阳台和大地图是做在一起的,主角如果是蟹人就不用读盘了
- dumplingproUnity默认就这样,每个房间都是不同场景,切换场景需要加载。
通常解决方法是预加载,还有一个古老的方法,是每个房间都是在同一个地图上,进房间只不过传送过去而已。
开发者懒得干就没有了,尤其PC普及了SSD,作者就更懒了。 - jimclack我还嫌弃动物之森加载时间长呢,按道理来说自家奥德赛和塞尔达那么大地图都做到高速读取了。可能你觉得一些游戏的成本是一块和十块的区别,实际上是一块和一百块吧
- q8f13这个跟美术风格,精致程度,场景规模大小,物件数量等都没有直接关系。完全取决于资源在场景中的组织方式和地编是否严格执行
同样是unity做的,inside就是全流程无缝加载而且不掉帧或卡顿,场景被分割成了几千个,同时优化了底层io
— from Google Pixel 3, Android 10 ofS1 Next Goosev2.2.2.1 - eno_emos天外世界发售的时候小道消息说是请了巨硬的人来帮忙做优化和修bug,所以成品出来效果特别好