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

独立游戏《安妮》开发回顾一(技术篇)

时间:2022-01-26 09:54:27  来源:  作者:网络转载
被遗忘的安妮 PC版

被遗忘的安妮 PC版

大小:更新:2020-09-11

分类:正版游戏


本文首发知乎:https://zhuanlan.zhihu.com/p/459639904

2017年至2019年,我们一个几人的小团队开发了独立游戏《安妮》。如今时隔两年,再回顾一下这段职业生涯中最开心也最痛苦的经历,大量教训,希望能对后来的独立游戏开发者有所帮助。所有内容大概会写三篇,本篇是第一篇,先聊聊技术。

一、源起

这个项目的起源,是我把magicavoxel做的体素模型导入到引擎里,做了个破碎的效果,当时的截图:


公司的美术大佬看到后觉得有点意思,那时正好想做个小项目,于是就定了做一个体素风格的小游戏。高精度体素模型会有一种玩具感,配合俯视角更显精致。(当时知乎上有个学生团队在做体素游戏,也写过关于画风的讨论)

《Monsterologist》 开发日志3 体素美术心得
https://zhuanlan.zhihu.com/p/25195200

推特上体素artist的作品

定了俯视角,再考虑利用上模型破碎的效果,以及团队规模和能力,我们确定了做一个俯视角射击(top-down shooter)的PC单机游戏。第一版战斗Demo完成后,我认为单纯射击卖点不足,考虑steam玩家特性,做一个走心的剧情故事会很加分,这就有了后来《安妮》的样子了。同时,这个剧情也为后续开发挖了大坑。

(后来的后来,主打体素破碎的独立游戏《Teardown》上线并大卖,让我感慨万千。《安妮》的立项就带着美术主导的基因,自然不会走这种新技术、新体验的方向。但作为一个典型的产品型程序员,把技术用于创新体验,真是一个美妙又奢侈的追求。)

体素沙盒破坏游戏《Teardown》

美术风格有大佬把控,我的任务就是搭建一套基于magicavoxel的资产管线,在极其有限的人力限制下把游戏做出来。所以,技术的重心肯定要放在加速创作(Asset Pipeline)和玩法实现(Gameplay)上。

我们使用的引擎是unity 5.6,中期为了用Timeline做过场动画,升级到了unity 2018。我们前面很长一段时间只有4个人,2程序+2美术,没有能力去做渲染管线的定制。我们直接使用引擎内建的延迟管线,使用引擎标准的PBR材质,使用unity官方的PostProcessingStack(再加一个特制的后处理勾边)。因为场景大部分物件可破坏,所以没有烘lightmap(也就省了模型2UV的工作量),GI的效果就靠后处理的SSAO、SSR。以及,游戏画风偏风格化,美术打了很多氛围光,对间接光的缺失也不太敏感。

《安妮》实际游戏截图

二、体素模型管线

我们的体素模型都是使用magicavoxel 0.98.2版本制作的,如今这个软件在独立游戏圈基本上是无人不知了。记得18年参加GGJ时就看到很多组用magicavoxel来做资源。体素模型在引擎中的渲染还是会走传统光栅化的方法,但具体的方案就会有很多选择,比如体素生成完整mesh、geometry shader/compute shader生成顶点、instancing绘制cube等等。我们的游戏不需要像沙盒游戏那样可编辑,就使用离线生成mesh的方法。

magicavoxel原本支持导出obj模型,但会有一些问题,比如会丢失材质信息,再比如贴图只使用一个256色调色盘,导致无法高效的合面。我们自己实现了一套vox模型导入,解决上述问题,同时保存了体素原始数据,用于模型破碎的粒子效果。

生成mesh的算法,就是从voxel提取可见的quad,然后合并quad,再用两个三角形填充quad。合并quad使用贪心算法,参考的这篇文章:

Meshing in a Minecraft Game
https://0fps.net/2012/06/30/meshing-in-a-minecraft-game/

合并quad后,就可以对所有quad装箱,给顶点生成UV。进而把voxel的颜色和材质信息填到两张贴图,一张保存RGB颜色,一张保存Metallic、Roughness、Emissive。贴图通常128,甚至64就够了。材质里都使用Point采样。

其实,简单地从一个quad生成两个三角面,会有面断开的问题,但因为这些模型都不会做蒙皮动画,所以不会出现破绽。要解决的话,需要用到Delaunay三角化,模型面数也会增加一些。

体素模型生成的mesh

静态模型解决后,再考虑角色的问题。

因为我们没有专业的动画师,所以想尽量使用网上的动作资源(开始觉得很艰苦,后来知道《绝地求生》都用了大量虚幻商店的资源……)。unity支持人形骨骼的动作retargeting,我们只要做好骨骼就好了。骨骼也可以自动生成,只需要在模型上标出这是人体的哪个部位,就能算出人体关节的位置。当时的magicavoxel版本还不支持创建模型结构,我们就用自己的土方法:把模型复制一份,给身体不同部位染不同的颜色,这个新模型叫rig模型。编辑器生成角色mesh时同时读取这个rig文件,就同时生成了一份人型骨骼。另外还同时自动生成了角色布娃娃,死亡时激活使用。

右侧为rig模型

用网上的动作测试一下,效果还行。

自动生成骨骼,使用引擎动作重定向

有了这套流程,我们建模的成本极大地降低。正常项目做一个角色几周的流程现在只需要几小时,对于不太重要的npc角色,美术大佬可以一天干出十几个。

模型和动作搞定了,特效也直接使用商店的资源,四人团队就这么启动了。

(现在回头来看,没有动画师和特效师是个错误,严重限制了怪物、关卡的设计以及设计意图的传达。项目尾期动画特效同学加入后才顺利了很多,免费的才是最贵的…… 所以,我当时解决问题的思维方式还是工匠而不是领导。)

三、体素破坏效果

在游戏中把一个模型破坏掉是个复杂的技术,涉及到一堆看不懂的数学方法,所以破坏早已集成到各种物理引擎中。要做运行时生成的破坏更是复杂,可以参见《彩虹六号》程序大佬的这篇血泪史:

《彩虹六号 围攻》中的破坏系统是通过怎样的引擎实现的?
https://www.zhihu.com/question/49317501/answer/124322645

但是,对体素模型做破坏就非常简单了。根据破坏的位置对体素生成voronoi划分,然后再重新生成碎片mesh。和破坏网格模型相比简直就是玩具车和F1的差别。我猜《Teardown》的破坏也是这么实现的。

《安妮》中的实现则更简化。前面提到,我们模型的生成是离线进行的,所以碎片也是离线纯手工编辑的。因为自动生成难以识别出模型的材质特征。比如击中窗户玻璃时希望玻璃破掉,而不是玻璃带着周围的窗框一起破掉。我们使用和角色骨骼类似的方法,为每个可破坏模型再制作一个part模型,使用不同颜色表示不同的碎片。同时也表示了这一片的物理属性,最终影响到击中后的特效音效,破坏后是碎成碎片还是直接碎成粒子,以及生成碎片的质量和摩擦系数。

右侧为part模型

体素的破坏算法虽然简单了,但破坏的逻辑规则还得是完整的:

每一种攻击都要带有一个“破坏等级“属性,每一个物件对应的有一个”抗破坏等级“。比如徒手攻击可以破坏玻璃,但打不烂木板,枪支可以破坏木板但打不烂水泥掩体,Boss的特殊攻击可以破坏掩体,这样就和玩法结合了起来。

碎片也会根据物理材质有不同抗破坏的等级,主角的枪可以把木箱打成碎片,Boss的攻击可以把碎片砸成粒子。

每个物件也会有自己的生命值,被击中时只是对应部位破坏变成碎片,当生命值降为0才会整体都破坏掉。

所有游戏的破坏规则都是大同小异,因为都是在一定的技术限制下模拟现实。工业化流程下的做法可以学学《Control》的这篇GDC分享:

[gdc20]control的可破坏环境技术
https://zhuanlan.zhihu.com/p/380580194

四、Gameplay

《安妮》的Gameplay开发占了程序的绝大部分工作量,但值得拿出来说的并不多。现在想想,稍微有趣的几个点:

我们做了一个弓箭点哪射哪的功能,就是解了个抛物线方程,根据位置、初速度和g值算出发射角度。但这个功能意义不大,因为游戏一定要支持手柄操作,而手柄玩俯视角射击时不能精确选择目标点,所以也就没法利用这个功能做玩法。

有一些关卡,是依赖物理的,比如滚木落下来把桥砸断。这些滚木开始都是物理驱动的,运动和碰撞都比较自然,但是会不稳定,严重时会卡住流程。如果手调下落动画,又做不到这么自然。于是我们做了一个录制轨迹的功能,提前用物理驱动多跑几次,选择最好的轨迹,做成关键帧动画。

敌人追击时分散开移动,靠近主角后自动包围。这也是很多丧尸类AI都有的,避免玩家放风筝优势太大。用的方法就是移动时增加单位间的排斥力,靠近包围时由目标单位身上的位置管理器统一分配站位。

在成本有限的独立游戏中做高技术难度的挑战并不理智。就《安妮》而言,我大部分精力转到策划以后,就只有一个程序人力,要做所有怪物、Boss、UI系统,维护剧情编辑工具等等,这个同学还设计了几个Boss……

所以,独立游戏对程序员的要求是广度大于深度,且要有产品思维,这和大厂的要求是相反的。

五、体素的展望

体素在《安妮》中仅仅作为一种美术风格和对应的资产管线。实际上,如果整个游戏基于体素构建,利用好体素数据结构的整齐性,能做的有趣的事情非常多,脑洞几个:

真正的全场景程序化破坏,和玩法结合。上面提到的《Teardown》还是把破坏当作一种模拟体验,《彩虹六号》则是把破坏和玩法结合了起来。我心中的一个把全场景破坏和玩法结合的非常棒的游戏是《Broforce》。

基于体素的实时GI。体素适合光线追踪,可以尝试一下当前硬件在纯体素场景中,做光栅化+光线追踪混合渲染能达到什么效果,可否实现高效的实时GI,就像简化版的VXGI。(知乎大佬的相关实现:https://zhuanlan.zhihu.com/p/120361846)

体素的高精度大世界。利用GPU driven可以大量剔除不可见面,体素模型的LOD生成是否可以更灵活,这些都做完善的话就是一个体素版Nanite。

基于体素的PGC(程序化内容生成)。3A项目中,PGC通常用于大型开放世界的内容填充,为的是降低人力成本,使用的算法和工具都极其复杂。而独立游戏中,程序化生成是和玩法结合起来的,为的是随机性和重玩价值。体素下PGC可以简化很多,经典案例就是《我的世界》中的地图生成。

关于体素的特点和优势,可以看Milo大神早年这篇:

以体素建构三维游戏世界
https://zhuanlan.zhihu.com/p/20065737

以及知乎上近期这篇:

体素引擎,来自元宇宙的基本问题
https://zhuanlan.zhihu.com/p/452600325

当然,做独立游戏,技术还是要为产品服务的,游戏最终的竞争力还是靠产品体验,不能本末倒置。《安妮》这个项目中我也做了大量(不专业的)策划工作,下篇接着聊。


原文:https://zhuanlan.zhihu.com/p/459639904

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

玩家评论

金虎贺岁流动:最多开启10次福袋必患上哥特萝莉安妮

金虎贺岁,共庆新春。“金虎贺岁”流动将于2022年1月21日上线。采办刻日守御皮肤赠予金虎宝箱,关上金虎宝箱优先取得奢华奖池未解锁道具或金虎福详情>>

阅读: 0
日期: 2022-01-22
《梦回大航海》安妮波妮优缺点解析

导 读 《梦回大航海》安妮波妮优缺点解析。一款模拟经营类航海冒险手游,玩家需要驾驶自己的船只往返世界各处,组建最强大的舰队开始闯关,挖掘更多的宝藏,一起重返大航海时代详情>>

阅读: 0
日期: 2022-01-19
11.24上中野高胜率英雄推荐!安妮雪人稳定上分_技能_伤害_gank

原标题:11.24上中野高胜率英雄推荐!安妮雪人稳定上分 11.24版本上中野依然在团队中发挥着重要的作用,他们是上分的绝佳之选。下面就为详情>>

阅读: 0
日期: 2022-01-12
EDG首战告捷,安妮成“圣枪哥”第70个英雄

  EDG春季赛开门见喜。   2022LPL(英雄联盟职业联赛)春季赛1月11日进入第二个比赛日角逐。首场比赛,EDG2比0击败JDG,拿下队伍春季赛首胜。   冬季转会期,EDG五人组并未发详情>>

阅读: 0
日期: 2022-01-12
EDG冠军班底首战告捷,安妮成“圣枪哥”第70个英雄_比赛日_对手_李炫君

原标题:EDG冠军班底首战告捷,安妮成“圣枪哥”第70个英雄 EDG春季赛开门见喜。图/社交媒体 新京报讯(记者 赵雪)2022LPL(英雄联盟职业详情>>

阅读: 0
日期: 2022-01-12
「间谍过家家」安妮亚・佛杰粘土人现已开订

BANDAI SPIRITS作品「间谍过家家」安妮亚・佛杰粘土人现已开订,该手办高约80mm,主体采用PVC和ABS材料制造,产品系列为Figuarts mini。该手办定价为2,220日元(含税详情>>

阅读: 1
日期: 2022-01-12
原创JDG虽败犹荣?圣枪哥整活安妮吸血鬼,全是留给DK的秘密武器!

原标题:JDG虽败犹荣?圣枪哥整活安妮吸血鬼,全是留给DK的秘密武器! S11冠军战队EDG的春季赛首秀吸引了大量关注,在这场面对JDG的BO3中,EDG详情>>

阅读: 1
日期: 2022-01-11
JDG虽败犹荣?圣枪哥整活安妮吸血鬼,全是留给DK的秘密武器!

原标题:JDG虽败犹荣?圣枪哥整活安妮吸血鬼,全是留给DK的秘密武器! S11冠军战队EDG的春季赛首秀吸引了大量关注,在这场面对JDG的BO3中,EDG详情>>

阅读: 2
日期: 2022-01-11
原创EDG首秀火力全开!25分钟拿下29个人头,圣枪哥直接安妮虐菜

原标题:EDG首秀火力全开!25分钟拿下29个人头,圣枪哥直接安妮虐菜 各位LPL的观众和英雄联盟召唤师大家好,这里是天下游戏汇。 LPL第二个详情>>

阅读: 1
日期: 2022-01-11
EDG首秀火力全开!25分钟拿下29个人头,圣枪哥直接安妮虐菜

原标题:EDG首秀火力全开!25分钟拿下29个人头,圣枪哥直接安妮虐菜 各位LPL的观众和英雄联盟召唤师大家好,这里是天下游戏汇。 LPL第二个详情>>

阅读: 0
日期: 2022-01-11
11.24上中野胜率最高英雄推荐!安妮雷克塞制霸中野

原标题:11.24上中野胜率最高英雄推荐!安妮雷克塞制霸中野 11.24版本正在如火如荼地进行之中,有哪些值得上分的上中野英雄呢?下面我们就详情>>

阅读: 1
日期: 2021-12-21
零之战线安妮值得养么 安妮技能强度介绍

零之战线安妮值得养么?安妮技能强度一览。许多小伙伴们十分好奇SSR战姬安妮怎么样?值不值得培养?今天小编为大家带来了安妮技能强度的介绍,有需要的小伙伴们详情>>

阅读: 0
日期: 2021-12-09
历代哥特安妮原画你最喜爱哪一版?

明天哥特安妮又迎来了新的原画~如下为历代哥特安妮原画(最初一张为已经的国服限定原画),各人更喜爱哪一版呢? 详情>>

阅读: 1
日期: 2021-12-09
LOL12.1版本新皮肤预览,纳尔加入永恒之森,野火艾克登场,哥特安妮原画重做

【17173鲜游快报,专注于快速带来全球新游信息】今天凌晨英雄联盟测试服更新,纳尔、雷克赛加入永恒之森系列,双城之战野火帮艾克也在游戏里登场,还有一款LOL最详情>>

阅读: 2
日期: 2021-12-08
安妮海瑟薇38岁依旧美艳,窈窕身材生图也抗打,看着像是不会老!_连微微

原标题:安妮海瑟薇38岁依旧美艳,窈窕身材生图也抗打,看着像是不会老! 对于不少人而言。安妮海瑟薇简直就是难以超越的白月光。姣好的身详情>>

阅读: 3
日期: 2021-11-15
英雄联盟手游黑暗之女安妮怎么样 lol手游黑暗之女安妮介绍

  英雄联盟手游黑暗之女安妮怎么样?英雄联盟手游中有许多大家耳熟能详的英雄们,那么这里就给大家带来了英雄联盟手游黑暗之女安妮介绍,希望对大家有所帮助详情>>

阅读: 4
日期: 2021-10-09
11.17安妮出装攻略分享

安妮作为爆发型法师在对线阿克尚时有较好的克制效果,下面小编就带来英雄联盟11.17安妮出装攻略分享,一起来看看详情>>

阅读: 2
日期: 2021-09-29
集齐4国强大基因,优越长相上镜似仙女,微微一笑撞脸安妮海瑟薇_美人

原标题:集齐4国强大基因,优越长相上镜似仙女,微微一笑撞脸安妮海瑟薇 都说混血儿基因特别强大,颜值也比较高。虽然说这样的说法过于绝对,但不得不说还详情>>

阅读: 4
日期: 2021-08-22
热爱,因你而在!10周年限定安妮手办登场

在过去的十年,我们曾一同遨游在星之守护者的宇宙,感慨美猴王等英雄的威武,激动万分于LPL战队在世界赛场上的捧杯....此时此刻,联盟的十周年庆典正是对所有玩家表达感谢详情>>

阅读: 3
日期: 2021-08-08
《英雄联盟》安妮十周年纪念限定手办单独售价349元礼盒套装499元

今日(8月5日),《英雄联盟》官方周边商城推出“安妮十周年限定手办”,单独售价349元,礼盒套装499元,一起来看看吧。 官方周边商城地址>>>详情>>

阅读: 4
日期: 2021-08-05
《永劫无间》胡桃安妮嫩叠捏脸数据分享

安妮嫩叠是最近抖音上爆红的一位网红,那么我们能否在《永劫无间》中还原安妮的脸呢?现在为大家带来“古安三”详情>>

阅读: 19
日期: 2021-07-24
好蓝!安妮·海瑟薇颜高人胆大新剧cos阿凡达女主_Crashed

原标题:好蓝!安妮·海瑟薇颜高人胆大 新剧cos阿凡达女主 讯 日前,外媒曝出了一组安妮·海瑟薇拍摄新剧《We Crashed》的全新造型,女神COS起电影《阿详情>>

阅读: 4
日期: 2021-07-15
皇后工作室开启安妮·海瑟薇版猫女雕像预售1/6全身像带有摩托车细节精致

【17173鲜游快报,专注于快速带来全球新游信息】著名模型厂商皇后工作室(Queen Studios)开启了新品《蝙蝠侠:黑暗骑士崛起》安妮·海瑟薇版猫女1/6全身像预售,预详情>>

阅读: 3
日期: 2021-07-15
《英雄联盟手游》安妮天赋推荐

  在英雄联盟手游中有很多小伙伴都很想知道爆发非常高的安妮应该带什么天赋,今天小编给大家带来了《英雄联盟手游》安妮天赋推荐,感兴趣的小伙伴一起来看看吧,详情>>

阅读: 4
日期: 2021-07-14
《英雄联盟手游》安妮打法技巧一览

  在英雄联盟手游中有很多小伙伴都很想知道爆发非常高的安妮应该怎么玩,今天小编给大家带来了《英雄联盟手游》安妮打法技巧一览,感兴趣的小伙伴一起来看看吧,详情>>

阅读: 3
日期: 2021-07-14
lol手游安妮熊怎么控制 手把手教你无伤越塔

  英雄联盟中小安妮的熊是需要按住ALT加A来控制攻击的敌人,手游中没有键盘,这一下让很多小伙伴不会控制安妮的熊了,下面小编就来教大家安妮熊的控制方法,感详情>>

阅读: 9
日期: 2021-05-27
《英雄联盟》安妮图文教程 LOL11.11黑暗之女玩法攻略

LOL11.11黑暗之女 安妮怎么出装?相信很家都想知道11.11黑暗之女 安妮出装和天赋内容,下面九游小编为大详情>>

阅读: 2
日期: 2021-05-27
LOL手游安妮一图流攻略:主W副Q,有年夜点年夜

转自好汉同盟手游【安妮一图流攻略到来】你们好犀利,败给小萝莉!过年的时分有用过安妮导航语音包吗,萝莉音真是超可恶der,如今,又能够正在手游里以详情>>

阅读: 2
日期: 2021-05-25
lol手游安妮出装循序分享 秒杀脆皮无脑控

  lol手游中的安妮这个英雄爆发很高,这个英雄又不是很吃操作,所以她的出装就尤为重要。很多小伙伴不知道安妮究竟该怎么出装,下面小编就把英雄联盟手游安妮详情>>

阅读: 6
日期: 2021-05-23
英雄联盟手游安妮怎么玩 黑暗之女详细玩法教学

  英雄联盟手游中的安妮是一个中路定位为法师的英雄,很多小伙伴不知道这个小萝莉究竟该怎么玩,其实安妮的玩法很简单,下面小编就把安妮的详细玩法教给大家,详情>>

阅读: 8
日期: 2021-05-23
现在玩LOL安妮应该怎么玩更给力,求大神指点!

安妮主要是用好被动和Q技能 Q是打死敌方小兵的话就不会耗蓝 所以你要掌握好用Q补兵的节奏 被动的定人是你杀人和团战起手的有利武器 详情>>

阅读: 2
日期: 2021-05-17
王者荣耀 小熊女孩安妮玩法及出装

  现在王者荣耀版本中维克托横行中路,消耗能力十分的强,六级之后更是有这高额的爆发伤害然人望而生畏,但没有一个英雄是完美的,安妮十分的克制维克托。所以让我详情>>

阅读: 13
日期: 2021-05-11
第五人格玩具商安妮技能介绍

第五人格安妮技能是什么?第五人格今详情>>

阅读: 10
日期: 2021-05-10
第五人格玩具商技能是什么 安妮详细技能介绍

  第五人格中的玩具商安妮昨天也是正式上线了,它的全名是安妮·莱斯特。很多小伙伴不知道它的技能究竟是什么,下面小编就把第五人格玩具商的技能给大家介详情>>

阅读: 8
日期: 2021-05-09
新的曙光第五人格手游新求生者玩具商到访庄园_安妮

原标题:新的曙光 第五人格手游新求生者玩具商到访庄园 近日,网易首款1V4非对称竞技手游《第五人格》的庄园信箱中出现了一封意外的拜访函,新求生者“详情>>

阅读: 3
日期: 2021-05-07
《LOL》安妮加点技巧攻略 安妮如何加点

在英雄联盟S11赛季,安妮加点推荐为:主点Q技能,副点W技能,前期E技能点1级,有大招点大招,中期满W技能,E技能后期可点满。前6级加详情>>

阅读: 14
日期: 2021-04-23
「女神级」收藏人偶:安妮·海瑟薇版1:3猫女,造型精致,还原度高_Studios

原标题:「女神级」收藏人偶:安妮·海瑟薇版1:3猫女,造型精致,还原度高 玩懂手机网消息,近期有不少模型厂商推出了超级英雄的等比例人偶,都收到了非常不详情>>

阅读: 4
日期: 2021-04-21
《相约星期二》作者米奇·阿尔博姆再写爱,探讨母女、人宠关系_安妮

原标题:《相约星期二》作者米奇·阿尔博姆再写爱,探讨母女、人宠关系 《相约星期二》作者米奇·阿尔博姆再写爱,探讨母女、人宠关系 东方网记者包详情>>

阅读: 6
日期: 2021-04-18
第48届安妮奖公布:《心灵奇旅》荣获最佳动画长片奖

据Variety报道,第48届安妮奖获奖名单正式出炉,皮克斯长篇动画《心灵奇旅》以及爱尔兰工作室Cartoon Saloon和Melusine Prods制作详情>>

阅读: 3
日期: 2021-04-17
亲王去世后英国长公主首次官方亮相!穿黑大衣霸气,眼睛都哭肿了_安妮

原标题:亲王去世后英国长公主首次官方亮相!穿黑大衣霸气,眼睛都哭肿了 英国安妮公主是女王和菲利普亲王唯一的女儿,安妮公主之前连续好几年都是出席皇家活详情>>

阅读: 14
日期: 2021-04-15
精彩推荐