找回密码
 立即注册
搜索
查看: 3383|回复: 52

[PC] 联动星际单核,RTS的瓶颈在软硬件技术,最难开发的游戏类型?

[复制链接]
     
发表于 2021-3-12 18:05 | 显示全部楼层 |阅读模式
本帖最后由 seedees3 于 2021-3-12 18:25 编辑

看了知乎上这两帖有感
RTS游戏是游戏前段技术的顶峰吗? (第二第三个回答)

大多数游戏做多核优化的难点是什么?

以前讨论RTS衰落缘由都在讲传统RTS不符合市场潮流等,但可能CPU单核性能挤牙膏也是一个重要原因,
RTS最吃单核性能,这导致RTS相比其他游戏而言,在设计核心玩法时被硬件性能限制得更多,同样依赖单核性能的MMORPG也和RTS几乎同时衰退,
两者都在玩法机制设计上无法展开手脚,机制一复杂开发难度就直线飙升,
祖传单核是无奈,RTS的游戏特点让多核优化几乎不可能(见第二个链接)
单核吃紧多核无用,或许这也是单位规模较小注重微操的暴雪系赢过大军团的红警系变成主流的原因之一

关于多核优化问题,引用第二个链接里的第二个回答
很难。
举个不是很恰当地例子吧,假如有1个小朋友来做5道题:
1+2=A
A+5=B
B+10=C
C+2=D
D-4=E
需要计算E是多少,那么,以下情况,哪个速度快?(假设每个小朋友计算速度一样快)
甲:1个小朋友按顺序做下来
乙:5个小朋友同时做,每个小朋友做一题

乙方案,在第一个小朋友做出来之前,第二个小朋友只能等着(因为他不知道A是多少),同理,其他小朋友也是如此,所以效率并没有明显的提高,所以这种情况下,很难优化。

这种情况就是大部分情况下逻辑线程的执行情况。
-----------分割线----------
假如是做这样的题:
1+2=A
3+5=B
8+10=C
18+2=D
20-4=E
很明显,5个小朋友同时做会比一个小朋友做的快的多,这样是可以优化的。

这种情况就是逻辑线程、IO、渲染UI、网络请求等可以异步的操作,大部分游戏/应用都会做这种优化。




关于RTS开发比其他类型难的地方,第一个链接第三个回答
作者:匿名用户
链接:https://www.zhihu.com/question/447757592/answer/1771970069
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

本人不算技术大佬,但跟技术相关的人接触过,总的来讲,顶峰这句话确实有点不准确,准确的说法因该是“一片绵延高耸的山脉”。
目前RTS游戏中对前端的需求其实并不一定是比任何类型都高,但是其整体的前端技术需求确实是最高的。举个生动的例子,做GAL这类游戏就是高考数学只扣90分,做FPS,MOBA这类游戏是高考数学只扣10分,而作RTS就是高考所有科目都只扣10分到20分。
RTS相比其他游戏难的地方我大概一一列举一下,不是很全,仅供参考
1.实体,单位相关处理
rts游戏的实体数量上就远超各种游戏,毕竟是战略游戏,没有哪个战略是从头到尾都只涉及一个单位的事,rts游戏的实体数量像war3这种偏向小规模作战的rts团战打起来也是至少20个实体与另一方20个实体相互的作用,而TA系rts,以及亿万僵尸之类的游戏,后期会有上百上千实体和单位的互动。如何处理怎么多单位,实体同时进行的动作,设计者对并发等问题的处理绝对需要达到很高的要求
而其他类型的游戏,比如RPG,最多玩家自己操控5~6个单位,对面有5~6个怪算顶天了,如果再增多,由于各单位间相互作用的东西需要考虑的东西太多,比如自己要操控10个单位,那为了保证这10个单位不同质化,必定就会有分工,有分工那关于这种分工的策略,也会使得游戏偏向“战略游戏”,而动作类基本上就是同一时间只操作一个单位,如果不是割草系的ACT,为了玩家应付得过来,最多打个1v6,算顶天了。比RTS实体多的也不是没有,比如各种多人网游,但网游的运算负担有服务器来分担一部分,因此也不会对多实体情形提出太高的要求
2.实体,单位类型处理
RTS的实体不仅多,实体类型也多,这一方面导致设计开始时难度增大,很多实体的设计工作没有迁移性,你不能设计好一个实体,下一个实体就拿上一个改改数据就行,比如RTS游戏的空军和陆军,完全时两种不同的设计,空军的逻辑不能套到陆军上,不然陆军就不受地形影响,或者为了让陆军受地形影响,你要再额外编写一些判别逻辑来实现。更不要说RTS里面巨型实体,可以碾压小单位的巨型单位,可以容纳其他单位的实体,潜水单位这些实现的逻辑就更复杂了。
而其他游戏也不是没有这种陆军和空军的说法,比如各种游戏里的龙等怪物,但其实这些怪物中很多都是把普通怪物碰撞箱和贴图y轴调高了而已,他们和陆地上的怪物一样碰到楼梯依旧是走楼梯上去,碰墙依旧爬不上去
3.寻路和碰撞等
题主提到这个所以也更着附和一下,其实RTS的寻路确实比其他游戏复杂,毕竟一个操作的单位寻路你是不需要考虑什么优先级的,只有你一个人在动,即便是游戏里其他实体摆在你面前,为了不影响你自身的操作体验,要么你可以直接穿模过去,要么你可以无条件的挤过去,但RTS不一样了就如第一个问题说所,你有很多单位需要操作,谁先走谁后走是要认真考虑的,不能后勤医护人员在前线,冲锋部队在后方,而且撤退的时候也要智能的反过来,不能医护人员殿后,主力部队先撤退。但目前多实体寻路算法其实不是特别差了,因此这方面的问题主要还是增加RTS游戏制作和设计时的繁琐性,谈不上很难或者很有技术水平。
4.加载问题
RTS游戏和普通游戏有一个区别就是其视角大多数时候都是上帝模式,或者至少是伪上帝模式,这种情况下就涉及到加载的问题了,如FPS,RPG等游戏其地图内容的加载因为都是更着操作对象走的,因此只需要加载对象视野内的东西就可以了,视野外的内容要没不加载,要么可以加载个低分辨率的贴图糊弄,甚至极端点,视野内的中远景都靠低分辨率糊弄,你人在新手村的时候就没必要把魔王城的内容全部加载出来,但RTS就不一样了,你在魔王城前线作战,突然有什么需求,很可能就要切回新手村做后勤调整,那你肯定不能说,让你加载个几秒,卡顿个几秒,再开始后勤调整。所以RTS基本上都是是全图保持加载或者视野变化的一瞬间做到可以快速的加载一部分内容,这就极大的增加的RTS游戏的运行难度,怎么做到同时加载大量内容不卡顿几乎是RTS游戏无法避免的一个问题。
当然非RTS游戏的加载问题其实也不简单,如何实现该加载的东西加载,别进BOSS房了,boss却没出现等也是技术活,总体上来讲和RTS的加载问题不是一个方向,但难度确实稍低一点
5.画面呈现
RTS由于大多采用上帝视角,因此其对画面的要求上,质量其实没有部分第一人称游戏那么高,但是主要的难点还是和第一个问题类似,出在数量上,RTS这种多单位互动的游戏很可能地图各个地方都存在交战,如何在这些战场上呈现出完整吸引人的战场画面,让人实实在在的感觉到是RTS游戏,而不是限定皮肤的多人vrchat,那就需要在战场各个画面细节上下功夫,这一方面一方面增加的制作的繁琐性,同时做出来如何更简洁高效的呈现也是个问题,比如攻击同一个单位的多个爆炸的光效是傻不拉几的叠在一起占用内存,还是合并成另一个新的光效,合并成的新光效如何设计和表现等等,都因为需要考虑到RTS多单位互动的特性而需要额外的下心思。
6.测试
RTS游戏另一个比较麻烦的地方就是反馈的不及时,战略一词在现代汉语中的一个解释就是“长远的规划”,所以只要是即时战略,反馈就不可能像动作游戏一样,打一拳砍一刀就出现反馈,很多战略布置需要到相当后期的时候才能反馈出来。
这一点对于游戏的测试就额外增加的很多的时间成本,动作游戏比如给人物设计一个招式,那只需要进入游戏用一下这个招式基本上就明白这个招式设计得合不合理,有没有BUG了,而RTS游戏比如设计一个兵种,它存在一个BUG,这个BUG会是因为建造一该单位的同时建造另一个单位时会出现,那么你只把这个单位调出来测试一下肯定是看不出问题得,你得把这个单位从游戏开始,到使用他和各种机制,实体作用的过程都实验一遍你才知道是不是有BUG,这就极大的增加游戏测试的时间需求,如何大批量工业化的完成多个实体,和战略机制间相互作用的测试,或者如何机制设计简洁,但能保证简洁的机制间存在多维度的相互作用,设计出像围棋那样复杂策略空间的游戏给玩家玩,这些问题都会深刻的影响到RTS游戏的设计效率。
7.实体,单位,指挥系统的AI
这一部分其实跟寻路上有点重合,不过抛开寻路等问题,光指挥系统的AI就够所有RTS游戏开发者忙上个小半年了,RTS游戏的AI设计有多难,我觉得这事Deepmind以及中科院自动化所做游戏multi-agents的人应该比我更有发言权。RTS游戏里的单位指令要处理好真的不容易,涉及的反馈实在太多太杂,不像其他游戏简单编写个拟人脚本就完事,而且即便编写脚本就行,考虑到RTS战略的长远考虑,不同游戏时间段所需要的脚本还不同,这样让RTS游戏AI脚本的编写不是个技术活但也变成了一个需要靠大量时间来完成的苦活。

以上内容是和之前一些做底层前端的朋友交流沟通所得,由于时间久远一些内容也记不太清,部分内容也可能有些过时了,但大体上的来讲,RTS游戏其实主要还是战略这个概念本身包含“全局”“长远”这两个要素,因此在时间和数量上的量变带来了质变,使得这个游戏的设计难度如滚雪球一般在各个方面都变得尤为困难。
其他游戏虽在部分方面有强于RTS的技术需求,但总体技术需求也难以和RTS持平,因此我个人觉得RTS应该算是目前游戏软件方面前端技术一座平均海拔高度最高的山脉









回复

使用道具 举报

头像被屏蔽
     
发表于 2021-3-12 18:08 来自手机 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

发表于 2021-3-12 18:26 来自手机 | 显示全部楼层
业界关注点不在这而已,真要优化没有哪个问题真的不可解

提到deep mind/multi agent就更奇怪了,这个些跟游戏AI半毛钱关系都没

— from samsung SM-G981U1, Android 11 of S1 Next Goose v2.4.4.1
回复

使用道具 举报

     
发表于 2021-3-12 18:33 来自手机 | 显示全部楼层
受众少市场小就撑不起大投入的新作,没有大型新作也就吸引不到新的受众。你出去骗投资说你做rts人家只给你300万,你说你要做个服务型pvp游戏别人甩手就是3000万。做游戏可能是为了梦想,投资人还是主要为了挣钱。
回复

使用道具 举报

     
发表于 2021-3-12 18:36 | 显示全部楼层
C男 发表于 2021-3-12 18:08
有哪些rts是有大场面战斗,操作不复杂,不需要造农民采集资源呢?

全战
回复

使用道具 举报

     
发表于 2021-3-12 18:44 | 显示全部楼层
本帖最后由 Tring 于 2021-3-12 18:45 编辑

然而RTS的瓶颈是设计不出能吸引现代玩家的玩点了,并不是优化。

优化再好,把一队20个单位200人口,变成一队2K个单位20K人口,就能重振RTS荣光?

在我看来,RTS差的就是又一次类似WAR3引入英雄概念的玩法革命。
回复

使用道具 举报

     
发表于 2021-3-12 18:51 | 显示全部楼层
最后那个匿名用户真的做过rts吗?或者说写过别的游戏吗?这里面很多点怎么听着这么扯淡...

—— 来自 S1Fun
回复

使用道具 举报

     
发表于 2021-3-12 18:54 来自手机 | 显示全部楼层
为什么RTS会限定单核?以我编程的经验来说,RTS几乎是最适合多核的游戏类型了。最简单的,顶楼说的寻路、AI算法,就是可以不同单位分配到不同核心上的。
回复

使用道具 举报

头像被屏蔽
     
发表于 2021-3-12 18:58 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

     
发表于 2021-3-12 19:04 来自手机 | 显示全部楼层
戴森球计划的那个显卡承担部分CPU功能的技术,能给rts游戏用么
回复

使用道具 举报

发表于 2021-3-12 19:13 | 显示全部楼层
C男 发表于 2021-3-12 18:08
有哪些rts是有大场面战斗,操作不复杂,不需要造农民采集资源呢?

极点灰烬
回复

使用道具 举报

     
发表于 2021-3-12 19:42 | 显示全部楼层
GuardHei 发表于 2021-3-12 18:51
最后那个匿名用户真的做过rts吗?或者说写过别的游戏吗?这里面很多点怎么听着这么扯淡...

—— 来 ...

人家不是自己说了,就是
跟技术相关的人接触过

的程度。
回复

使用道具 举报

     
发表于 2021-3-12 19:43 来自手机 | 显示全部楼层
C男 发表于 2021-3-12 18:08
有哪些rts是有大场面战斗,操作不复杂,不需要造农民采集资源呢?

英雄连2,今年甚至出了64位操作系统补丁
回复

使用道具 举报

     
发表于 2021-3-12 19:51 | 显示全部楼层
不能后勤医护人员在前线,冲锋部队在后方,而且撤退的时候也要智能的反过来,不能医护人员殿后,主力部队先撤退


印象中打星际1的时候跟这个说法完全是反的,护士就是要冲在前面挡叉叉挡狗让机枪兵在后面输出,撤退时同理
回复

使用道具 举报

头像被屏蔽
发表于 2021-3-12 19:57 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

头像被屏蔽
     
发表于 2021-3-12 20:01 来自手机 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

头像被屏蔽
     
发表于 2021-3-15 15:23 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

头像被屏蔽
     
发表于 2021-3-15 15:27 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

     
发表于 2021-3-15 15:29 | 显示全部楼层
本帖最后由 dumplingpro 于 2021-3-15 15:31 编辑
Tring 发表于 2021-3-12 18:44
然而RTS的瓶颈是设计不出能吸引现代玩家的玩点了,并不是优化。

优化再好,把一队20个单位200人口,变成一 ...

有,但是还要慢慢试错。

帝国3的卡牌,CNC4的MOBA式RTS,英雄连的……不知道怎么说,百万僵尸的塔防式。还有全战、哥特舰队这样舍弃后勤的RTT。

一个个游戏接连试错,就看谁能最终吃鸡了。
回复

使用道具 举报

头像被屏蔽
     
发表于 2021-3-15 15:35 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

     
发表于 2021-3-15 15:36 | 显示全部楼层
C男 发表于 2021-3-15 15:23
?我以前一直以为全战是回合制游戏

内政外交放在大地图回合制, 进战斗即时制兵团作战, 战斗就是只管干就完了
回复

使用道具 举报

头像被屏蔽
     
发表于 2021-3-15 15:41 来自手机 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

     
发表于 2021-3-15 15:42 | 显示全部楼层
C男 发表于 2021-3-15 15:41
全战系列比如全战三国,中古战锤全战都是如此吗?

20年来所有作品都是如此
回复

使用道具 举报

     
发表于 2021-3-15 15:42 | 显示全部楼层
nohope 发表于 2021-3-12 19:51
印象中打星际1的时候跟这个说法完全是反的,护士就是要冲在前面挡叉叉挡狗让机枪兵在后面输出,撤退时同 ...

护士比马林多1防  肯定顶前面  
回复

使用道具 举报

     
发表于 2021-3-15 15:42 | 显示全部楼层
C男 发表于 2021-3-15 15:23
?我以前一直以为全战是回合制游戏

大地图策略是回合制,小地图战术是即时阵型兵牌RTT
回复

使用道具 举报

     
发表于 2021-3-15 15:52 | 显示全部楼层
dumplingpro 发表于 2021-3-15 15:29
有,但是还要慢慢试错。

帝国3的卡牌,CNC4的MOBA式RTS,英雄连的……不知道怎么说,百万僵尸的塔防式。 ...

英雄连可不可以叫电影表现化?有点跟着使命召唤风格走的感觉
回复

使用道具 举报

头像被屏蔽
     
发表于 2021-3-15 15:58 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

     
发表于 2021-3-15 16:03 | 显示全部楼层
科本学士 发表于 2021-3-15 15:52
英雄连可不可以叫电影表现化?有点跟着使命召唤风格走的感觉

独树一帜把,单位可升级、反复撤退有点英雄化的影子,机枪压制步兵,掩体之类的玩法也很有特色,不知道怎么形容。
回复

使用道具 举报

     
发表于 2021-3-15 16:21 来自手机 | 显示全部楼层
本帖最后由 cmyk1234 于 2021-3-15 16:23 编辑
dumplingpro 发表于 2021-3-15 15:29
有,但是还要慢慢试错。

帝国3的卡牌,CNC4的MOBA式RTS,英雄连的……不知道怎么说,百万僵尸的塔防式。 ...

2011~2013年有一款游戏《End of Nations》开发中止取消发售,这款游戏的即时战略机制结合了全面战争和英雄连。玩家层分为三个种族,战略层是数十人在即时制全战地图挑选遭遇战地图,战术层是在最大4v4的英雄连中获得小队胜利。

中止开发的原因很现实,发行商(金主)想要遭遇战尺度支持60人,远远超出最大4v4的负荷。



回复

使用道具 举报

     
发表于 2021-3-15 16:23 | 显示全部楼层
Dnokey 发表于 2021-03-15 15:58:36
试过两次罗马2的教学战役,看起来气势汹汹的双方,我点一下他们就在那自己打,我就坐着等他们打完,最后 ...
建议b站搜一下“礼赞 罗马2 对战”这仨关键词,全战操作起来还是挺热血的。

  -- 来自 有消息提醒的 Stage1官方 Android客户端
回复

使用道具 举报

头像被屏蔽
发表于 2021-3-15 17:11 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

     
发表于 2021-3-15 17:15 来自手机 | 显示全部楼层
C男 发表于 2021-3-12 18:08
有哪些rts是有大场面战斗,操作不复杂,不需要造农民采集资源呢?

帝国2决定版 12家 500人口上限 应该是目前rts单位数量的天花板了
回复

使用道具 举报

头像被屏蔽
     
发表于 2021-3-15 17:20 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

     
发表于 2021-3-15 17:27 | 显示全部楼层
C男 发表于 2021-3-15 17:20
500人口上限,代表单位数量吗?星际争霸的话很多单位都是占几个人口的

帝国造个大象也是1人口
回复

使用道具 举报

     
发表于 2021-3-15 17:42 | 显示全部楼层
提起帝国时代2决定版 这游戏AI发疯起来开满人口3700x都卡
回复

使用道具 举报

头像被屏蔽
     
发表于 2021-3-15 17:56 来自手机 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

     
发表于 2021-3-15 19:06 | 显示全部楼层
nodkane 发表于 2021-3-15 17:42
提起帝国时代2决定版 这游戏AI发疯起来开满人口3700x都卡

应该是没有那个cpu能做到完全不卡吧
回复

使用道具 举报

     
发表于 2021-3-15 21:44 | 显示全部楼层
ChrisSnake 发表于 2021-3-15 17:15
帝国2决定版 12家 500人口上限 应该是目前rts单位数量的天花板了

帝国分配农民和资源转化是核心机制啊
要是玩远程族 法师族操作也少不了
回复

使用道具 举报

     
发表于 2021-3-15 23:34 | 显示全部楼层
本帖最后由 妹控使徒 于 2021-3-16 04:04 编辑

传统RTS是确实吃资源的  做的越好越吃
98年的横扫千军 08年的最高指挥官   有比较拟真的弹道模拟/行动物理效果等/寻路计算等   都是拿给10年后配置跑刚够用的水准

不过硬件需求感觉最高指挥官那样差不多到上限了   顶多1W的单位再配合各种物理计算基本够了 再多人脑也接受不过来  也操作不过来
剩下的就是取舍    哪些需要做的复杂丰富化  哪些需要做的简单快餐化   至少传统RTS那种一局几个小时的节奏是无法吸引主流轻度玩家的

目前感觉RTS值得保留的老趣味点  一个是爬科技  不是加数值而是会解锁带来质变那种  比如SC的坦克变形和小狗狂暴   SC_FA则有个MOD可以让所有单位随着战斗经验升级解锁额外武装   这种养成感其他游戏难取代
其次是超级单位     最知名的是TA/SCFA的蜘蛛机器人  SCFA那个环境其实不上最高的试验型单位  造出战列舰看着那超绝火炮射程/威力以及多复合功能都足够让人爽了           其次是全战战锤的巨兽      如果能操纵这些单位在不破坏平衡前提下尽量无双   那么成就感是绝伦的
回复

使用道具 举报

     
 楼主| 发表于 2021-3-16 02:32 来自手机 | 显示全部楼层
妹控使徒 发表于 2021-3-15 23:34
传统RTS是确实吃资源的  做的越好越吃
98年的横扫千军 08年的最高指挥官   有比较拟真的弹道模拟/行动物理 ...

等zen4或者zen5普及后可能会有人口多系统机制又复杂的新rts诞生了,现在人口一多机制和物理引擎就简化,英雄连之类的够复杂但人口太少了
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|上海互联网违法和不良信息举报中心|网上有害信息举报专区|962110 反电信诈骗|举报电话 021-62035905|Stage1st ( 沪ICP备13020230号-1|沪公网安备 31010702007642号 )

GMT+8, 2024-9-25 23:24 , Processed in 0.156668 second(s), 5 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表