Ứng cử viên phát hành Wine 8.0 và bản phát hành vkd3d 1.6

Thử nghiệm đã bắt đầu trên ứng cử viên phát hành đầu tiên Wine 8.0, một triển khai mở của WinAPI. Cơ sở mã đã được đưa vào giai đoạn đóng băng trước khi phát hành, dự kiến ​​vào giữa tháng 7.22. Kể từ khi phát hành Wine 52, 538 báo cáo lỗi đã bị đóng và XNUMX thay đổi đã được thực hiện.

Những thay đổi quan trọng nhất:

  • Gói vkd3d có triển khai Direct3D 12 hoạt động thông qua các cuộc gọi truyền phát tới API đồ họa Vulkan đã được cập nhật lên phiên bản 1.6.
  • Tối ưu hóa bộ chuyển đổi cuộc gọi hệ thống (thunks) cho Vulkan và OpenGL đã được thực hiện.
  • WinPrint đã mở rộng hỗ trợ cho bộ xử lý In.
  • Bảng điều khiển cần điều khiển được cải tiến.
  • Công việc đã được hoàn thành để cung cấp hỗ trợ cho loại 'dài' trong mã hàm printf.
  • Báo cáo lỗi liên quan đến hoạt động của các trò chơi đã bị đóng: Tom Clancy's Rainbow Six: Vegas 2, The Void, Ragnarok Online, Drakan, Star Wars, Colin McRae, X-COM.
  • Đã đóng báo cáo lỗi liên quan đến hoạt động của các ứng dụng: TMUnlimiter 1.2.0.0, MDB Viewer Plus, Framemaker 8, Studio One Professional 5.

Ngoài ra, chúng ta có thể lưu ý việc dự án Wine xuất bản gói vkd3d 1.6 với việc triển khai Direct3D 12, hoạt động thông qua việc dịch các lệnh gọi sang API đồ họa Vulkan. Gói này bao gồm các thư viện libvkd3d với việc triển khai Direct3D 12, libvkd3d-shader với trình dịch các mô hình đổ bóng 4 và 5 và libvkd3d-utils với các chức năng đơn giản hóa việc chuyển các ứng dụng Direct3D 12, cũng như một tập hợp các ví dụ demo, bao gồm một cổng của glxgears sang Direct3D 12. Mã dự án được phân phối theo giấy phép LGPLv2.1.

Thư viện libvkd3d hỗ trợ hầu hết các tính năng của Direct3D 12, bao gồm các phương tiện đồ họa và điện toán, hàng đợi và danh sách lệnh, bộ điều khiển và bộ xử lý vùng heap, chữ ký gốc, quyền truy cập không theo thứ tự, Bộ lấy mẫu, chữ ký lệnh, hằng số gốc, hiển thị gián tiếp, Phương thức xóa *( ) và Sao chép*(). Trong libvkd3d-shader, việc dịch mã byte của mô hình đổ bóng 4 và 5 sang dạng biểu diễn SPIR-V trung gian được triển khai. Hỗ trợ các trình đổ bóng đỉnh, pixel, tessellation, tính toán và hình học đơn giản, tuần tự hóa và giải tuần tự hóa chữ ký gốc. Các lệnh đổ bóng bao gồm các phép toán số học, nguyên tử và bit, các toán tử so sánh và kiểm soát luồng dữ liệu, các lệnh lấy mẫu, thu thập và tải, các thao tác truy cập không có thứ tự (UAV, Chế độ xem truy cập không có thứ tự).

Phiên bản mới tiếp tục cải tiến trình biên dịch đổ bóng trong HLSL (Ngôn ngữ đổ bóng cấp cao), được cung cấp bắt đầu từ DirectX 9.0. Các cải tiến liên quan đến HLSL bao gồm:

  • Hỗ trợ ban đầu cho trình đổ bóng điện toán đã được triển khai.
  • Cải thiện hỗ trợ khởi tạo và gán các đối tượng tổng hợp như cấu trúc và mảng.
  • Đã thêm khả năng tải và lưu tài nguyên kết cấu bằng cách sử dụng quyền truy cập không theo thứ tự (UAV).
  • Đã thêm hỗ trợ cho các thuộc tính hàm và triển khai các hàm tích hợp asuint(), length(), normalize().
  • Đã thêm hỗ trợ cho các mô-đun dấu phẩy động.
  • Đã triển khai cờ VKD3D_SHADER_DESCRIPTOR_INFO_FLAG_UAV_ATOMICS để biểu thị các hoạt động nguyên tử trên bộ mô tả biểu diễn truy cập không theo thứ tự (UAV).

Nguồn: opennet.ru

Thêm một lời nhận xét