D8VK, triển khai Direct3D 8 cho DXVK

D8VK

D8VK là một triển khai Direct3D 8 cho phép bạn chạy các ứng dụng 3D trên Linux bằng Wine.

Vài ngày trước việc phát hành phiên bản ổn định đầu tiên của dự án “D8VK 1.0” đã được công bố, cung cấp một Triển khai API đồ họa Direct3D 8 hoạt động thông qua việc dịch các lệnh gọi API Vulkan và cho phép bạn sử dụng Wine hoặc Proton để chạy các ứng dụng và trò chơi 3D được phát triển cho Windows trên Linux được liên kết với API Direct3D 8.

Như nhiều bạn đã biết, trong Linux, chúng tôi có VKD3D-Proton để dịch Direct3D 12 trong Vulkan, bên cạnh đó chúng tôi cũng có Steam Play sử dụng DXVK để triển khai API Direct3D 9/10/11 trên Vulkan, nhưng đối với phiên bản cũ .triển khai Direct3D 8, không có gì cụ thể.

Đó là lý do tại sao D8VK ra đời, đó là việc triển khai API Microsoft Direct3D 8 cũ trên Vulkan để cải thiện trải nghiệm của các trò chơi cũ hơn.

D8VK 1.0 được đánh dấu là bản phát hành đầu tiên của dự án, phù hợp để sử dụng và thử nghiệm trong hàng trăm trò chơi. So với các dự án WineD3D và d3d8to9 sử dụng bản dịch Direct3D 8 sang OpenGL và Direct3D 9, dự án D8VK thể hiện hiệu suất, độ ổn định và khả năng tương thích với trò chơi tốt hơn.

Ví dụ: khi thử nghiệm trên gói 3DMark 2001 SE, dự án D8VK đã ghi được 144660 điểm, kết hợp giữa d3d8to9 và dxvk – 118033 và WineD3D – 97134.

Sự ra mắt của D8VK 1.0 giới thiệu d3d8.dll(d3d9 được liên kết tĩnh), cũng như một bộ xử lý hàng loạt tùy chỉnh mới đối với một số trò chơi có hành vi không xác định.

Ngoài ra, nó cũng được nhấn mạnh rằng hỗ trợ ghi đè khai báo trình đổ bóng đỉnh cho các trò chơi có hành vi không xác định và bộ đệm đỉnh hiện có thể được lưu trữ trong nhóm tự quản lý để cải thiện hiệu suất và tránh các vấn đề về thứ tự ghi.

Cũng cần lưu ý rằng hỗ trợ biên dịch được triển khai trong MSVC cũng như hỗ trợ cho các truy vấn GetInfo và các loại khối trạng thái hiện được hỗ trợ.

Của những người khác những thay đổi nổi bật:

  • Sửa kích thước mô tả bề mặt dựa trên định dạng
  • Cho phép duy trì cài đặt Proton hiện tại
  • Vô số cài đặt dành riêng cho trò chơi cũng như các tính năng và chỉnh sửa nhỏ
  • Đã sửa lỗi trong đó CreateTexture sẽ cố gắng bọc một kết cấu rỗng
  • Đã sửa lỗi backbuffers không được lưu vào bộ đệm hoặc được tham chiếu đến thiết bị sở hữu
  • Đã sửa lỗi kết cấu, luồng và chỉ mục không bị xóa khi khởi động lại
  • Đã sửa vị trí của Direct3DCreate8 trong d3d8.def
  • Đã sửa số lượng tham chiếu cho mục tiêu hiển thị, mẫu độ sâu và kết cấu.
  • Đã sửa lỗi trình đổ bóng pixel null không được ghi nhớ
  • Đã sửa lỗi kết xuất mục tiêu và mẫu độ sâu không được lưu vào bộ đệm
  • Đã sửa lỗi nếu máy khách cố bật SWVP trên thiết bị phần cứng
  • Đã sửa lỗi thiết bị không bẻ khóa
  • Đã sửa lỗi segfault khi phát hành thiết bị có kết cấu bị ràng buộc

Cuối cùng, nếu bạn quan tâm có thể biết thêm về nó, bạn có thể tham khảo chi tiết Trong liên kết sau đây.

Bạn nên biết rằng mã dự án được viết bằng ngôn ngữ C++ và được phân phối theo giấy phép Zlib. Cơ sở mã của dự án DXVK với việc triển khai Direct3D 9, 10 và 11 trên Vulkan đã được sử dụng làm cơ sở để phát triển.

Làm cách nào để cài đặt D8VK trên Linux?

Đối với những người quan tâm đến việc có thể cài đặt D8VK, họ nên biết rằng việc thực hiện nó khá đơn giản và không yêu cầu nhiều. Chỉ cần mở một thiết bị đầu cuối để có thể tải phiên bản mới. Trong đó, chúng ta sẽ gõ lệnh sau:

git clone https://github.com/AlpyneDreams/d8vk.git

Hoặc nếu bạn muốn tải xuống từ trình duyệt của mình (bạn chỉ cần giải nén tệp và đặt mình vào một thiết bị đầu cuối bên trong thư mục), bạn có thể thực hiện bằng cách nhấp vào trong liên kết này.

Xong việc này, bây giờ chúng ta sẽ vào thư mục với:

cd d8vk

Và chúng tôi tiến hành thực hiện d8vk tùy từng trường hợp. Để triển khai nó với Wine, chúng ta phải gõ như sau:

./setup_d3d8.sh install --no-proton

Hoặc trong trường hợp muốn triển khai với Proton thì lệnh phải gõ như sau:

./setup_d3d8.sh install

Nếu bạn muốn biết thêm về cách sử dụng hoặc cài đặt cho các trường hợp cụ thể, bạn có thể tham khảo liên kết sau.


Hãy là người đầu tiên nhận xét

Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: AB Internet Networks 2008 SL
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.