Minecraft Java版弃用GLFW,全面拥抱SDL3
Minecraft: Java Edition now uses SDL3
瑞典的假期让Minecraft的更新节奏变得有点随意,但这期的Snapshot 4却带来了重磅技术变革。我们正式将窗口管理、输入处理和平台集成的底层库从GLFW切换到了SDL3。这次更新不仅让Linux原生支持Wayland,还彻底重写了键盘绑定逻辑,改用物理按键而非布局代码。此外,旁观模式玩家现在可以互动传送门,创意模式物品栏也进行了重新排序。虽然独占全屏模式在Windows和Wayland上还有些小Bug,但这次底层架构的升级无疑为未来的跨平台体验打下了更坚实的基础。
在今天的快照版本中,我们将用于窗口管理、输入处理和平台集成的底层库从GLFW切换到了SDL3。
HN 评论区
268- malteeez
这个项目的 lwjgl 绑定是由 GTNH 整合包团队的一名成员编写的,从而再次完成了从原版到模组再回到原版的循环 https://github.com/LWJGL/lwjgl3/pull/1033
- shakna
> 已知问题
> 在 Windows 上,独占全屏模式在某些情况下可能导致游戏崩溃,尤其是在使用多显示器时
> 在 Wayland 上进入独占全屏模式会导致游戏崩溃
> 这些问题加在一起,看起来像是通常会推迟快照发布的阻塞性 Bug……希望它在正式发布前能被修复……
- bondolo
我最近将一款游戏 Tribal Trouble (https://github.com/bondolo/tribaltrouble) 从 GLFW 迁移到了 SDL3。这大部分是一次无痛的重构,尽管我在独占全屏模式和桌面全屏模式上遇到了一些问题,但最终都解决了。
我写了一个关于屏幕模式处理的演示程序,用来测试和记录那些繁琐的细节。
https://github.com/bondolo/SDL3-Fullscreen-Demo
这款游戏和 Minecraft 一样是用 Java 写的,但演示程序是用 C 写的,因为我想把它保持得尽可能简单。
- velcrovan
有没有哪位懂技术的爸爸给点建议?我完全没有(零)Minecraft 经验,想在 2026 年为家人搭建一个 Minecraft 服务器。孩子们现在是用 iPad 玩,有时候也会用旧款 Macbook 或 Windows PC。
- hiccuphippo
Icculus 有一些很棒的游戏从 SDL2 移植到 SDL3 的视频,这是移植 Doom 的那一期:https://www.youtube.com/watch?v=ixdeGhsoxy8
- LelouBil
Minecraft 正变得越来越像一个独立的游戏引擎,而不仅仅是一款游戏,这真的很令人惊叹。
- mort96
有没有哪里记录了从 GLFW 切换过来的理由?我很想读一读,我自己有一些项目在使用 GLFW,也一直在琢磨 SDL 会不会更好。
- nekiwo
osu(那个节奏游戏)最近也刚从 SDL2 切换到了 SDL3,带来了显著的性能和延迟改善。SDL3 的采用速度似乎有点慢。不过,我挺惊讶 Minecraft 居然一直用 GLFW 到现在。
值得一提的是,切换到 SDL3 后,玩 osu 时打开 Discord 客户端造成的延迟消失了。这应该是在他们 YouTube 的开发日志里提到的。