如今的游戏作品正逐渐把玩家之间的交互作为主要卖点,保证游戏者们能够在同一环境中聚集起来,携手世界各地的其他冒险者共同体验游戏世界中的点点滴滴。


但从技术角度出发,这种灵活匹配以最大程度提升游戏乐趣的机制其实相当难以实现,往往要求游戏厂商投入巨大的精力与成本。每款游戏都拥有自己的特性,因此现有匹配解决方案往往很难提供恰如其分的支持。为此,游戏开发人员通常需要耗费大量时间与资源为各个新版本开发出定制化、可扩展的匹配解决方案——换言之,这些繁琐的工作正严重侵占着他们打造出色游戏产品的空间。


如果能够让游戏开发人员专注于游戏匹配逻辑(让技术水平相近的玩家们同组对抗),帮助他们摆脱从零开始为每款游戏构建匹配机制的糟糕体验,又会如何?为了实现这一目标,Google Cloud 与 Unity 联手公布名为 Open Match 的开源匹配项目。Open Match 的核心在于帮助游戏开发者重复使用常规匹配框架,其中包含三大关键组件:游戏客户端前端 API、游戏服务器后端 API 以及针对特定游戏的定制化匹配逻辑协调器。Open Match 利用 OpenCensus(opensus.io)进行指标收集,且默认配置有 Prometheus(prometheus.io)。


利用 Open Match,游戏开发者将轻松获得以下助益:


普适性。利用定制化匹配逻辑,例如快速根据延迟、等待时间以及游戏水平等指标完成玩家匹配。


灵活性。由于 Open Match 运行在 Kubernetes 之上,因此开发者可以将其轻松部署在任何公有云、本地数据中心甚至是本地工作站当中。


可扩展性。Open Match 利用成熟的微服务模式设计而成,且选择 Kubernetes 作为底层平台。当游戏玩家数量增长时,您可以通过简单的命令快速为 API 添加额外容量。此外,Kubernetes 强大的自动规模伸缩能力也将让匹配系统的自动化程度更上一层楼。


虽然 Open Match 由 Google Cloud 与 Unity(知名游戏引擎厂商)共同创立,但项目本身严格保证引擎中立性。用户可以将其集成至任意游戏当中,无需考虑游戏的具体构建方式或者运行所处的基础架构。Unity 未来还将在 Open Match 基础上扩展更多的功能,帮助 Unity 客户更轻松地利用其强大功能,包括与 Unity 提供的服务器相集成。目前 Open Match 的 GitHub 库已经正式开放,感兴趣的朋友可以根据开发设置指南中的示例立即上手体验。


原文链接


相关推荐