Lập trình game app android cùng với libgdx. libGDX là một framework được dùng để phát triển game mang đến nhiều nền tảng: Android, iOS, Desktop, Web bằng ngôn ngữ lập trình sẵn Java. libGDX được cải tiến và phát triển bởi Mario Zechner. Thật thú vui với hữu dụng Khi sử dụng engine này để lập trình sẵn game mang lại sản phẩm điện thoại.
Bạn đang xem: Libgdx là gì
Quý Khách sẽ xem: Libgdx là gì
Lập trình game apk cùng với libgdx – Tạo project với libGDX
Cách 1. Tải libGDX. Quý khách hàng phát âm truy cập libgdx.badlogicgames.com -> lựa chọn Download Steup App nhằm cài libGDX về đồ vật của mình.

Cách 2. Chạy tập tin gdx-cài đặt.jar (Lưu ý thứ của chúng ta bắt buộc sở hữu JDK – Java Development Kit và Android SDK. quý khách hoàn toàn có thể thiết lập và cài đặt Android Studio bao gồm Android SDK). Quan giáp hình dưới để biết Android SDK path.

Các cấu hình thiết lập đề xuất thiết
Name: Tên project Package: Tên gói (tlỗi mục nhỏ vào project) trò chơi class: Tên lớp Destination: Tlỗi mục cất libGDX project sau thời điểm sản xuất Android SDK: Thỏng viện lập trình sẵn Android Sub Projects: Lựa lựa chọn nền tảng gốc rễ cơ mà game hỗ trợSau Khi thiết lập đa số hưởng thụ bên trên -> chọn Generate -> chọn Yes (libGDX tự động mua phần nhiều thỏng viện quan trọng vày vậy trải nghiệm máy vi tính đề xuất liên kết internet).

Bước 3. Import libGDX project vào Android Studio (Máy tính nên setup Android Studio) theo trình thự sau:

Lập trình game apk cùng với libgdx – Cấu trúc libGDX project
Hình dưới biểu hiện kết cấu, ý nghĩa sâu sắc và sự liên kết giữa các project bên phía trong.
Theo hình bên trên, họ gồm 4 proeject. Core project là vị trí thiết kế viên viết code. Android project tương ứng cho gốc rễ Android. Tài nguyên ổn game vẫn đựng vào project này. Desktop project tương xứng mang đến gốc rễ PC. Web project khớp ứng đến nền tảng gốc rễ Web. Và nếu như trong những khi tạo libGDX ngơi nghỉ bước trên, bọn họ chọn Ios thì sẽ sở hữu thêm iOS project khớp ứng mang lại căn nguyên iOS.
Lập trình game app android cùng với libgdx – Hệ thống trạng thái game vào libGDX
public class Mytrò chơi implements ApplicationListener public void create () public void render () public void rekích thước (int width, int height) public void pause () public void resume () public void dispose () Phương thơm thức create(): Pmùi hương thức này được gọi một đợt lúc application được tạo và dùng để làm khởi chế tạo vào game.
Pmùi hương thức resize(): Thực hiện tại biến hóa kích thước game theo lắp thêm với được call sau cách thức create().
Pmùi hương thức render(): Có sứ mệnh cách xử trí vòng lặp game (game loop)
Phương thơm thức pause(): Đối với vật dụng cầm tay, cách thức này được lúc người dùng dùng thừa nhận phím Home hoặc Lúc có cuộc gọi đến. Đối với PC phương thức này được gọi trước phương thức dispose() Lúc fan đùa thoát game.
Pmùi hương thức resume(): Phương thơm thức này chỉ được hotline bên trên Mobile, lúc game đưa tự tâm trạng pause.
Phương thức dispose(): Được Điện thoại tư vấn khi chấm dứt game.
Hình bên dưới thể hiện life cycle
Lập trình game apk với libgdx – Vẽ hình trong libGDX
Knhị báo những đối tượng người sử dụng SpriteBatch và Texture
private SpriteBatch sp;private Texture texture;Tạo đối tượng người dùng trên cách làm create()
sp = new SpriteBatch();texture = new Texture(Gdx.files.internal("Your picture tệp tin name"));Vẽ hình tại cách tiến hành render()
sp.draw(texture, x, y);lấy ví dụ như về xử lý vẽ hình trong libGDX
/** * Created by bigbiglands.com */public class ImageExample extends ApplicationAdapter SpriteBatch sb; Texture texture; float y ; Override public void create() sb = new SpriteBatch(); texture = new Texture(Gdx.files.internal("jet.png")); y = 0; Override public void render() Gdx.gl.glClearColor(1, 1, 1, 1); Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT); sp.begin(); sp.draw(texture, 10, 100); sp.end(); Override public void dispose() texture.dispose();
Lập trình game game android với libgdx – Vẽ chuỗi vào libGDX
Knhì báo những đối tượng người sử dụng SpriteBatch và BitmapFontprivate SpriteBatch sp;private BitmapFont bf;Tạo đối tượng người tiêu dùng tại cách tiến hành create()
sp = new SpriteBatch();bf = new BitmapFont();Vẽ chuỗi trên thủ tục render()
sp.begin();bf.draw(sp, "Your text", x, y);sp.end();Một số tùy chỉnh hay gặp gỡ Khi vẽ chuỗi trong libGDX
1/ Thiết lập màu sắc chữ (color)
bf.setColor(Color.ColorName);2/ Thiết lập cỡ chữ (size)
bf.getData().setScale(nf,mf);// Với n với m là phần lớn con sốví dụ như về tùy chỉnh cỡ chữ trong libGDX
bf.getData().setScale(2f,2f);3/ Thiết lập màu sắc nền (Background color)
Gdx.gl.glClearColor(Red/255, Green/255, Blue/255, 1);Gdx.gl.glClear(GLđôi mươi.GL_COLOR_BUFFER_BIT);lấy một ví dụ thiết lập màu sắc nền trong sạch libGDX. Lưu ý màu trắng thì Red = 255, Green = 255, Blue = 255 => Red/255 = 1, Green/255 = 1 cùng Blue/255 = 1.
Gdx.gl.glClearColor(1, 1, 1, 1)lấy ví dụ như về cách xử lý vẽ chuỗi trong libGDX
/** * Created by bigbiglands.com */public class StringExample extends ApplicationAdapter SpriteBatch sb; BitmapFont bf; String msg = "trò chơi android voi libGDX"; Override public void render() Gdx.gl.glClearColor(1, 1, 1, 1); Gdx.gl.glClear(GLđôi mươi.GL_COLOR_BUFFER_BIT); sb.begin(); bf.setColor(Color.BLUE); bf.getData().setScale(3f); bf.draw(spriteBatch, msg, 100, 100); sb.end(); Override public void dispose() super.dispose();
Lập trình game app android với libgdx – Hệ toạ độ vào libGDX
Mặc định góc toạ độ là góc dưới phía trái. X đã tăng theo hướng từ trái qua nên, Y sẽ tăng theo hướng trường đoản cú dưới lên.1/ Knhì báo đối tượng OrthographicCamera
private OrthographicCamera camera;2/ Tạo đối tượng người sử dụng OrthographicCamera với tùy chỉnh thiết lập chiều rộng, độ cao của sản phẩm công nghệ trên cách thức create()
// Chiều rộng thiết bịint w = Gdx.graphics.getWidth();// Chiều cao thiết bịint h = Gdx.graphics.getHeight();// Tạo đối tượngcamera = new OrthographicCamera(w,h);camera.setToOrtho(true);3/ Chỉ định đối tượng người sử dụng OrthographicCamera tại thủ tục render()
batch.setProjectionMatrix(camera.combined);
Lập trình game apk với libgdx – Vẽ Shape trong libGDX
1/ Knhị báo đối tượng ShapeRendererprivate ShapeRenderer sr;2/ Tạo đối tượng người dùng ShapeRenderer trên cách thức create()
sr = new ShapeRenderer();3/ Vẽ shape trên phương thức render()
3.1/ Thiết lập shape type
sr.begin(ShapeRenderer.ShapeType.TypeName);3.2/ Thiết lập màu
sr.setColor(Red/255, Green/255, Blue/255, 1);3.3/ Vẽ
lấy một ví dụ về xử lý vẽ shape trong libGDX
/** * Created by bigbiglands.com */public class ShapeExample extends ApplicationAdapter ShapeRenderer sr; Override public void render() sr.begin(ShapeRenderer.ShapeType.Line); //Color sr.setColor(1, 1, 1, 1); //Draw rectange sr.rect(10, 10, 200, 200); //Draw Circle sr.circle(300, 300, 20); //Draw line sr.setAutoShapeType(true); sr.set(ShapeRenderer.ShapeType.Line); sr.line(100, 310, 300, 310); sr.end(); Override public void dispose() sr.dispose();
Lập trình game android với libgdx – những bài tập thực hành
Bài thực hành số 1: Vị trí ban đầu của hình tại góc bên dưới phía bên trái. Hình đã vận động tự dưới lên phía trên và khi chạm biên bên trên (top) thì vẫn xuất hiện thêm trên địa điểm thuở đầu. Trong khi trong game còn có cái chữ “Welcome to libGDX”Để biết được chiều rộng lớn và chiều cao thứ vào libGDX, chúng ta thực hiện 2 lệnh sau
// Chiều rộng lớn thiết bịGdx.graphics.getWidth();// Chiều cao thiết bịGdx.graphics.getHeight();Bài thực hành thực tế số 2: Vẽ hình chữ nhật tại góc tọa độDi chuyển hình chữ nhật lên trên; Nếu chạm biên bên trên, dịch rời hình chữ nhật lịch sự phải; Nếu va biên đề xuất, dịch rời hình chữ nhật xuống dưới; Nếu đụng biên dưới, dịch rời hình chữ nhật lịch sự trái; Nếu đụng biên trái di chuyển hình chữ nhật lên trên, đồng thời hiển thị số vòng.Kích thước hình chữ nhật là rộng 150, cao 30 cùng tô màu sắc Green. Hiển thị số vòng ở trung tâm màn hình hiển thị đồ vật.