您当前所在位置: > 爆料站 > 君子堂

TGDC丨维塔士13年老兵,畅谈“移植优化”方法论

时间:2020-12-10 14:25:02  来源:  作者:网络转载

好的开始是成功的一半

12月9日,维塔士上海工作室技术总监Andy Fong带来了以《在高寒处保持温暖 —— Switch游戏优化经验分享》为题的演讲。

近年来,PC、手机平台的各类大作陆续都开始通过移植等方式走向主机平台,NS正是其中大热。


在竞核此前活动“Roguelike浪潮下的先锋探险家们”当中,多方人士都曾表示,NS,尤其是国行NS的用户群体正呈现出越来越强的消费能力。

但在转战NS的过程中,挑战如影随形。无论是移植后的产品质量,还是移植过程的口径对接,都是厂商长久以来所面临的难题。

或许,大家能从今天Andy Fong的演讲中找到解决方案。

移植NS为何总是“吃力不讨好”

Andy Fong,2007年正式加入维塔士上海工作室,迄今为止已有超过13年的游戏开发经验,近年来曾参与《最终幻想12:黄道年代》《黑色洛城》《生化奇兵》《幽浮2》等大作。


可以说,这是一位在游戏产业“战功赫赫”的老兵。

在介绍游戏移植优化方案之前,Andy首先对任天堂在NS平台的一些开发理念进行了分析。

“我认为他的重点是在于功能创新。”Andy说,“这当中就包括把移动平台和主机合并到一个游戏机当中。实际上这更多的是为了方便玩家。”

功能创新在手柄设计方面也有体现。NS手柄加入了新的HD Rumble系统,在让手柄触感更加贴合、写实之外,还能通过红外线来检测玩家手部动作,丰富游玩乐趣。

当然,这种设计也是为了方便多人游戏。NS允许两名玩家操纵同一台游戏机的不同手柄同时游玩对战。除本地多人外,通过网络连线不同主机之间亦可以进行交互。

“实际上,NS并没有采用当前时代最尖端的硬件。”Andy说,“这就导致,如果将其他平台的高品质游戏移植过来,内存使用不得不有所降低。”


他表示,如果想在游戏性能方面保持30FPS,那么就必须在CPU或GPU上做出优化调整。而这种调整,往往要在产品预生产的阶段就做好打算。

然而这显然不会对所有人适用,尤其是那些在研发时,NS尚未问世的作品。“过去的一些客户,他们不允许掉帧、不允许画质下降。面对这样的要求,我们选择采用产品优化的方法进行移植改造。”Andy如是说道。

内存、CPU、GPU优化层层递进

Andy介绍说,内存优化、CPU优化、GPU优化是目前他们采用的部分优化策略。注意,后面两种优化方案,是在内存优化达到一定水平后才会考虑的。


“内存优化方面,就如刚刚所讲,移植作品,尤其是高画质大作,很容易触碰NS的内存上限。”Andy介绍说,“而一旦超过上限,游戏很容易会崩溃掉。”

接着Andy介绍了一些用于内存优化的工具,例如报告工具、屏幕统计工具等。

以屏幕统计工具为例,该软件其实就是通过低层内存的一个分配器,去采集实际上各个模块使用的内存,然后展示在屏幕上便于开发者观察。


诸如此类的内存分析工具所提供的参数,经过程序员的分析,将有效解决内存泄漏、冗余等问题,并帮助制定开发优化策略。

“因为其他平台普遍内存充足,就会有一些不必要的冗余资源,比如立体声的音频、渲染缓冲等等。”Andy表示,他们会尽量争取在不缩减游戏性的情况下,达到一个内存平衡。

剧情动画同样也会进行压缩。实际上很多引擎都支持动画压缩,缩减动画数据。

Andy还表示,他们曾遇到很多关卡内存使用过大的情况。一般来说,他们会选择“拆分”。即将大的关卡拆分成两、三个更小的关卡,大大节省内存。

做完如上的一系列优化后,游戏算是可以在NS上跑起来了,但帧数仍旧不能达标。“这时候就需要在CPU、GPU方面进行一些优化工作。”Andy如是说道。

Andy罗列了CPU各模块实际使用的时间,并表示很多第三方工具都可以做到这一点。事实上,NS平台本身也有提供,但受到NDA保护,只有开发者账号可以了解。

“很多人一说到CPU问题,首先想到的就是draw call。”Andy说,“这将导致渲染线程上的投入时间过长。”

Andy在现场传授了一个解决该问题的方法。此前他的团队曾负责一款开发世界游戏,draw call相当高,最终是通过用不同的渲染步骤去拆分任务,达到多线程渲染,大幅缩减了命令缓冲时间。


而在GPU方面,Andy同样分享了团队长久以来的优化心得。

“GPU性能一般会跟着色器的效率有关,也会跟每个渲染命令所填充的像素有关。”Andy表示,对于NS的主机模式,一般推荐用1080P,而掌机模式则推荐720P。

这种推荐方式也是考虑到GPU性能的综合选择,保证游戏不掉下30帧。

具体优化策略上,Andy团队一般首先考虑去除分支,但实际上这相当困难,因为没法判定升序的流向。

“我们采用的第一个方法是替换写法。”Andy介绍说,“就是使用特殊语句来替代分支语句。或是使用一种条件编译,把不同的分支代码组织成不同的着色器二进制文件。”

除此之外,图块缓冲也是不错的优化方法。具体来说就是把一些绘制的请求集中收集,再把渲染缓冲划分成许多图块,进行播放。

这样的好处是,它能够大大加快你的访问速度,尤其是在你有很多大面积粒子的情况下。有些时候,甚至能收获5ms的提升。

“最好的优化方案,永远是预先的优化策略。”Andy最后总结道。



来源:竞核
原文:https://mp.weixin.qq.com/s/efIhzGpnFxDa6uJEdG3y3A

资源转载网络,如有侵权联系删除。
相关下载

玩家评论

原神忘却之峡怎么进入-原神忘却之峡进入方法介绍_快吧手游

《原神》游戏中忘却之峡是一个刷突破材料的副本,相信还有很多小伙伴不是很清楚忘却之峡怎么进入,那么接下来小编为大家带来《原神》忘却之峡进入方法介绍,感兴趣的详情>>

阅读: 2
日期: 2020-12-10
qid在哪设置-qid设置方法_快吧手游

QQ中qid设置方法例如:在华为P40型号系统为EMUI10,QQ版本8.4.18中,QID的设置方法如下:首先打开QQ,然后点个人主页面左下角的设置界面。 进入设置界面后,点击账号管理。详情>>

阅读: 1
日期: 2020-12-10
天穗之咲稻姬怎么提高探索度 提高方法介绍

在游戏中玩家除了需要种田打怪之外还需要提升探索度,那么天穗之咲稻姬怎么提高探索度呢?还不知道的玩家快来看小编带来的提高方法介绍吧。 在游戏中玩家除了需要详情>>

阅读: 2
日期: 2020-12-09
萨勒芬妮B站“爆红”,背后是英雄联盟的音乐“变现”方法论_游戏

原标题:萨勒芬妮B站“爆红”,背后是英雄联盟的音乐“变现”方法论 作者/麋鹿 随着《英雄联盟》S10赛季最后一次版本更新的上线,众多玩家们也才发现,自详情>>

阅读: 1
日期: 2020-12-09
原神等量交换怎么出现-原神等量交换触发方法_快吧手游

原神等量交换怎么出现原神手游中,【等量交换】任务的触发方法为:完成每日委托“来自冬天的故事”后,前往蒙德城教堂与NPC维克多对话即可触发。触发任务后玩家需要详情>>

阅读: 2
日期: 2020-12-08
qqid怎么关闭-qqid关闭方法_快吧手游

qqid怎么关闭?这个qq新推出的id功能,很多用户尝鲜后都觉得不好用,所以想要关闭这个id功能,但是不知道怎么关闭,那么想知道的就和小编一起来看看吧!qqid怎么关闭1、目详情>>

阅读: 4
日期: 2020-12-07
原神飞行挑战活动第四关30000分方法介绍

  原神飞行挑战活动第四关怎么拿到30000分,有不少的玩家都想知道答案,那么接下来小编就为大家分享一下原神飞行挑战活动第四关30000分方法介绍,希望可以帮详情>>

阅读: 5
日期: 2020-12-07
途游捕鱼可以开挂的吗?途游捕鱼开挂方法介绍

  如果你喜欢玩捕鱼游戏的话那么一定会喜欢玩这款途游捕鱼,但是很多玩家在其中玩捕鱼游戏的时候都不知道途游捕鱼可以开挂的吗,那么game234小编来为你详情>>

阅读: 9
日期: 2020-12-06
原神辛焱怎么获得-原神辛焱获得方法_快吧手游

原神辛焱怎么获得在原神手游中,辛焱可以从活动祈愿“陵薮市朝”中抽取获得,祈愿时间为2020年12月1日18点至2020年12月22日14:59:59。当活动祈愿“陵薮市朝”结束详情>>

阅读: 1
日期: 2020-12-04
Windows10系统OneDrive关闭自启方法介绍

详情>>

阅读: 1
日期: 2020-12-04
原神800原石领取方法介绍

  原神800原石怎么领取,相信不少的玩家都有这样的疑问,那么接下来小编就为大家分享一下原神800原石领取方法介绍,希望可以帮到玩家,一起来看看吧! 原神800详情>>

阅读: 1
日期: 2020-12-03
ios14.3beta3更新了什么?ios14.3beta3更新内容及升级方法介绍

ios14.3beta3更新了什么?在今天12月3日苹果发布了iOS14.3的最新测试版beta3,很多用户比较关心的就是这次的测试版是否修复了绿屏问题以及一些BUG,下面小编就给大家带来信息的详情>>

阅读: 3
日期: 2020-12-03
《宝可梦剑盾》波克比如何进化 波克比进化方法

导 读 宝可梦剑盾游戏中玩家获得的波克比应该怎么进化呢?很多玩家不清楚波克比的进化方法,小编这里就给大家带来有关宝可梦剑盾波克比怎么进化的相关介绍,帮助大家了解。 宝可详情>>

阅读: 0
日期: 2020-12-03
《原神》珠钿舫怎么上二楼 珠钿舫上二楼方法分享

原神珠钿舫怎么去?当玩家在和平海对话的时候,会需要你前往珠钿舫,不过就目前而言对于前往这个地点的方法知道的人还是很少的,虽然告诉了详情>>

阅读: 0
日期: 2020-12-02
《原神》珠钿舫怎么去 去珠钿舫方法分享

原神在钟离传说任务当中,分为多个不同的步骤,每一步的要求是不一样的,其中有一个是需要去珠钿舫,这是一个比较特殊的特殊,只会在特定的位详情>>

阅读: 0
日期: 2020-12-02
《光遇》土之试炼怎么通关 土之试炼通关方法分享

光遇土之试炼怎么过?光遇的预言季活动里,我们可以完成水、土、风、火四个试炼玩法, 这四个玩法会按时间顺序开启。最近游戏新开启了土之试炼,这次的详情>>

阅读: 6
日期: 2020-12-01
windows10系统更换主题方法介绍

在w详情>>

阅读: 0
日期: 2020-12-01
战双帕弥什露娜信赖度如何提升-露娜信赖度提升方法

  本期小编为大家带来的是露娜作为战双战力天花板已加入卡池,相信不少玩家对露娜的背景颇感兴趣,但不知道战双帕弥什露详情>>

阅读: 1
日期: 2020-12-01
光遇心怎么获得-光遇心获取方法_快吧手游

光遇心获取方法在光遇手游中,玩家可以从好友处获得爱心,只要玩家和好友的好感度达到可以赠送爱心的等级,玩家每天可以给好友赠送1个爱心。只要玩家好友相当的多,也详情>>

阅读: 2
日期: 2020-11-30
《使命召唤手游》C币获取方法 C币如何赚

导 读 使命召唤手游C币是游戏中最值钱的货币了,可以用来购买商店中各类珍贵枪械、皮肤和道具。C币怎么赚?我们有哪些途径可以在游戏中获得C币呢?这就来了解下吧。 使命召唤手详情>>

阅读: 1
日期: 2020-11-30
指心捕鱼能赚钱吗?指心捕鱼游戏赚钱方法介绍

  这款指心捕鱼新版无限魂石是大家都非常喜欢玩的一种特色捕鱼游戏,而且咋这款游戏中大家能通过捕鱼赚红包,但是很多玩家却不知道指心捕鱼能赚钱吗,gam详情>>

阅读: 24
日期: 2020-11-29
天谕手游和NPC交恶方法介绍

天谕手游中怎么和NPC交恶?天谕手游中的NPC不仅有好感度还有厌恶度。而且这种厌恶还能影响后期的剧情发展。那么如何和NPC交恶呢?小编为大家整理了天谕手游和NPC交恶方法,赶紧来详情>>

阅读: 3
日期: 2020-11-28
《原神》翠玦坡靖世九柱如何开 翠玦坡靖世九柱打开方法

原神游戏中,翠玦坡靖世九柱的打开方法是:使用追叙之石嵌入靖世九柱后即可,追叙之石可详情>>

阅读: 0
日期: 2020-11-28
黎明觉醒兽骨获得方法一览

黎明觉醒兽骨怎么获得?黎明觉醒中兽骨可作为装备原材料使用,大多数小伙伴都是通过狩猎来获得兽骨的,但是兽骨可不止这一个获得方法,赶紧来了解一下吧! 黎明觉醒兽骨获得方法一览详情>>

阅读: 1
日期: 2020-11-28
黎明觉醒健康值恢复方法

黎明觉醒健康值怎么恢复?黎明觉醒中一个健康值,很多玩家不知道健康值有什么用,怎么恢复。今天小编就为大家带来黎明觉醒中恢复健康值的方法,赶紧来看看吧! 黎明觉醒健康值恢复方详情>>

阅读: 1
日期: 2020-11-28
dnf手游泰拉石武器在哪做dnf手游泰拉石武器获取方法

dnf手游泰拉石武器在哪做,在地下城与勇士中泰拉石武器是一款非常经典又古老的武器,许多老玩家珍藏它作为收藏品,时不时拿出来用一用,羡煞旁人。而在最新推出的地下城与勇士手游详情>>

阅读: 2
日期: 2020-11-27
光遇预言季季卡怎么赠送  预言季季卡赠送方法说明

光遇预言季季卡怎么赠送?光遇游戏中迎来全新的预言季,很多小伙伴都已经参与了预言季季卡的拼卡。但是却不知道怎么将赠送出去,下详情>>

阅读: 7
日期: 2020-11-27
原神盐中迹进入方法分享

原神的盐中迹里有三个宝箱,那么玩家该如何进入盐中迹呢?下面就给大家带来原神盐中迹进入方法分享,以供玩家参考。 雪山入口已经被钟乳石堵了 重点来了 重点来了详情>>

阅读: 3
日期: 2020-11-27
光遇预言季季卡怎么送-光遇预言季季卡赠送方法_快吧手游

光遇预言季季卡怎么送?光遇预言季季卡赠送方法。光遇11月26日正式开启预言季,下面就随着小编一起来看看预言季季卡怎么送。光遇预言季季卡怎么送副卡赠送的对象,需详情>>

阅读: 1
日期: 2020-11-26
《LOL》S11剑姬怎么出装 S11剑姬出装方法分享

导 读 :多兰之刃、1红 :贪欲九头蛇、三相之力、铁板靴、死亡之舞、斯特拉克的挑战护手和守护天使 剑姬的神话装备首推三相之力,可为剑姬提供攻击力、生命值、攻击速度和伤害,与详情>>

阅读: 2
日期: 2020-11-26
dnf手游无限负重方法dnf手游无限卡负重方法图文介绍

dnf手游无限负重方法,在dnf手游里很多玩家在主城行商时需要用到无限负重的方法,来让自己能携带特别多的各色高级装备或者炉岩碳、药材等物资,以方便换取大量的金钱或者点券。但详情>>

阅读: 2
日期: 2020-11-25
影之刃3降魔铃铛怎么获得 如何拥有方法介绍

  影之刃3如何才可以得到这个降魔铃铛呢?许多玩家想要解锁这个虚空裂缝的赤红的嗔怒之境,那么就必须要有这个降魔铃铛才行,但是却不知道究竟怎么才可以解详情>>

阅读: 0
日期: 2020-11-25
《LOL》S11盲僧怎么出装 S11盲僧出装方法分享

导 读 在游戏《英雄联盟》中,英雄盲僧李青的定位为战士型打野英雄。由于盲僧的主要能力在于物理伤害技能,因此装备以物理装备为主。 装备推荐: 在出门时选择灰烬小刀,在游戏进详情>>

阅读: 1
日期: 2020-11-25
windows7系统u盘安装方法介绍

详情>>

阅读: 1
日期: 2020-11-25
天穗之咲稻姬麻获取方法 麻在哪刷

天穗之咲稻姬麻怎么获得?不少玩家对麻这素材的需求量是比较高的,下面带来麻的获取方法,供各位玩家们参考。 麻获取方法 在游戏的一本洞地图中可以获取到麻,有采集点。详情>>

阅读: 25
日期: 2020-11-25
《LOL》日炎圣盾怎么合成 日炎圣盾合成方法分享

导 读 LOL日炎圣盾合成办法是斑比的熔渣加军团圣盾加700金币,献祭对周围的敌方单位造成魔法伤害,伤害值为每秒20到40(在1到18级时)(增加1%额外生命值)(对小兵造成50%额外伤害详情>>

阅读: 3
日期: 2020-11-24
《LOL》S11潘森怎么出装 S11潘森出装方法分享

在游戏《英雄联盟》中,英雄不屈之枪潘森的定位为刺客型辅助英雄。由于潘森的主要能详情>>

阅读: 1
日期: 2020-11-24
《LOL》S11波比怎么出装 S11波比出装方法分享

在游戏《英雄联盟》中,英雄圣锤之毅波比的定位为坦克型上单英雄。由于波比的主要能详情>>

阅读: 2
日期: 2020-11-24
《LOL》不朽盾弓怎么合成 不朽盾弓合成方法分享

LOL不朽盾弓合成办法是正午箭袋、灵巧披风、吸血鬼节杖、600金币来合成,属性效果是详情>>

阅读: 2
日期: 2020-11-24
《天穗之咲稻姬》全枝魂获取方法

《天穗之咲稻姬》中的枝魂可以镶嵌在有空槽位的装备上,为角色提供各种方面的加成。下面请看由“cystev”带来详情>>

阅读: 3
日期: 2020-11-24
精彩推荐