Computer >> Máy Tính >  >> Hệ thống >> Windows

Sự khác biệt giữa DirectX 11 và DirectX 12 là gì?

Sự khác biệt giữa DirectX 11 và DirectX 12 là gì?

DirectX là một tập hợp các API, hoặc giao diện lập trình ứng dụng, được phần mềm sử dụng để hiển thị nội dung đa phương tiện và giao tiếp với phần cứng đồ họa. API thành phần chính của DirectX, Direct3D, xử lý thông tin liên lạc giữa phần mềm và phần cứng đồ họa. Vì tất cả phần cứng đều khác nhau nên việc sử dụng thư viện hàm và lệnh gọi được chuẩn hóa để giao tiếp với cạc đồ họa của bạn sẽ tăng tốc độ phát triển trò chơi. Đây được gọi là trừu tượng hóa phần cứng và nó là công việc chính của API.

Nghĩ về ô tô:Nếu bạn có thể lái một chiếc ô tô, bạn có thể lái tất cả chúng. Bàn đạp ga và phanh ở cùng một vị trí, vô lăng quay cùng chiều và cửa mở ra bên ngoài. Có thể có một số khác biệt nhỏ trong các tính năng không quan trọng như radio, nhưng về tổng thể, bạn biết điều gì sẽ xảy ra. DirectX và Direct3D là như vậy, cho phép các nhà phát triển giao tiếp với nhiều loại phần cứng bằng các công cụ giống nhau. Và vì hầu hết các nhà phát triển trò chơi đều sử dụng thư viện tiêu chuẩn của Direct3D, bất kỳ thay đổi nào đối với API đều có thể ảnh hưởng đến người chơi và người lập trình như nhau.

Có gì mới trong DirectX 12?

Sự khác biệt giữa DirectX 11 và DirectX 12 là gì?

Mỗi bản cập nhật lớn cho DirectX và Direct3D đều mang đến những tính năng và sự phát triển mới. Tuy nhiên, Direct3D 12 đã mang lại một số thay đổi đặc biệt quan trọng. Trên thực tế, nó có thể mở ra một khu vực mới gồm các API đồ họa cấp thấp sẽ thay đổi cách trò chơi được phát triển.

Tóm tắt phần cứng cấp thấp hơn

DirectX 12 hiện cho phép các nhà phát triển tiếp cận gần hơn với “kim loại” phần cứng đồ họa của người dùng, cung cấp quyền truy cập vào các tính năng trước đây không có sẵn cho các nhà phát triển. Để lộ phần cứng cấp thấp hơn có nghĩa là các nhà phát triển có kỹ năng có thể viết mã hiệu quả hơn để thực thi nhanh hơn. Cụ thể, các nhà phát triển có thể cải thiện tối ưu hóa với hiệu suất đa luồng nhanh hơn và sử dụng CPU hiệu quả hơn. Điều này có khả năng cho phép tối ưu hóa mức độ thấp tương tự như những gì chúng ta thấy trong trò chơi console, trong đó trò chơi được điều chỉnh cho phần cứng tầm trung cực kỳ cụ thể, tạo ra hiệu suất sẽ không thể thực hiện được nếu không có những tối ưu hóa siêu cụ thể như vậy.

Trước đây, DirectX 11 chỉ cung cấp mức độ trừu tượng phần cứng khá cao, điều này giúp đơn giản hóa đáng kể quá trình viết mã. Trên thực tế, đó là toàn bộ ý tưởng đằng sau điều khiến các API phần cứng trở nên mạnh mẽ như vậy. Nhưng nó cũng có nghĩa là các cơ hội để tinh chỉnh mã dựa trên các tính năng phần cứng cụ thể ít thường xuyên hơn. Blog nhà phát triển của Microsoft cung cấp một số thông tin chi tiết tuyệt vời về cách, chính xác, DirectX 12 thực hiện điều này.

Cải thiện Hiệu suất Đa lõi

Sự khác biệt giữa DirectX 11 và DirectX 12 là gì?

Trong vài năm qua, các game thủ đã chấp nhận rằng CPU nhiều lõi không hữu ích cho việc chơi game. Thay vào đó, các trò chơi dựa vào hiệu suất đơn luồng nhanh. Điều này xảy ra một phần vì DirectX 11 không cho phép song song nhiều như vậy. Nhiều luồng CPU có thể gửi lệnh vẽ đồng thời. Tuy nhiên, tất cả chúng sẽ vẫn được xử lý trong một hàng đợi, từng thứ một. DirectX 12 giải quyết hạn chế đó, cho phép các CPU đa lõi gửi các lệnh đồng thời đến GPU, mở ra cánh cửa cho hiệu suất cao hơn trên các bộ xử lý đa lõi.

Giảm tổng chi phí cuộc gọi

Trong DirectX 11, một phần đáng kể sức mạnh của CPU được sử dụng để diễn giải các lệnh API thay vì thực thi mã trò chơi. DirectX 12 giảm chi phí API, giải phóng tài nguyên tính toán để chạy mã trò chơi. Điều này có nghĩa là các trò chơi giới hạn CPU có thể có hiệu suất cao hơn, vì sức mạnh CPU của chúng được giải phóng để xử lý mã trò chơi. Ngày nay, hầu hết các trò chơi đều không bị giới hạn về CPU, nhưng có thể các trò chơi mới hơn sẽ đẩy mạnh phong cách này hơn nữa.

Multiadapter rõ ràng

Sự khác biệt giữa DirectX 11 và DirectX 12 là gì?

DirectX 12 có khả năng kết hợp nhiều GPU (AKA “bộ điều hợp màn hình”) thành một đơn vị logic duy nhất. Tính năng này, được gọi là Explicit Multiadapter, cho phép nhiều GPU được hướng dẫn bằng phần mềm giống như một GPU duy nhất. Ví dụ:với DirectX 12, GPU tích hợp trên máy của bạn hiện có thể gắn thẻ nhóm với GPU rời của bạn, cho mượn sức mạnh xử lý của chính nó. Hỗ trợ API lớn hơn cũng có nghĩa là độ tin cậy và hiệu quả cao hơn trong các thiết lập SLI / CrossFire đa GPU. Trong thử nghiệm của Microsoft, việc sử dụng đồ họa tích hợp song song với đồ họa rời đã mang lại một lợi thế nhỏ nhưng đáng chú ý trong các điểm chuẩn.

DirectX 12 quan trọng bao nhiêu đối với người chơi?

Giống như nhiều cải tiến gia tăng, người chơi sẽ không thấy sự khác biệt giữa ngày và đêm giữa DirectX 11 và DirectX 12. Các tính năng mới không mang lại các tùy chọn kết xuất mới khiến người dùng phải trầm trồ. Bạn cũng sẽ không thấy tốc độ 100 FPS giữa hai tiêu chuẩn. Nhưng những lợi ích về hiệu quả này cuối cùng sẽ dẫn đến hiệu suất cao hơn trên phần cứng kém mạnh hơn, cải thiện sức mạnh của PC mà không cần nâng cấp phần cứng của nó.