Wine projesi Direct3D 1.3 uygulamasıyla Vkd3d 12'yi yayınladı

Bir buçuk yıllık geliştirme sürecinin ardından Wine projesi, Vulkan grafik API'sine çağrı yayınlama yoluyla çalışan Direct3D 1.3 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 hesaplama 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'da, gölgelendirici modelleri 4 ve 5'in bayt kodunun bir ara SPIR-V temsiline çevirisi uygulanır. Köşe, piksel, mozaikleme, hesaplama ve basit geometri gölgelendiricileri, kök imza serileştirme ve seri durumdan çıkarma desteklenir. 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.

Vkd3d 1.3'teki en önemli yenilikler arasında şunlar yer almaktadır:

  • DirectX 9.0'dan başlayarak HLSL'de (Yüksek Düzey Gölgelendirici Dili) gölgelendiricilerin derlenmesi ve ön işlenmesi için başlangıç ​​desteği eklendi.
  • 5.1 gölgelendirici modelinde tanımlanan tanımlayıcı dizileri için destek eklendi.
  • Gölgelendiricilerde çift duyarlıklı kayan nokta işlemleri, mozaik gölgelendiriciler için dolaylı adresleme, gölgelendiricilerden şablonların dışa aktarımı, "hassas" bir gölgelendirici değiştirici ve bellek kaynaklarına yönelik genel engeller için destek sağlar.
  • Direct3D gölgelendiricilerini bayt kodundan montaj temsiline ayırma yeteneği uygulandı.
  • Direct3D 3, 1 ve 2 gölgelendirici modellerinde kullanılan eski Direct3D bayt kodu formatının ayrıştırılması için destek eklendi.
  • libvkd3d, kök imzalar, sıra dışı görünüm sayaçları, çıktı için mantıksal birleştirme operatörleri ve ayna_once doku adresleme modu gibi Direct3D 12 özelliklerini ekler. Vkd3d_host_time_domain_info yapısı eklendi.

Kaynak: opennet.ru

Yorum ekle