Redian新闻
>
Godot离开发3A游戏还有多远?

Godot离开发3A游戏还有多远?

公众号新闻
出品 | OSC开源社区(ID:oschina2013)
Godot 4.0 即将正式发布,据称此版本在功能、性能和可用性方面都包含全面的重大改进。不过社区目前面临着一个大问题:Godot 与主流商业产品相比有多大差距
4.0 作为重大版本更新,其开发工作于 2020 年启动,在两年多的开发过程中,Godot 4.0 带来的新特性包括:支持 Vulkan API、改进图形渲染系统和核心引擎、改进 OpenGL、添加新的 Physics 特性、增强 GDScript 脚本、更好地支持音频、改进多人游戏模式,以及对 Godot 3.x 的大量其他改进。
当然,目前大多数新功能仍然存在重大错误和性能问题,无法在即将发布的 4.0 版本中及时解决。除此之外,Godot 还缺少一些基本功能,以下是最重要的一部分:
  • 流媒体处理 (Streaming)

从一开始就让游戏变长的传统方法是将它们分成几个阶段。一旦某阶段完成,它就会被卸载,同时加载新的阶段。
现在许多游戏仍在使用这种方法(毕竟,如果它没有损坏,就不要修复它)。但是,游戏设计越来越多地从 “独立阶段” 转向 “开放” 或 “连续” 世界,其中级别之间的界限消失。因此,以这种方式创建游戏更具挑战性。
常见的流媒体类型包括:纹理流、网格流、动画流和音频流。
其中,大多数实现起来相对简单。最复杂的是 mesh streaming,它一般需要和 GPU 剔除策略一起实现,以确保可以在不消耗 CPU 的情况下绘制非常大量的模型。这或多或少是像 Nanite 这样的技术在 Unreal 中所做的事情,尽管 Godot 在大多数情况下不需要实现那么复杂的东西。
流媒体是管理大型场景或开放世界所缺少的最重要的功能。没有它,Godot 用户将面临很长的加载时间(因为每个纹理、模型和动画都必须在显示任何内容之前加载)。如果并行加载太多资源而不是采用流式传输,还存在内存不足的风险。
  • 底层渲染访问 (Low level rendering access)

尽管 Godot 4.0 中有新的渲染器,但没有一种架构可以被认为是一种通用的解决方案。开发者通常需要实现未与引擎捆绑在一起的渲染技术、后期处理效果等。
Godot 的理念一直是迎合解决最常见的用例,并为用户自己解决不常见的问题敞开大门。
因此,这意味着需要通过 GDExtension 公开对所有渲染服务器结构的底层访问。这将允许在渲染步骤中创建自定义渲染器或插入自定义代码,这对于自定义渲染技术或后期处理非常有用。
  • 场景作业系统 (Scene job system)

为 Godot 4.0 所做的大部分工作都涉及对所有服务器(渲染、物理、导航等)的大型功能和性能改进。服务器现在也是支持多线程,以及经过优化,甚至资产加载现在也可以多线程完成。
尽管如此,场景系统尽管在可用性方面有了一些改进,但并没有得到显著的优化。
Godot 中的场景节点主要用于为有限数量的对象(最多数百个)承载复杂的高级行为(例如动画树、运动角色、IK、骨骼等)。目前没有采用线程,只使用了一个 CPU 内核。这使得它非常低效。
  • Swarms

如前所述,场景是为数百个实例中的复杂高级行为而设计的。不过,有时,一些游戏需要更多的实例,而不是复杂的行为。
这对于某些类型的游戏机制是必需的,例如:
  • 射弹

  • 某些类型的策略游戏中的单位,有数千个实体在地图上漫游

  • 城市模拟器中的汽车 / 人,成千上万的人出现在整个城市

  • 沙盒式模拟

  • 在 CPU 上运行的复杂自定义粒子

更有经验的程序员可以直接使用服务器,甚至可以插入 C++ 代码来完成繁重的工作。ECS 通常也被提议作为解决方案。甚至 GPU Compute(在 Godot 中完全支持)也可以很容易地用来解决这个问题。
但为了让 Godot 易于访问和使用,团队的想法是创建一个 swarm 系统来处理大量这些对象的渲染和物理,开发者只需编写代码逻辑。
  • 对大型团队的 VCS 支持 (Large team VCS support)

Godot 的文本文件格式对版本控制非常友好。他们只写需要的东西(没有多余的信息),保持部分的顺序,并且足够简单,只需查看差异就可以理解变化。很少有其他技术能在这一领域发挥同样的作用。
尽管如此,这还远远不足以实现大型团队协作。为了实现这一点,Godot VCS 支持必须在几个方面进行改进:
  • 更好地与文件系统扩展坞集成。

  • 如果在外部修改(并导出)资产,可以更好地实时刷新资产。

  • 支持权限和文件锁定:Git 不支持开箱即用,但 Git LFS 和 Perforce 支持。此功能对于大型团队来说至关重要,可以避免冲突并保护文件免受意外修改(例如,团队成员修改代码或他们错误地不拥有的场景)。

除非对此有可靠的支持,否则在大型团队中使用 Godot 仍然很困难。
  • 商业资产商店 (Commercial asset store)

虽然对于非常大的工作室来说,这不是一个感兴趣的领域,但中型工作室仍然依赖大量资产和预制功能。Godot 中目前存在的资产库仅链接到开源资源(例如托管在 GitHub 或 GitLab 上),无法用于商业资产。
对于 Godot 项目,商业资产商店将是增加额外收入来源的好方法,但直到最近他们才考虑到法律相关问题,随着 Godot 的所有权转移到 Godot 基金会,这是一种新的可能性。

Godot 团队表示,虽然本文的目的是阐明这些未实现的工作对于使 Godot 成为更接近商业领域产品的重要性,但是有一个关键细节更加重要:
Godot 是免费的开源软件。因此,任何人都可以对其进行修改以实现任何目的。
目前,许多大型工作室都有能力创建自己的内部技术。尽管如此,随着硬件的开发变得越来越复杂,他们还是放弃了,转而花钱购买现有的商业技术产品。
另一方面,Godot 是一个优秀的构建平台,因为它已经解决了绝大多数问题。因此,越来越多的工作室以 Godot 作为基础,从中衍生出自己的技术。
这是一个双赢的局面,因为它允许他们保持创新的自由,同时避免支付昂贵的技术许可费用。
团队坚信 Godot 会从目前的状态过渡到被更大的工作室更广泛使用的项目,但这肯定需要他们做更多的工作。
相关链接:https://github.com/godotengine/godot-proposals/issues/2380


往期推荐



谷歌多名资深 “开源大佬” 被裁员

大厂裁员轰轰烈烈,哪个技术岗位可以独善其身?

  全球开源技术峰会GOTC 2023将于4月在上海举办



这里有最新开源资讯、软件更新、技术干货等内容

点这里 ↓↓↓ 记得 关注✔ 标星⭐ 哦

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
中国离算力自由还有多远?美国离数据跨境“白名单”还有多远?评EDPB关于环大西洋数据隐私框架的意见最揪心最魔幻最荒诞的两个案子印度经济疫后繁荣,全民富裕还有多远?疫情放开后,经济复苏还有多远?千万别错过明晚直播!【数·未】论坛ChatGPT上岗医疗还有多远?哈佛教授亲测表现接近医生,云知声被曝打造行业版拿骚,姐来了人类首次“核聚变点火”成功!离商业用电还有多远?我们距离疫情的真相还有多远?邻居得了COVID之后银行发钱了!降息还有多远?你退休会搬到这样的地方么?马克思:8小时工作制离我们还有多远?胡鑫宇事件最新细节披露,我们距离真相还有多远?产业爆发背后,国产生物制药离崛起还有多远?请问 ChatGPT:人类离《流浪地球》的技术水平还有多远?AI绘制了这张《经济学人》封面,它离具备人格还有多远?AI大模型下一站:“文生视频”还有多远?RNA疗法,离商业爆发还有多远?营收狂飙的AMD,离躺着赚钱还有多远?如松:楼市狂欢,还有多远?《流浪地球2》那些装备离我们还有多远?网友:众所周知,这部电影是纪录片 | 共青团中央中美距离战争还有多远?一只“流浪气球”引发的外交事故对话|中国离算力自由还有多远?2022 年数据库发展总结:中国和海外数据库差距还有多远?ChatGPT能看病、写论文、通过医学考试,人工智能取代医生还有多远?全球60%茉莉花来自广西这个小城:它距“世界花都”还有多远?“将太阳装进瓶子”还有多远?美宣布首次实现“核聚变点火”!绿氢时代离我们还有多远?升温,但又不按套路!入春还有多远?6G还有多远?原生AI多重要?谁才是未来赢家?疫情放开后,经济复苏还有多远?【数·未】论坛助力中国数字经济这对中国父女40年在同一地点拍照片,火遍国内外!连粮票都用上了,俄罗斯距离苏联还有多远?工业AI距离到达“ChatGPT时刻”还有多远?
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。