Sự khác biệt giữa DirectX 11 và DirectX 12 là gì?
DirectX là một bộ sưu tập các API, hoặc các giao diện lập trình ứng dụng, được sử dụng bởi phần mềm để 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 đồ họa và phần cứng. Vì tất cả phần cứng đều khác nhau, sử dụng thư viện chức năng chuẩn hóa và các cuộc gọi để giao tiếp với card đồ họa của bạn giúp tăng tốc độ phát triển trò chơi. Điều này được gọi là trừu tượng phần cứng, và đó là công việc chính của API.
Hãy suy nghĩ về xe hơi: Nếu bạn có thể lái một chiếc xe, bạn có thể lái xe khá nhiều. Bàn đạp ga và bàn đạp phanh ở cùng một chỗ, và tay lái quay theo cùng hướng và cửa mở ra 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 nhìn chung bạn biết những gì mong đợi. DirectX và Direct3D là như vậy, cho phép các nhà phát triển để giao tiếp với một loạt các phần cứng bằng cách sử dụng các công cụ tương tự. Và vì hầu hết các nhà phát triển trò chơi sử dụng thư viện chuẩn của Direct3D, mọi thay đổi đối với API đều có thể ảnh hưởng đến các game thủ và lập trình viên.
Có gì mới trong DirectX 12?
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. Trong thực tế, nó có thể mở ra một khu vực mới của các API đồ họa cấp thấp sẽ thay đổi cách phát triển trò chơi.
Tóm tắt phần cứng mức thấp hơn
DirectX 12 giờ đây cho phép các nhà phát triển tiến gần hơn đến phần cứng “kim loại” của phần cứng đồ họa của người dùng của họ, cung cấp quyền truy cập vào các tính năng trước đó không khả dụng cho nhà phát triển. Phơi bày phần cứng mức 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 hiện 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 game console, nơi trò chơi được điều chỉnh cho phần cứng tầm trung cực kỳ cụ thể, hiệu suất vượt trội mà không thể không có tối ưu hóa siêu cụ thể.
Trước đây, DirectX 11 chỉ cung cấp mức trừu tượng phần cứng khá cao, đơn giản hóa quá trình mã hóa. Trong thực tế, đó là toàn bộ ý tưởng đằng sau những gì làm cho các API phần cứng mạnh mẽ như vậy. Nhưng nó cũng có nghĩa là cơ hội để tinh chỉnh mã chống lại 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.
Hiệu suất đa lõi được cải thiện
Trong vài năm qua, các game thủ đã chấp nhận rằng các CPU đa lõi không hữu ích cho việc chơi game. Trò chơi thay vì dựa vào hiệu suất luồng đơn nhanh. Điều này xảy ra một phần vì DirectX 11 không cho phép quá trình song song đó. Nhiều luồng CPU có thể gửi lệnh vẽ đồng thời. Tuy nhiên, chúng sẽ vẫn được xử lý trong một hàng đợi, mỗi lần một hàng đợi. DirectX 12 nâng giới hạn đó, cho phép các CPU đa lõi gửi các lệnh đồng thời tới GPU, mở cửa cho hiệu suất cao hơn trên các bộ xử lý đa lõi.
Vẽ giảm chi phí cuộc gọi
Theo DirectX 11, một phần đáng kể sức mạnh của CPU được dùng để giải thích hướng dẫn API thay vì thực hiện 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 rằng các trò chơi giới hạn CPU có thể thấy 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. Hầu hết các trò chơi không phải là CPU giới hạn ngày hôm nay, nhưng nó có thể là các trò chơi mới hơn sẽ đẩy phong bì này hơn nữa.
Multiadapter rõ ràng
DirectX 12 có khả năng kết hợp nhiều GPU (bộ điều hợp hiển thị AKA) 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ởi 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 giờ đây có thể gắn thẻ nhóm với GPU rời rạc của bạn, cho mượn sức mạnh xử lý của riêng nó. Hỗ trợ API lớn hơn cũng có thể 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 sử dụng đồ họa tích hợp song song với đồ họa rời rạc cung cấp một cạnh nhỏ nhưng đáng chú ý trong tiêu chuẩn.
Bao nhiêu DirectX 12 có vấn đề đối với game thủ?
Giống như rất nhiều cải tiến gia tăng, game thủ sẽ không thấy sự khác biệt hàng ngày 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 hiển thị mới mà người dùng wow. Bạn cũng sẽ không thấy một bước nhảy 100 FPS giữa hai tiêu chuẩn này. Nhưng những lợi ích trong 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 ít 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ó.