Havok,藏在3A大作里的隐形功臣

tmyb

如果你是一个玩了十年八年游戏的老玩家,大概率听过Havok这个名字,但你多半说不出来它到底是干什么的,我去年夏天蹲点解锁《艾尔登法环:黄金树之影》,窝在电脑前连打三天三夜,印象最深的不是女武神的水鸟乱舞,也不是米凯拉的魅惑剧情,而是一次我把灾厄影子逼到角落,一个满蓄重砍下去,连带着它背后半面石墙一起碎开,大小十几块碎石带着惯性飞出来,居然正好有一块砸在我脚边,触发了跌落伤害直接把我残血带走,我当时第一反应是骂一句“这都能掉血?”,第二反应就是“这物理效果怎么做得这么真实,还一点都不卡?”,后来翻FromSoftware的开发者访谈才发现,FS早就把《艾尔登法环》核心的物理运算全交给Havok了,那一下猝不及防的掉血,不是设计师故意埋的坑,就是Havok物理引擎实时计算出来的真实结果,你看,我们玩游戏的时候,记住了开发商的名字,记住了所用引擎的名字,却很少想起这个在幕后,每帧都在计算每一块碎片轨迹的Havok。

Havok,藏在3A大作里的隐形功臣

很多人听过它,却没几个人真的认识它

Havok的历史其实比很多主流游戏引擎都久,1998年它成立于爱尔兰,最早就是几个技术出身的创始人看不惯当时3D游戏里“打箱子箱子不动、撞墙墙不歪”的假物理效果,才攒起来做专门的物理中间件,出来之后刚好赶上全球3D游戏爆发,2004年《半条命2》第一次大规模用Havok做物理,玩家开着车撞翻路障,碎片顺着惯性飞得到处都是,箱子掉下来会砸翻油桶,油桶滚下去能撞碎木板,那一整套连锁反应直接给当时的玩家看傻了:原来游戏还能做得这么真实?

从那之后,Havok就成了全球3A游戏的默认标配,不管你用的是虚幻、id Tech还是RAGE引擎,绝大多数大厂都会把引擎自带的物理模块换掉,换成Havok,我早年玩《GTA5》,最喜欢在洛圣都街上搞破坏,开车撞电线杆,电线杆倒了砸车,车失控再撞翻路边的小贩摊子,一串连锁反应下来,每一步都符合物理规律,几乎不会出现穿模、碎片飘在半空不动的bug,这就是Havok的功劳。

很多玩家会觉得:不就是算个碰撞吗?有什么难的?其实真的没那么简单,做开放世界的时候,一个场景里同时有几十个可活动角色、上百个可移动物体,战斗的时候甚至会出现上千块碎片同时运动,你要每一秒都算对每个物体的受力、速度、位置,还要尽可能少占CPU和显卡资源,不能掉帧,这真的是顶级技术活,Havok做了二十多年,优化已经打磨到了极致,这真不是随便哪个新团队从零做个物理引擎就能比的,后来Havok先后被英特尔、微软收购,背靠大厂资源,技术更新一直没停,直到今天,全球超过八成的3A大作,核心物理都来自Havok,只是大多数玩家从来没注意过它而已。

2024年更新:给所有UE5开发者送了份大礼

就在今年3月,Havok扔出了一个在游戏开发圈引发不小震动的消息:适配UE5.1到5.3全版本的正式版Havok Physics插件,完全免费开放给所有开发者,不管你是个人独立开发者还是顶级3A大厂,都能免费下载商用,还完美适配了UE5的Nanite和Lumen两大核心技术。

Havok,藏在3A大作里的隐形功臣

这可不是什么小更新,原来Havok一直是商业授权,只有大厂掏得起钱用,后来虽然出了UE5的测试版插件,也有不少功能限制,这次直接把完整版本免费开放,等于把原来只有3A大厂能用的顶级物理技术,直接送到了所有小团队和个人开发者手里。

我常看B站一个做独立开放世界武侠的开发者UP主,他当时第一时间就换了Havok做测试,他搭了一个有100个可破坏木桶、10个NPC同时打斗的团战场景,原来用UE5自带的Chaos物理,同配置下平均帧率只有32帧,团战爆发的时候直接掉到20帧以下,根本没法玩;换了Havok之后,一模一样的场景、一模一样的配置,平均帧率直接跑到了59帧,最低帧率也没下过45帧,帧率提升直接快一倍,他在视频里说,原来做开放世界最头疼的就是物理运算占资源,为了不卡只能砍内容,把很多可破坏场景都删掉了,现在好了,能放开手脚加内容,玩家玩的时候体验提升太多了。

这个更新的意义远不止提帧率这么简单,过去很长时间里,顶级物理技术是大厂的专利,小团队没钱拿授权,只能凑合用引擎自带的,做出来的效果就是差一截,很多本来很好的创意,因为物理优化过不去只能砍掉,现在Havok免费开放,直接把门槛拉平了,小团队也能做出3A级的物理体验,这对整个行业的创新来说都是好事。

不止物理引擎:你想不到它还管这么多

大多数人对Havok的印象还停留在“物理引擎”,其实经过二十多年的发展,Havok早就是一整套完整的游戏开发中间件了,除了物理碰撞,动画、AI、路径规划、可破坏系统,甚至VR游戏的运动碰撞优化,Havok都做,而且做得都顶尖。

Havok,藏在3A大作里的隐形功臣

我去年玩B社的《星空》,当时很多玩家喷它加载慢、画面老旧,但很少有人喷它的NPC逻辑,我当时在新亚特兰蒂斯城偷东西被发现,三个保安追我绕了大半个城市,路上会躲行人、绕楼梯,还知道分路包抄,玩了几十个小时从来没遇到过保安卡进墙里、站在原地发呆的bug,后来查资料才知道,《星空》整个开放世界上千个NPC的路径规划,全都是用Havok AI做的,这么大的世界这么多NPC同时活动,全靠Havok的优化才不会掉帧不会出bug。

我玩《对马岛之魂》导剪版的时候,最喜欢无事骑马在草原瞎逛,一刀刀砍路边的竹子,一刀下去,竹子会顺着你下刀的位置和力度歪倒,倒下来还会压弯一片草,每一次砍的动态都不一样,那个真实感真的太舒服了,这个动态效果就是Havok的物理和动画系统结合做出来的,放在十年前,很多游戏里草木竹子都是固定动画,不管你砍哪里都是同一个动作,而Havok是实时计算的,所以才有那种活的感觉。

甚至现在全球百分之九十以上的主流赛车游戏,核心的车辆物理都是Havok做的,你开不同重量的车、不同速度过弯,抓地力不一样,漂移的手感不一样,撞车的时候每个零件的受力都不一样,《极限竞速:地平线5》里几百辆车同场竞技碰撞,每一辆车的碰撞反馈都不一样,还能全程稳60帧,这背后都是Havok的功劳,说白了,你玩游戏的时候觉得“流畅、真实、舒服”,很大概率就是Havok在背后起作用,只是你感觉不到它而已。

Havok的低调,给国内游戏行业什么启发?

这些年我观察国内游戏行业,有一个很有意思的风潮:只要做国产3A,一定要先吹“自研引擎”,好像不说自己是全自研,就不够厉害,做不出好游戏一样,但Havok的存在,其实给了我们一个完全不同的思路:专业的事交给专业的人做,把你自己擅长的部分做到最好,才是最高效的选择。

Havok成立二十多年,从来没做过一款自己的游戏,也从来不抢开发商的风头,永远待在幕后,就把自己的底层技术做到极致,所以全球所有开发商都愿意用它,它不做游戏,照样是全球游戏行业不可或缺的巨头,今年我去ChinaJoy逛展,遇到一个五个人的大学生独立开发团队,他们做了一个横版武侠动作游戏,原来用引擎自带的物理,BOSS放大招毁掉半个擂台,一堆碎石掉下来直接游戏闪退,每次试玩到这里都卡,他们整个团队没经费,根本没钱请人做物理优化,后来听说Havok的UE5插件免费,换了之后直接解决问题,现在随便炸都不卡,效果还比原来真实太多,团队负责人跟我说,这个插件至少帮他们省了几十万的开发成本,还省了一年多的开发时间,原来想都不敢想,我们小团队也能用上顶级大厂才用的技术。

我不是说自研引擎不好,我们国家当然需要有自己的自研核心技术,需要突破卡脖子的环节,但问题是,没必要为了“全自研”的名头什么都从零开始,更不能舍本逐末,把大量的钱和时间花在已经有成熟产品的底层技术上,反而挤不出资源做好玩法、剧情、美术这些玩家能直接感受到的内容,Havok给我们的启发就是:行业分工越来越细,做中间件的就把中间件做好,做游戏的就把游戏内容做好,大家各司其职,把自己擅长的事做到极致,整个行业才能良性发展。

Havok就是这样一个典型的“行业工兵”,它不需要玩家记住它的名字,不需要站在台前接受追捧,它只要做好自己的事,托着所有开发者做出更好的游戏,从二十多年前的《半条命2》,到今年即将发售的《黑神话:悟空》,从学生团队做的独立游戏,到动辄几个亿成本的3A大作,每一次真实的碰撞,每一块顺着力道飞出去的碎片,每一个不卡墙的NPC,背后都有Havok在默默运算,这次免费开放UE5插件,对国内开发者来说更是一次难得的机遇,希望我们能借着这股力,做出更多让玩家惊艳的好作品,也希望国内游戏行业能多一点这种专业专注的低调,少一点为了虚名的内卷,我们国产游戏的春天,只会来得更快。