Wine 프로젝트는 Direct3D 1.4 구현을 갖춘 Vkd3d 12를 출시했습니다.

Wine 프로젝트는 Vulkan 그래픽 API에 대한 브로드캐스트 호출을 통해 작동하는 Direct3D 1.4를 구현한 vkd3d 12 패키지 릴리스를 발표했습니다. 패키지에는 Direct3D 3 구현이 포함된 libvkd12d 라이브러리, 셰이더 모델 3 및 4의 변환기가 포함된 libvkd5d-shader, Direct3D 3 애플리케이션 이식을 단순화하는 기능이 포함된 libvkd12d-utils 및 포트를 포함한 데모 예제 세트가 포함되어 있습니다. Direct3D 12에 대한 glxgears의 프로젝트 코드는 LGPLv2.1에 따라 라이센스가 부여되어 배포됩니다.

libvkd3d 라이브러리는 그래픽 및 계산 기능, 대기열 및 명령 목록, 핸들 및 힙 핸들, 루트 서명, 비순차적 액세스, 샘플러, 명령 서명, 루트 상수, 간접 렌더링, Clear 메서드를 포함한 대부분의 Direct3D 12 기능을 지원합니다. ) 및 복사*().

libvkd3d-shader에서는 셰이더 모델 4와 5의 바이트코드를 중간 SPIR-V 표현으로 변환하는 작업이 구현됩니다. 정점, 픽셀, 테셀레이션, 컴퓨팅 및 단순 지오메트리 셰이더, 루트 서명 직렬화 및 역직렬화를 지원합니다. 셰이더 명령에는 산술, 원자 및 비트 연산, 비교 및 ​​데이터 흐름 제어 연산자, 샘플링, 수집 및 로드 명령, 순서 없는 액세스 작업(UAV, 순서 없는 액세스 보기)이 포함됩니다.

새 버전에서:

  • Внесены многочисленные улучшения в компилятор шейдеров на языке HLSL (High-Level Shader Language), предоставляемом начиная с DirectX 9.0.
  • Предложена новая реализация кучи дескрипторов (Descriptor Heap), использующая Vulkan-расширение VK_EXT_descriptor_indexing.
  • Добавлена новая реализация границ (fence), основанная на Vulkan-расширении K_KHR_timeline_semaphore.

출처 : opennet.ru

코멘트를 추가