Vulkan là một API mới cho đồ họa được tăng tốc phần cứng (và tính toán chung) thông qua các GPU truyền thống. OpenGL sẽ tiếp tục được phát triển, vì đây là API cấp cao hơn Vulkan dự định. Ban đầu được gọi là "glNext", người ta có thể suy luận rằng Vulkan có khả năng sẽ trở thành "OpenGL 5", nhưng cơ quan tiêu chuẩn cuối cùng đã quyết định rằng một tên mới sẽ trùng hợp hơn với việc phá vỡ các mục đích API tương đối sạch sẽ hiện có Mô hình OpenGL.
Những lợi thế thực tế của Vulkan đối với các nhà phát triển trò chơi chủ yếu là về kiểm soát (như, cho phép nhiều hơn, có khả năng cho phép tối ưu hóa tốt hơn với chi phí làm việc đáng kể hơn về phía nhà phát triển). Đặc biệt:
- API được định hướng xoay quanh việc tạo bộ đệm lệnh không đồng bộ qua nhiều luồng và xử lý tuần tự các bộ đệm đó thành một đường ống lệnh. Điều này phản ánh thực tế của phần cứng hiện đại. Hầu hết các phần mềm cấu hình cao và / hoặc hiệu năng cao được xây dựng trên OpenGL ngày nay đều tự thực hiện loại hành vi này; Có API hỗ trợ điều này có nghĩa là các nhà phát triển không cần phải tự thực hiện và duy trì khung đó hoặc họ có thể làm điều đó với ít nỗ lực hơn.
- Các tác vụ quản lý luồng và bộ nhớ được dành cho ứng dụng, không phải trình điều khiển, cho phép các nhà phát triển trò chơi kiểm soát nhiều hơn các hành vi đó và do đó có khả năng điều chỉnh chính xác hơn các hành vi đó theo nhu cầu của từng trò chơi.
- Các lớp xác thực và chẩn đoán có thể được kích hoạt độc lập, về mặt lý thuyết cho phép tích hợp các công cụ tốt hơn với API (thứ mà OpenGL phải chịu) và vô hiệu hóa xác thực quá mức, theo lý thuyết cho phép " đồ họa ở cấp ba " có hiệu suất cao hơn nhiều.
- Không có sự khác biệt API cứng giữa phiên bản di động và máy tính để bàn, về lý thuyết sẽ giúp dễ dàng chuyển các trò chơi đa nền tảng và nếu không có gì khác làm giảm đau đầu kiểm tra phiên bản mà mọi người ghét.
Cấu trúc bề ngoài rất giống C / OpenGL của Vulkan (giao diện và cảm nhận của các lệnh gọi API, et cetera. Tuy nhiên, nó được đánh máy tốt hơn (trong đó không phải mọi thứ đều trần trụi int
, có những kiểu đánh máy có liên quan, v.v.).
Nó ở cấp độ thấp hơn nhiều so với OpenGL. Người ta có thể mong đợi một bước nhảy trong thiết lập vận hành và độ phức tạp giữa OpenGL và Vulkan như đã thấy trong quá trình chuyển đổi D3D9 sang D3D10, điều này đã tiết lộ rất nhiều chi tiết hoạt động của thiết bị GPU cho máy khách API. Việc chuyển đổi thực sự gần giống với D3D11 thành 12, vì D3D12 tự nó là một API rất giống với Vulkan, có khả năng khôn ngoan.