Sdl Là Gì

  -  

SDL là gì?

Simple DirectMedia Layer (SDL):là một thư viện đa nền tảng, bao hàm các API để thao tác làm việc với âm thanh, bàn phím, chuột, joystick, graphics hardware thông qua OpenGL với Direct3D.Bạn sẽ xem: Sdl là gì

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

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

SDL cung cấp trên các hệ điều hành như: Windows, Mac OS X, Linux, iOS với Android.

Các game sử dụng thư viện SDL như: Syberia II, 7 Grands Step, Secret Maryo Chronicles,…

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


*

*

*

*

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

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

#include "SDL.h" //Khai báo thư viện(Các các bạn nhớ cài đặt thư viện)//lưu ý: những biến vào hàm main là cần để chạy thư viện SDLint main(int argc, char* argv) //Khởi sản xuất 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 hiển thị SDL SDL_Delay(5000); // thoát khỏi SDL SDL_Quit(); return 0;

Thực hành

Mình vẫn 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 screen (hình hình ảnh này rất có thể được làm cho nền của game).

Xem thêm: File Png Là Gì ? Tìm Hiểu Về File Png Là Gì

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

#include#include#include#include#undef main//hàm thừa nhận tên của ảnh, đọc hình ảnh và trả về hình dạng SDL_SurfaceSDL_Surface* LoadImage(std::string file_path)SDL_Surface* load_image = NULL;SDL_Surface* optimize_image = NULL;//lưu ý: địa chỉ lưu hình ảnh phải cùng rất vị trí lưu chương trình thiết yếu của chúng ta để hàm IMG_Load hiểu đượ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 sẽ được đưa vào optimize_image buộc phải load_image không đề nghị nữa, ta giải tỏ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 screen 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 ảnh vào screenSDL_Flip(screen); //hiển thị ảnh lên màn hìnhSDL_Delay(10000); //dừng 10s trước lúc đóng chương trìnhSDL_FreeSurface(image); //giải phóng dữ liệu vì image sẽ được download vào screenSDL_Quit(); //thoát khỏi SDLreturn 0;Nếu chạy thành công xuất sắc thì công dụng sẽ hiển thị hình ảnh trên screen SDL (các chúng ta cũng có thể tải một Background trên internet hoặc một hình nào kia tùy thích).

Xem thêm: " Exhibit Là Gì ? Định Nghĩa, Ví Dụ, Giải Thích Vietgle Tra 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 bản thân thấy thì tủ sách này cũng hỗ trợ khá xuất sắc cho vấn đề lập trình game, chúng ta có thể đọc thêm và chế tạo ra một game mang lại riêng mình. Tuy nhiên, ví như các bạn có nhu cầu nâng cao kĩ năng lập trình thì hãy sử dụng tủ sách này, còn nếu còn muốn theo hướng chuyên nghiệp thì vẫn nên sử dụng các app hỗ trợ cho việc lập trình game như: Unity, Cocos2d-x, ....