SDL là gì?

Simple DirectMedia Layer (SDL):là một thư viện nhiều nền tảng, bao gồm các API để thao tác với âm thanh, bàn phím, chuột, joystick, graphics hardware thông qua OpenGL với Direct3D.

Bạn đang xem: Sdl là gì

Thư viện SDL được viết bởi Cchuẩn, nhưng cung ứng tốt vớiC++và nhiều ngôn từ lập trình không giống như:C#,Java, Pascal, PHP, Python,...

SDL cung ứng trên các hệ điều hành quản lý như: Windows, Mac OS X, Linux, iOS và Android.

Các game thực hiện thư viện SDL như: Syberia II, 7 Grands Step, Secret Maryo Chronicles,…

Một số hình ảnh về game được tạo bởi vì thư viện SDL

*

*

*

*

Các bạn có thể tải thư viện: tại đây

Cách khởi chế tạo ra thư viện SDL

#include "SDL.h" //Khai báo thư viện(Các các bạn nhớ thiết lập thư viện)//lưu ý: các biến trong hàm main là cần để chạy tủ sách SDLint main(int argc, char* argv<>) //Khởi sinh sản thư viện(Khởi động) if(SDL_Init(SDL_INIT_EVERYTHING) == -1) return(1); // Đợi 5 giây trước khi đóng màn hình SDL SDL_Delay(5000); // ra khỏi SDL SDL_Quit(); return 0;

Thực hành

Mình đã hướng dẫn các bạn viết chương trình thiết lập một hình ảnh lên màn hình (hình ảnh này hoàn toàn có thể được có tác dụng nền của game).

Các lệnh sử dụng trong chương trình:

#include#include#include#include#undef main//hàm dấn tên của ảnh, đọc ảnh và trả về vẻ bên ngoài SDL_SurfaceSDL_Surface* LoadImage(std::string file_path)SDL_Surface* load_image = NULL;SDL_Surface* optimize_image = NULL;//lưu ý: vị trí lưu ảnh phải với vị trí lưu chương trình chủ yếu của các bạn để hàm IMG_Load gọi được ảnhload_image = IMG_Load(file_path.c_str());if (load_image != NULL)//hàm định hình hiển thị về tối ưu hóa kiểu dữ liệu cho phù hợpoptimize_image = SDL_DisplayFormat(load_image);//dữ liệu đang được gửi vào optimize_image buộc phải load_image không yêu cầu nữa, ta giải hòa load_imageSDL_FreeSurface(load_image);return optimize_image;int main(int arc, char* argv<>)SDL_Surface* screen;SDL_Surface* image;if (SDL_Init(SDL_INIT_EVERYTHING) == -1) //khởi tạo màn hình SDLreturn 1;screen = SDL_SetVideoMode(1000, 625, 32, SDL_SWSURFACE); //định dạng màn hìnhimage = LoadImage("bk_2dgame.jpg");SDL_BlitSurface(image, NULL, screen, NULL); //tải hình ảnh vào screenSDL_Flip(screen); //hiển thị hình ảnh lên màn hìnhSDL_Delay(10000); //dừng 10s trước khi đóng chương trìnhSDL_FreeSurface(image); //giải phóng tài liệu vì image vẫn được thiết lập vào screenSDL_Quit(); //thoát khỏi SDLreturn 0;Nếu chạy thành công xuất sắc thì kết quả sẽ hiển thị hình hình ảnh trên màn hình SDL (các chúng ta có thể tải một Background trên internet hoặc một hình nào đó tùy thích).

Đoạn kết trên mình xem thêm "Tại đây" vì mình thấy nó tương đối là dễ nắm bắt và dễ dàng hình dung, hi vọng các bạn có thể làm quen thuộc và thực hiện được thư viện này.

Xem thêm: Tổng Hợp Các Dạng Toán Lớp 4 Thường Gặp Hay Nhất, Các Dạng Toán Lớp 4 Thường Gặp Hay Nhất

Tìm hiểu thêm cách thiết đặt thư viện:http://eitguide.net/khoi-tao-moi-truong-lap-trinh-game-su-dung-thu-vien-sdl-simple-directmedia-layer/

Kết luận

Theo mình thấy thì thư viện này cũng hỗ trợ khá tốt cho bài toán lập trình game, các bạn có thể xem thêm và tạo ra một game mang đến riêng mình. Mặc dù nhiên, ví như các bạn có nhu cầu nâng cao tài năng lập trình thì nên sử dụng tủ sách này, còn nếu còn muốn theo hướng chuyên nghiệp hóa thì vẫn cần sử dụng các app hỗ trợ cho câu hỏi lập trình game như: Unity, Cocos2d-x, ....