Direct3D 1.7 uygulamasıyla Vkd3d 12 yayınlanan şarap projesi

Wine projesi, Vulkan grafik API'sine çağrı yayınlama yoluyla çalışan Direct3D 1.7 uygulamasını içeren vkd3d 12 paketinin sürümünü yayınladı. Paket, Direct3D 3 uygulamalarına sahip libvkd12d kitaplıklarını, gölgelendirici modelleri 3 ve 4'in çeviricisine sahip libvkd5d-shader'ı ve Direct3D 3 uygulamalarının taşınmasını basitleştirmeye yönelik işlevlere sahip libvkd12d-utils'in yanı sıra bir bağlantı noktası da dahil olmak üzere bir dizi demo örneğini içerir. glxgears'ın Direct3D 12'ye sürümü. Proje kodu LGPLv2.1 kapsamında lisanslanarak dağıtılmaktadır.

Libvkd3d kitaplığı, grafikler ve bilgi işlem olanakları, kuyruklar ve komut listeleri, tanıtıcılar ve yığın tanıtıcıları, kök imzalar, sıra dışı erişim, Örnekleyiciler, komut imzaları, kök sabitleri, dolaylı işleme, Temizleme yöntemleri dahil olmak üzere çoğu Direct3D 12 özelliğini destekler *( ) ve Kopyala*(). libvkd3d-shader, gölgelendirici modelleri 4 ve 5'in bayt kodunun bir ara SPIR-V temsiline çevrilmesini uygular. Köşe, piksel, mozaikleme, hesaplama ve basit geometri gölgelendiricileri, kök imza serileştirme ve seri durumdan çıkarma işlemlerini destekler. Gölgelendirici talimatları aritmetik, atomik ve bit işlemlerini, karşılaştırma ve veri akışı kontrol operatörlerini, örnekleme, toplama ve yükleme talimatlarını, sırasız erişim işlemlerini (UAV, Sırasız Erişim Görünümü) içerir.

Yeni sürümde:

  • HLSL'deki (Yüksek Düzey Gölgelendirici Dili) gölgelendirici derleyicisini iyileştirmeye yönelik çalışmalar devam etti:
    • Özel işlevleri çağırma ve dizileri özel işlevlere parametre olarak kullanma yeteneği eklendi.
    • SV_DispatchThreadID, SV_GroupID ve SV_GroupThreadID parametreleri için destek eklendi.
    • all(), distance(), exp(), exp2(), frac(), lit(), Reflect(), sin(), cos(), smoothstep(), sqrt(), rsqrt gibi yerleşik işlevler eklendi () , adım(), devrik().
    • "Min16float" gibi düşük hassasiyetli kayan nokta türleri için başlangıç ​​desteği eklendi.
  • Direct3D 1/2/3 gölgelendirici modeli profilleri için önemli ölçüde geliştirilmiş destek.
  • DXBC ikili verilerinin ayrıştırılması (vkd3d_shader_parse_dxbc) ve serileştirilmesi (vkd3d_shader_serialize_dxbc) için genel API eklendi.

Kaynak: opennet.ru

Yorum ekle