1.Vulkan là gì? Cách setup môi trường
1.Vulkan là gì?
Bạn đã từng nghe qua OpenGL chưa? Nếu rồi thì bạn sẽ biết nó là một graphics API mã nguồn mở do Khronos Group phát triển, dùng để giao tiếp giữa chương trình và card đồ họa nhằm mục đích render hình ảnh.
Vulkan cũng được phát triển bởi Khronos Group, và về bản chất nó cũng là một graphics API. Tuy nhiên, nếu OpenGL là một API trừu tượng cao, “lo hộ” cho lập trình viên rất nhiều thứ, thì Vulkan lại đi theo hướng ngược lại 💀.
Vulkan là một low-level graphics & compute API, cho phép lập trình viên can thiệp rất sâu vào GPU: từ quản lý bộ nhớ, đồng bộ (synchronization), cho tới cách lệnh được gửi xuống card đồ họa. Nói cách khác, Vulkan không vẽ giúp bạn dễ hơn, mà cho bạn toàn quyền kiểm soát việc render.
Giống như OpenGL hay các API đồ họa khác, nhiệm vụ chính của Vulkan vẫn là render hình ảnh, nhưng cách nó làm việc thì phức tạp hơn rất nhiều — đổi lại là hiệu năng cao hơn, kiểm soát tốt hơn và ít overhead hơn.
1 bảng so sánh đơn giản:

2.Setup môi trường code Vulkan
Trong series này, mình sẽ dùng C làm ngôn ngữ chính, bạn cũng có thể dùng C++ tùy thích. và 1 điều quan trọng nữa là TRƯỚC KHI CÀI NHỚ UPDATE DRIVER NHÁ.
Trên Linux
Linux là hệ điều hành ổn định nhất cho phát triển và học Vulkan, cũng như Vulkan sẽ có hiệu năng cao nhất trong Linux(cũng giống như directx có hiệu năng cao nhất trên windows).
- Bước 1: Vào trang https://vulkan.lunarg.com/, bấm vào biểu tượng Linux để download file có đuôi .tar.xz(nên chọn bản 1.3).
- Bước 2:Giải nén file, trong folder đó sẽ có 1 file tên là vulkansdk, chạy nó, nó sẽ tự động cài cho bạn. (có thể chạy lâu nếu máy yếu)
- Bước 3:Cài GLFW bằng lệnh
sudo apt update && sudo apt install libglfw3-devnếu máy bạn dùng Ubuntu, tùy distro thì máy bạn sẽ có cách cài khác nhau, bạn có thể xem cách cài trên distro searchglfw on (tên distro bạn dùng) - Bước 4:Tạo 1 folder project, tạo 1 thư mục src chứa file main.c (hoặc main.cpp nếu dùng C++) và 1 thư mục bin chứa file output và 1 Makefile
- Bước 5:Ghi nội dung vào Makefile như sau:
all:
gcc -o bin/vulkan_program src/main.c -std=gnu11 -lvulkan -lglfw -lm
run:
./bin/vulkan_program
Trên MacOS
Vulkan không chạy native trên macOS, mà thông qua MoltenVK (Vulkan chạy trên Metal).
- Bước 1: Cài Homebrew (nếu chưa có):
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)". - Bước 2:Cũng như Linux, vào trang https://vulkan.lunarg.com/, bấm vào hình quả táo và download file có đuôi dmg(nên chọn bản 1.3).
- Bước 3:Bấm vào, sau đó bấm tiếp installvulkan, chờ tải xong là xong.
- Bước 4:Đây là lúc dùng brew:
brew install glfw. - Bước 5:cứ tiếp tục setup giống bước 4 và 5 của Linux là xong. Do ad không dùng MacOS nên có thể xem cái này để nếu gặp vấn đề gì thì có thể sửa: https://www.youtube.com/watch?v=C7YgtkR9KLg
Trên Windows
Vulkan trên Windows chạy cũng khá tốt, nhưng setup môi trường thì cũng khá khó. Bạn có thể cài WSL và setup như Linux (rất nên nếu mới học). Còn muốn chạy native Windows thì xem cái này:https://www.youtube.com/watch?v=d2jkALhm9EE
All rights reserved