Versi baharu vkd3d 1.3 telah pun dikeluarkan

Selepas satu setengah tahun pembangunan, danprojek Wine mengumumkan pelancaran versi baharu pakej «vkd3d 1.3″ dengan pelaksanaan Direct3D 12 yang berfungsi melalui terjemahan panggilan ke API grafik Vulkan.

Versi ini mengandungi pelbagai penambahbaikan dan yang mana dalam versi baharu ini sorotan ialah sokongan binaan HLS awalL, serta Sokongan tatasusunan deskriptor Model Shader 5.1, sokongan untuk menyahlekap shader Direct3D, dan banyak lagi.

Bagi mereka yang tidak mengetahui pakej tersebut, mereka harus tahu itu termasuk perpustakaan libvkd3d dengan pelaksanaan Direct3D 12, libvkd3d-shader dengan penterjemah shader model 4 dan 5 dan libvkd3d-utils dengan fungsi untuk mempermudah penghijrahan aplikasi Direct3D 12, serta sekumpulan demo, termasuk port glxgears ke Direct3D 12. Kod projek diedarkan berlesen di bawah LGPLv2.1.

Perpustakaan libvkd3d menyokong sebahagian besar ciri Direct3D 12, termasuk fungsi graf dan pengiraan, senarai perintah dan baris gilir, deskriptor dan deskriptor timbunan, tandatangan akar, akses tidak tertib, pensampel, tandatangan arahan, pemalar akar, perwakilan proksi, dsb.

libvkd3d-shader melaksanakan terjemahan kod byte 4 dan 5 daripada model teduhan dalam perwakilan perantaraan SPIR-V. Pucuk, piksel, teselasi, pengiraan dan pelorek geometri ringkas, siri tandatangan akar dan penyahsirilan disokong.

Arahan shader merangkumi operasi aritmetik, atom dan bitwise, pengendali aliran data dan pengendali perbandingan, contoh, arahan pengumpulan dan pemuatan, operasi akses tanpa pesanan (UAV, paparan akses tidak teratur).

Pada tahap perkembangan semasa, tidak semua panggilan ke Direct3D 12 dilaksanakan dan ujian telah dijalankan terutamanya pada satu set aplikasi demo.

Ciri baru utama Vkd3d 1.3

Dalam versi baharu vkd3d 1.3 yang dibentangkan ini, ia diserlahkan menambah sokongan awal untuk menyusun dan pra-pemarahan shader dalam HLSL (bahasa shader peringkat tinggi), yang disediakan sejak DirectX 9.0.

Satu lagi perubahan yang menonjol dalam versi baru ini adalah sokongan untuk operasi titik terapung berketepatan berganda dalam shader, serta arahan untuk pelorek teselasi, eksport templat daripada pelorek, pengubah suai "tepat" dan halangan global untuk sumber dalam memori.

Kita juga boleh mendapati bahawa keupayaan untuk membuka pelorek Direct3D daripada kod daripada bait kepada perwakilan pemasang, serta sokongan tambahan untuk menghuraikan format kod bait Direct3D lama yang digunakan dalam model Direct3D 1, 2 dan 3 shader.

libvkd3d menambah ciri Direct3D 12, seperti tandatangan akar, pembilang carian tidak tertib, boolean gabungan keluaran, mod pengalamatan tekstur mirror_sekali dan struktur vkd3d_host_time_domain_info yang ditambahkan.

Daripada perubahan yang lain yang menonjol dari versi baru ini:

  • vkd3d_shader_preprocess_info memanjangkan struktur vkd3d_shader_compile_info, dan boleh digunakan untuk menentukan parameter prapemprosesan seperti takrifan makro prapemproses.
  • vkd3d_shader_hlsl_source_info memanjangkan struktur vkd3d_shader_compile_info, dan boleh digunakan untuk menentukan HLSL dan membina parameter seperti profil sasaran dan titik masuk.
  • Pautkan model Direct3D 12 dan Vulkan
  • VKD3D_SHADER_COMPILE_OPTION_API_VERSION boleh digunakan untuk menentukan versi API libvkd3d-shader yang disasarkan oleh aplikasi. Jika tidak dinyatakan, VKD3D_SHADER_API_VERSION_1_2 akan digunakan.
  • vkd3d-compiler akan lalai kepada output warna jika ia dapat menentukan bahawa
    output adalah teleprinter berkebolehan warna.
  • Sokongan tambahan untuk tatasusunan deskriptor yang ditakrifkan dalam Model Shader 5.1.

Akhirnya sekiranya anda ingin mengetahui lebih lanjut mengenainya mengenai versi baharu ini, anda boleh merujuk senarai lengkap perubahan Dalam pautan berikut.

Bagaimana cara memasang vkd3d di Linux?

Bagi mereka yang berminat untuk memasang vkd3d pada sistem mereka, mereka harus mendapatkan kod sumber dan meneruskan penyusunannya, walaupun untuk tujuan praktikal atau untuk pemula itu, mereka dapat mencuba perpustakaan ini tanpa banyak usaha. Untuk ini mereka hanya perlu memasang lutris dan mengikut konfigurasinya.

Bagi mereka yang berminat dalam penyusunan, mereka mesti mendapatkan kod dengan:

git clone git://source.winehq.org/git/vkd3d.git/
./autogen.sh
./configure
make
../vkd3d/configure --build=i686-pc-linux-gnu "CPPFLAGS=-m32" "LDFLAGS=-m32"

Akhirnya, lapisan Vulkan mesti diaktifkan:

export VK_INSTANCE_LAYERS=VK_LAYER_LUNARG_standard_validation
VKD3D_CONFIG=vk_debug


Tinggalkan komen anda

Alamat email anda tidak akan disiarkan. Ruangan yang diperlukan ditanda dengan *

*

*

  1. Bertanggungjawab atas data: Miguel Ángel Gatón
  2. Tujuan data: Mengendalikan SPAM, pengurusan komen.
  3. Perundangan: Persetujuan anda
  4. Komunikasi data: Data tidak akan disampaikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Pangkalan data yang dihoskan oleh Occentus Networks (EU)
  6. Hak: Pada bila-bila masa anda boleh menghadkan, memulihkan dan menghapus maklumat anda.