OK, xin chào mọi người. Đây là bài viết đầu tiên trong seri SFML Tutorial của mình. Trước đây thì mình cũng đã dùng SFML làm được vài project nhỏ nhưng do việc học khá là khó khăn cho người mới bắt đầu cho nên mình sẽ viết cái seri này để cho các bạn nắm được SFML cơ bản, còn phần nâng cao thì các bạn phải thực hành thì mới có thể vận dụng được chứ mình không thể nào mà nói hết 😀.
Và ở bài viết này mình chỉ nói sơ lược về SFML và vài project mình đã làm với nó thôi nhé. Các bài viết sau mình sẽ chỉ rõ cách cài đặt cũng như dùng SFML cho project của các bạn.
SFML
(là viết tắt của Simple and Fast Multimedia Library) là một thư viện đa phương tiện viết từ C++. Nó khá giống với
SDL2
nhưng do viết theo hướng
OOP
nên việc lập trình sẽ dễ dàng hơn nhiều so với
SDL2
.
SFML
bao gồm 5 modules: Audio, Graphics, Network, System, Window.
- System: gồm các class liên quan với hệ thống như làm thời gian, xử lí unicode (cái này khá ngon vì có thể dùng tiếng việt).
- Window: liên quan tới việc tạo, đóng và xử lí sự kiện cửa số. (chi tiết mình sẽ trình trong các bài viết sau).
- Graphics: bao gồm các class về việc render đồ họa (cái mình hay dùng nhất).
- Audio: bao gồm các class về xử lí âm thanh, ta có thể dùng để phát một file nhạc hoặc ghi âm cho máy tính và lưu thành file.
- Network: (cái này thì mình chả có rành mấy 😀)
Ngoài ra,
SFML
còn có thể chạy trên nhiều hệ điều hành khác nhau như Windows, Linux, MacOS. Tức là game của chúng ta dùng
SFML
thì khi relase có thể chạy trên nhiều hệ điều hành. Tuy nhiên thì hiện tại, vẫn chưa có thể chạy trên Android với IOS. Cái này đang được mấy ông dev phát triển. Thế nhưng vẫn có bài viết hướng dẫn build
SFML
cho Android và IOS (mình chưa đủ trình để đọ với cái này 😀):
Tiếp theo, mình sẽ giới thiệu một số game sử dụng SFML:
OK, bây giờ tới phần giới thiệu project của mình dùng SFML: