Minecraft: Java Edition 26.2, the first version with Vulkan 1.2
112 points
4 days ago
| 6 comments
| minecraft.net
| HN
HelloUsername
4 days ago
[-]
Ooh nice! Would've expected a bigger blog post announcement about it though? Like couple months back: https://www.minecraft.net/en-us/article/another-step-towards... (discussed here: https://news.ycombinator.com/item?id=47068948)
reply
jchw
6 hours ago
[-]
I find this choice interesting. Vulkan is a sensible choice given the game is multiplatform (and of course they mention MoltenVK right in the announcement.) Despite that, I still find it interesting that a Microsoft subsidiary would make this choice given that Vulkan is a direct competitor to Direct3D and that Microsoft seemed to only begrudgingly continue to support OpenGL and wgl. (Am I hallucinating, or was there not a period of time where the graphics drivers shipped from Windows Update simply omitted OpenGL support, leaving you with only the terrible OpenGL 1.4 software renderer?)
reply
willis936
4 hours ago
[-]
The bedrock lineage is microsoft's attempt at microsoftifying minecraft. The team behind bedrock are responsible for showing the world the supremacy of DirectX.

Bedrock is far behind on features and is far buggier compared to java edition. A ground up C++ rewrite is noble beginnings. Unfortunately time has shown that they only planned to get it to an MVP necessary for some gross monetization tactics targeting children and not really a genuine interest in improving the tech, growing fandom goodwill, or creating new art.

reply
pjmlp
3 hours ago
[-]
Because most mods take advantage of Java capabilities, so JavaScript extension points are not as interesting.

However the C++ version has a reason to exist, sadly Java never established itself for gaming outside desktops and J2ME/Android.

One could argue about AOT, but those are not widely adopted, CodenameONE, RobotVM.

reply
invalidname
3 hours ago
[-]
You should check out Codename Ones recent gaming related features...
reply
pjmlp
1 hour ago
[-]
Which was my last sentence.

The issue isn't that it isn't there, it is mindshare among game developers, especially when it isn't part of the official SDK.

This isn't unique to Java, and that is why outside indie games, it is always the same languages that get used among all major studios.

reply
invalidname
1 hour ago
[-]
Sure and I don't argue that. But it also wasn't fully there. This past couple of weeks Codename One introduced some big missing pieces:

* Level builder/game designer * Proper 3d that works natively everywhere (direct 3d on windows, metal on iOS/Mac) * Support for native win32, Linux and mac - real native with no JVM, 5mb binary * Native performance for some edge cases (low level SIMD API etc.)

You're right that mindshare is a huge part, but there were also many important missing pieces especially on the deployment front. I think that with good tooling and a royalty free pitch this might open some doors that were previously closed to Java.

Getting to major studios would be an uphill battle but since they acquire indie studios the path goes through there.

reply
afavour
2 hours ago
[-]
I was under the impression it was because Java wouldn’t work on mobile devices. Is that not the case?
reply
Telaneo
2 hours ago
[-]
It started with that, yes, with Pocket Edition, but then that codebase got used for the console editions. I guess the temptation to monetise was too strong, and monetising Java was probably a lot harder and would spark a lot more outrage.
reply
inigyou
1 hour ago
[-]
When I was 15 I ported Minecraft Java beta 1.2 to android.
reply
vips7L
2 hours ago
[-]
Probably just iOS since Apple bans JIT compilers other than their own.
reply
awakeasleep
2 hours ago
[-]
And then note the curiosity of how microsoft blocks bedrock from running on macos, for some reason.
reply
MindSpunk
1 hour ago
[-]
Consoles ban JITs too.
reply
charcircuit
1 hour ago
[-]
Ignoring that, https://pojavlauncher.app/ supports iOS too.
reply
Rebelgecko
2 hours ago
[-]
IIRC The Android version came out pre-MS acquisition
reply
pjmlp
3 hours ago
[-]
Microsoft the publisher also cares about other OSes, and each studio does whatever they feel like including publishing on mobiles and all game consoles.

Microsoft the Windows/XBox division has other priorities.

reply
jimbob45
2 hours ago
[-]
Is Direct3D not dead? I’m seeing no major releases in years, no notable features pushed (much less teased), and no team to speak of at MS. Is there a team still? Does MS plan to do anything with it? Seems like it’s Bush-era Internet Explorer at this point.
reply
Telaneo
2 hours ago
[-]
reply
ramon156
4 days ago
[-]
> Under Vulkan, we will prefer your dedicated graphics card over any integrated graphics, which is a change from OpenGL

Did OpenGL not do this?

reply
voxic11
4 days ago
[-]
OpenGL doesn't have any way to do this except sometimes via vendor specific extensions. Basically how OpenGL works is it creates the graphics context on whichever device the system hands it. So you can configure the GPU used by OpenGL on the system level but not at the application level.
reply
FrostKiwi
3 hours ago
[-]
FYI, setting `NvOptimusEnablement` and `AmdPowerXpressRequestHighPerformance` have been the canonical way on Windows, `__NV_PRIME_RENDER_OFFLOAD` + `__GLX_VENDOR_LIBRARY_NAME` on Linux. Though not an OpenGL feature per se, as you mentioned.
reply
pjmlp
3 hours ago
[-]
It does so via the respective OS way on how to create OpenGL context.
reply
CyborgCabbage
6 hours ago
[-]
I believe if you plug your monitor into your motherboard then OpenGL will use your integrated graphics rather than your card. I think with Vulkan it doesn't matter what port you plug it in, it can coordinate it?
reply
chainingsolid
4 days ago
[-]
I don't remember being able to pick which card OpenGL uses, while with Vulkan it's a required question the App has to answer...
reply
SugarReflex
6 hours ago
[-]
Is it safe to say that this positively affected me? For the very first time I installed Linux Mint on my old gaming with a 1080 TI and installed Minecraft/Steam. Minecraft ran beautifully and it is Java Edition 26.2. I've had a harder hit and miss time with games on Steam.
reply
QuaternionsBhop
4 hours ago
[-]
Minecraft (and Java) just runs great on Linux. I've personally experienced a 30% performance improvement from Windows.
reply
CyborgCabbage
6 hours ago
[-]
Unless you changed the setting it still uses the OpenGL backend by default
reply
throwaway314155
2 hours ago
[-]
Am I crazy? Even a 1080 TI should have zero problems running Minecraft Java Edition...
reply
Doohickey-d
28 minutes ago
[-]
I even (quite a few years ago) successfully ran an older version of Minecraft on a laptop released in 2003. That had a Radeon 9000 graphics with a whole 32MB of VRAM.

And yes, it was playable with IIRC around 20fps, with minimum settings and a performance-tweaking mod (Optifine?). I played it a lot, since that laptop was all I had.

Even 0ad (the open source RTS game) was playable on that.

That was maybe in 2013 or something like that, so the machine was "only" 10 years old.

reply
UnfitFootprint
1 hour ago
[-]
Raw performance wise yes. Driver wise… I think we can expect instability now game ready drivers are past EoL.
reply
charcircuit
2 hours ago
[-]
Meanwhile. Famous people are being banned from multiplayer for "hate speech" due to an "exploit." This includes both these people's private and public servers. Imagine being banned from visiting your own website. The modern version of the game is a disgrace to what once existed.
reply
bellowsgulch
5 hours ago
[-]
I thought Minecraft has been using bgfx for a while now.
reply
diath
5 hours ago
[-]
Minecraft has two versions, Java and Bedrock (C++), the Bedrock edition uses bgfx: https://www.minecraft.net/en-us/attribution
reply