12 poin oleh GN⁺ 2026-02-20 | 3 komentar | Bagikan ke WhatsApp
  • Minecraft Java Edition beralih dalam mesin rendering grafis dari OpenGL ke Vulkan
  • Latar belakang perubahan ini adalah berhentinya pembaruan OpenGL dan berakhirnya dukungan di macOS setelah digunakan sejak 1990-an
  • Vulkan mendapat dukungan bawaan di Windows dan Linux, sementara di macOS didukung melalui translation layer tanpa penurunan performa
  • Melalui transisi ini, diharapkan ada peningkatan kualitas visual dan frame rate
  • Setelah pengujian paralel OpenGL dan Vulkan di snapshot, OpenGL akan dihapus jika stabilitas sudah terjamin

Bringing modern rendering to Java

  • Di Minecraft: Java Edition, pekerjaan persiapan untuk Vibrant Visuals terus berlanjut, termasuk refactoring dan modernisasi kode rendering
    • Pekerjaan perbaikan struktur kode rendering telah dilakukan lewat pembaruan sebelumnya
    • Kini telah memasuki tahap penggantian teknologi fondasi rendering itu sendiri
  • Teknologi rendering game akan dialihkan dari OpenGL ke Vulkan
    • Tujuannya untuk membuka kemungkinan baru dari sisi grafis dan performa
    • Diperkirakan akan berdampak pada komunitas modding dan sebagian pemain

What are we changing?

  • Saat ini Java Edition menggunakan OpenGL graphics API yang dibuat pada 1990-an
    • Sejak awal peluncuran, game ini mempertahankan basis OpenGL
  • Alasan adopsi OpenGL adalah karena memungkinkan dukungan lintas Linux, Windows, dan macOS
    • Dirancang agar dapat berjalan di hampir semua PC dan Mac
  • OpenGL berhenti diperbarui 9 tahun lalu, berstatus deprecated di macOS, dan nantinya tidak akan bisa dijalankan
  • Demi kompatibilitas macOS, mereka harus bertahan di OpenGL versi lama, yang membuat modernisasi codebase menjadi sulit
  • Agar Java Edition tetap bisa berjalan di sebagian besar PC, termasuk macOS dan Linux, transisi dari OpenGL diperlukan

Introducing: Vulkan

  • Vulkan adalah graphics API yang telah digunakan di pasar selama lebih dari 10 tahun dan diadopsi luas oleh vendor hardware utama
  • Didukung secara bawaan di Windows dan Linux modern, sementara macOS dapat didukung melalui translation layer tanpa penurunan performa
  • Dalam jangka panjang, ini membuka peluang peningkatan performa dan perluasan fitur
    • Menyediakan fondasi yang dibutuhkan untuk implementasi Vibrant Visuals
  • Jika GPU berusia lebih dari 10 tahun, ada kemungkinan Vulkan tidak didukung

What does this mean for modders?

  • Peralihan dari OpenGL ke Vulkan akan memengaruhi mode rendering berbasis OpenGL
  • Pekerjaan migrasi ke Vulkan diperkirakan membutuhkan usaha lebih besar daripada sekadar menyesuaikan rilis biasa
  • Komunitas modding dianjurkan untuk mengurangi ketergantungan pada OpenGL
    • Disarankan untuk memaksimalkan penggunaan internal rendering API
    • Jika perlu, diskusi teknis langsung dengan tim pengembang dimungkinkan
  • Diskusi teknis dilakukan di channel Discord Vibrant Visuals
    • Bukan channel pengumuman, melainkan ruang diskusi teknis mendalam antar developer

What does this mean for players?

  • Ada kemungkinan beberapa mod akan terdampak selama proses transisi
    • Para pembuat mod mungkin memerlukan waktu untuk memperbaruinya
  • Di snapshot mendatang, OpenGL dan Vulkan akan disediakan secara paralel
    • Di snapshot maupun versi final, pemain dapat memilih renderer
    • Pekerjaan untuk meminimalkan bug dan memastikan stabilitas akan berjalan bersamaan
  • Bug diminta untuk dilaporkan melalui bugs.mojang.com

When is this happening?

  • Targetnya adalah menghadirkan Vulkan ke pengujian snapshot pada musim panas
  • Selama masa pengujian, pemain dapat berpindah antara OpenGL dan Vulkan
  • Jika verifikasi stabilitas dan performa selesai, implementasi OpenGL akan dihapus
    • Akan ada pemberitahuan sebelumnya sebelum penghapusan
    • Persyaratan spesifikasi minimum juga akan diperbarui

Vulkan and Vibrant Visuals

  • Modernisasi renderer adalah tahap inti dalam roadmap Vibrant Visuals
  • Dengan transisi ke Vulkan, ruang untuk peningkatan grafis dan kemampuan performa akan semakin besar
  • Diharapkan bug yang berasal dari driver juga akan berkurang
  • Tujuan utamanya adalah memastikan game tetap dapat berjalan di macOS secara berkelanjutan
    • Agar semua pemain di sistem operasi yang didukung bisa ikut serta secara setara

Makna pembaruan ini

  • Transisi kali ini adalah langkah penting bagi Minecraft Java untuk berpindah ke modern graphics technology stack
  • Ini memperkuat fondasi teknis game engine sehingga lebih menguntungkan untuk skalabilitas dan penambahan fitur di masa depan
  • Perpindahan dari OpenGL ke Vulkan juga sejalan dengan pergantian generasi graphics API di industri game secara luas

3 komentar

 
GN⁺ 2026-02-20
Komentar Hacker News
  • Seiring waktu, semoga overhead CPU di main thread berkurang
    Game-game yang di-port dari DX11 ke 12, atau dari OpenGL ke Vulkan, bukan hanya mendapat peningkatan performa karena sekadar mengganti API, tetapi karena bisa memanfaatkan pemrosesan draw call paralel
    Di Minecraft, bottleneck terjadi karena CPU lebih lambat daripada kecepatan GPU merender, jadi dengan perubahan ini diharapkan ada ruang CPU tambahan bahkan di lingkungan modding

    • Saya memakai Unigine Heaven untuk benchmark sistem Linux
      Iseng saya coba menjalankan versi Windows lewat Proton, dan performanya justru naik 30%
      Mungkin karena multithreading dari library dxvk yang dipakai Proton
    • Vulkan punya fitur yang memungkinkan sebagian komputasi dijalankan langsung di GPU, jadi sepertinya bisa mempercepat rendering voxel
  • Menurut saya ini pilihan yang masuk akal karena Minecraft Java Edition hanya untuk desktop, jadi bisa menghindari masalah driver Vulkan di mobile
    Tapi untuk perusahaan sekelas Microsoft, saya sempat berpikir mereka punya kapasitas untuk membuat RHI cross-platform yang memakai API stabil per platform (DX12, Metal)

    • Microsoft memang besar, tetapi studio Mojang tidak sebesar itu
      Menjaga tiga versi renderer Java tetap terawat adalah beban besar, apalagi ekosistem modding adalah inti pentingnya, jadi perubahan kali ini saja kemungkinan sudah cukup membingungkan
      Rasanya tidak perlu membuat perawatan shader mod jadi lebih sulit lagi
    • Bedrock Edition memakai bgfx (sumber resmi)
    • Di mobile, launcher pihak ketiga memakai driver EGL atau Metal melalui ANGLE
    • Memilih antara Vulkan dan DX12 sebenarnya hanya perbedaan yang dangkal
      Vulkan juga bisa dijalankan di macOS, jadi saya kurang paham kenapa proyek baru masih perlu memilih DX12
  • Di Acer C720 Chromebook lama saya (Intel HD4400 iGPU), Vulkan tidak didukung jadi sepertinya Minecraft akan rusak
    Dulu kelebihannya adalah bisa berjalan di hampir semua hardware, jadi ini agak disayangkan

    • Jika bisa beralih antara rendering OpenGL dan Vulkan, sepertinya saya masih bisa terus bermain dengan OpenGL
    • Versi Java juga bisa dijalankan di versi lama, jadi masih bisa terus menikmati 1.7.10
    • Di driver Mesa, chipset itu mendukung sebagian fitur Vulkan
    • Saya juga masih memakai C720. Saya simpan di casing untuk perlengkapan SDR, dan itu benar-benar salah satu komputer favorit saya
    • Menarik bahwa OpenGL berhasil mencapai kompatibilitas tertinggi di berbagai perangkat
  • Saya penasaran kenapa komentarnya tidak dipindahkan ke sumbernya (thread terkait)

    • Pada akhirnya, ini terasa seperti contoh bahwa timing lebih penting daripada kontennya
  • Menarik bahwa Microsoft sekarang lebih dekat ke standar Khronos daripada Apple
    Mereka mengadopsi SPIR-V sebagai format output dan input untuk compiler shader DirectX, sehingga interoperabilitas dengan Vulkan meningkat

    • Microsoft sebenarnya sudah mengadopsi SPIR-V sejak lama, dan tujuannya besar kemungkinan untuk mengurangi fork berkat sebagian pekerjaan yang sudah dilakukan Google
      Apple sangat tidak puas dengan cara OpenCL ditangani, dan Sony serta Nintendo hampir tidak tertarik pada Khronos
      Pada praktiknya, API Khronos juga kurang portabel sepenuhnya karena masalah extension spaghetti
  • VulkanMod memberi peningkatan performa besar, tetapi tidak kompatibel dengan sebagian besar mod
    Jika nanti Vulkan bisa dipakai di modpack penuh, itu akan sangat menarik

  • Saya harap Vibrant Visuals segera hadir juga di Java Edition
    Agak disayangkan karena untuk memakai shader selalu perlu mod

    • Sebenarnya sejak 1.17, shader GL di resource pack bisa langsung disertakan
      Instalasinya cukup drag-and-drop file .zip tanpa loader rumit atau risiko keamanan
      Memang tidak sefleksibel Aperture, Iris, atau Optifine, tetapi fiturnya cukup mirip
      Saya penasaran apakah shader Vulkan juga nanti bisa dimasukkan ke resource pack. Namun mungkin itu akan dibatasi karena risikonya lebih besar untuk merusak fungsi game
    • Memainkan Java Edition tanpa mod terasa agak aneh. Kalau begitu, bukankah Bedrock justru lebih sederhana?
  • Saya tidak tahu bahwa ada binding Vulkan untuk Java. Mungkin memakai JNI
    Agak mengejutkan juga bahwa mereka masih memakai OpenGL. Saya tidak terlalu mengikuti kondisi Minecraft saat ini, dan ini juga pertama kalinya saya tahu ada versi desktop non-Java

    • JNI sekarang pada dasarnya sudah digantikan oleh Foreign Function & Memory API
      Pengelolaan memorinya jauh lebih rapi, dan binding ke fungsi eksternal (seperti Vulkan) jadi jauh lebih mudah
      Menurut saya ini salah satu fitur Java modern yang paling kurang diapresiasi
    • Semoga mereka memakai FFM API, bukan JNI
  • Saya penasaran kenapa game yang sama dipertahankan dalam dua versi

    • Awalnya mereka ingin beralih sepenuhnya ke Bedrock, tetapi karena API modding-nya kurang matang dan bug-nya banyak, Java tetap lebih disukai
      Bedrock memang hampir mengejar dari sisi fitur, tetapi sebagai pengganti penuh tetap gagal
    • Java berpusat pada komunitas modding, jadi jika itu dihapus, ekosistem YouTube dan Twitch berisiko runtuh
      Bedrock lebih unggul dalam performa dan portabilitas, tetapi di konsol modding memang tetap tidak memungkinkan
    • Jika ekosistem Java hilang, game-nya sendiri bisa ikut mati
      90% konten YouTube berbasis Java, jadi Microsoft sedang fokus mengejar kesetaraan fitur
    • Modding di Bedrock terbatas dan komunitas Java memang tidak tertarik
      Dari sudut pandang Microsoft, mempertahankan dua versi untuk memaksimalkan pendapatan adalah hal yang masuk akal
    • Kalau Java dihentikan, banyak pemain (termasuk saya) akan berhenti bermain
  • Semoga mereka benar-benar mengatasi masalah stutter akibat kompilasi shader Vulkan

    • Renderer Minecraft tampaknya tidak terlalu bergantung pada PSO, jadi sepertinya tidak akan ada masalah stutter berbasis state
      Ini karena sistemnya bukan material system yang rumit, melainkan renderer voxel yang sederhana
    • Vulkan menyediakan semua alat untuk menghindari jeda akibat kompilasi shader
      Masalah biasanya muncul saat engine menghasilkan terlalu banyak kombinasi shader, atau ketika state GPU tertentu (misalnya blending) memicu kompilasi ulang shader
      Di Vulkan modern, sebagian besar state bisa ditangani sebagai dynamic state, sehingga masalah ini bisa dikurangi
      Namun beberapa state seperti blending masih bisa memicu kompilasi ulang
      Jadi, jika pengembang menghindari dynamic state tersebut, jeda ini cukup mudah dicegah
    • Menurut saya masalah seperti ini bukan cacat Vulkan, melainkan akibat kurangnya optimisasi dari pengembang
      Belakangan ini banyak studio game besar yang terlihat kurang serius dalam optimisasi teknis
    • Dari sudut pandang pemula, saya jadi bertanya-tanya apakah ini tidak bisa diselesaikan dengan shader yang sudah dikompilasi sebelumnya
 
aer0700 2026-02-21

Minecraft awalnya adalah game yang dikembangkan dengan Java, tetapi setelah dijual ke MS ternyata dibuat sekali lagi dengan C++. Mereimplementasikan satu game utuh dengan mengganti bahasa pengembangannya pasti bukan pekerjaan mudah, jadi menarik juga bagaimana itu bisa terjadi.

 
karikera 2026-02-24

Sepertinya mereka memang membuat edisi Bedrock untuk tujuan optimasi mobile..
Saya sempat berpikir mereka akan meninggalkan Java, tapi pada akhirnya sepertinya keduanya sama-sama terus diperbarui.