开源项目MLAPI正式加入Unity
发布日期:2021-06-30 15:53:56 浏览次数:2 分类:技术文章

本文共 1565 字,大约阅读时间需要 5 分钟。

  开源项目MLAPI加入了Unity大家庭。本文将介绍我们正在构建的Unity自研的GameObjects多人游戏网络服务框架,以及一些未来的改动。

  玩家在游戏中的体验是否流畅,对游戏的成败至关重要,延迟、丢包、场景加载时间过长等网络问题无疑会极大地降低体验质量,但是目前市场上还没有一款万金油式的完美解决方案。

  2021年,Unity的首要任务之一就是为GameObjects搭建一个设置轻松、拓展简单的自研多人游戏网络方案,该方案不仅要能满足高性能游戏的要求,还要能无缝集成到Unity的生态系统中。

  提前声明,本文主要适用于使用GameObjects的开发者们。对于追求极致性能,并且正在使用ECS的开发者们而言,Unity NetCode资源包(预览版)仍然是首选的自研框架。

  现有的UNet HLAPI体系不适合大规模支持游戏所需的深度演进,为了实现我们设想的可扩展框架,最好的方法是以现在的工作为基础,进一步打磨。

  在考虑了各种开源软件(OSS)替代方案之后,我们终于找到了最合适的框架。现在,我们很高兴地宣布OSS多人网络框架MLAPI及其创始人Albin Corén一起加入了Unity大家庭。

  

  截至今天,我们已经开始将MLAPI集成并发展为Unity的自研GameObjects多人游戏网络解决方案。我们计划继续将软件开源,在开放、包容的社区环境中发展。感兴趣的朋友可以在GitHub MLAPI代码库中加入我们。

  即将推出的新内容

  以下是即将推出的内容:

  我们全新的解决方案架构师团队已加入MLAPI Discord服务器和Unity Multiplayer论坛,随时可以回答各位的问题、指导如何搭建多人游戏服务。

  接下来,我们会将MLAPI存储库移至Unity GitHub组织中,并加入新代码。项目将保持开源状态,保留完整的开发历史记录和所有的早先版本,未来的开发都将公开进行。

  项目许可证不作任何变动,将继续作为MIT许可证

  代码库将在未来几个月内持续开发。我们鼓励大家踊跃尝试MLAPI,但请注意:为了确保核心系统未来能具备足够的扩展性,许多地方将会有重大修改。修改后的项目会更加稳定,届时,我们将帮助大家完成代码迁移工作。

  我们将继续支持用于数据传输的抽象层,并承诺在该中间层上维护LLAPI和Unity传输包的集成。

  优先发展MLAPI 的关键领域

  我们已经深入研究了MLAPI的结构,并计划在用框架开发新功能之前,优先发展部分关键领域。这些领域包括:

  远程进程调用(RPC): 目前,MLAPI包含两个RPC系统,即“高兼容RPC”和“高性能RPC”。这两个系统的使用难度较大,同时,“高兼容RPC”会产生“高性能RPC”所降低的性能开销。我们正在研究如何用性能高、方便易用的系统进行替换。

  快照生成:MLAPI的当前设计并不便于整合增量压缩或客户端预测等功能,为了克服这一障碍,我们正在努力将快照生成从数据包发送系统中分离出来。

  网络相关性模型:只要能向每个玩家发送正确的数据,开发人员便能最小化带宽成本、最大化玩家的游戏体验。我们将改进MLAPI,新方案会有更少的数据发送量、更高的性能、更低的作弊可能和运营成本。

  除了架构和功能开发之外,我们还在研究文档、示例项目、操作方法、开发者工具,竭力让每个开发人员(无论是否具备多人游戏网络的专业知识)都能轻松搭建多人游戏服务。

  更多信息将陆续发布,欢迎各位持续关注 GitHub 项目页面。

  GitHub 项目页面:

  https://github.com/Unity-Technologies/com.unity.multiplayer.mlapi

转载地址:https://kaitiren.blog.csdn.net/article/details/113601547 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:第七章 文本处理
下一篇:6.4 预防session劫持

发表评论

最新留言

留言是一种美德,欢迎回访!
[***.207.175.100]2024年04月24日 05时09分55秒