25/05/2018, 08:40

Các hàm API dùng để lập trình Game

Các hàm API dành để lập trình Game được giới thiệu trong bản MIDP 2.0, những hàm này là phương tiện để phát triển game với nhiều phần đồ họa. Các hàm API dành cho Game là một phần của gói javax.microedition.lcdui.game Lớp GameCanvas gần như ...

Các hàm API dành để lập trình Game được giới thiệu trong bản MIDP

2.0, những hàm này là phương tiện để phát triển game với nhiều phần đồ họa. Các hàm API dành cho Game là một phần của gói javax.microedition.lcdui.game

Lớp GameCanvas gần như giống lớp Canvas, GameCanvas cung cấp nền tảng để tạo giao diện người dùng, nhưng trong trường hợp này chỉ cho việc tạo games. GameCanvas chứa một vùng nhớ tách rời với vùng nhớ màn hình cho mỗi thể hiện và cung cấp các phương tiện tích hợp để xác định tình trạng các phím trò chơi. Dưới đây là lớp GameCanvas:

public abstract class GameCanvas extends Canvas

Layer là một lớp trừu tượng được sử dụng để thể hiện một đối tượng trực quan trong một trò chơi. Sprite là một lớp con của lớp Layer, lớp này được cung cấp để thể hiện cho một bức ảnh. Ngoài ra Sprite còn có thể bao gồm một dãy các khung ảnh. Để thực hiện khả năng chuyển động, các khung ảnh được thể hiện theo một thứ tự để tạo hiệu ứng di chuyển ảnh. Các phép biến đổi như là phép quay và phép lật ảnh có thể được áp dụng đối với một đối tượng Sprite. Dưới đây là mô tả cho 2 lớp Layer và Sprite

public abstract class Layer extends Object public class Sprite extends Layer

TiledLayer là một lớp tương tự như một bảng tính, với mỗi ô đại diện cho một tấm ảnh. Một TiledLayer đơn giản được dùng để thể hiện các phần tử trực quan có kích thước lớn, như là nền của một trò chơi.

public class TiledLayer extends Layer

Để đơn giản xử lý cho việc vẽ nhiều lớp trong một trò chơi, các hàm API dành cho việc lập trình trò chơi lại có thê lớp LayoutManager. Lớp LayoutManager này chứa một danh sách có thứ tự các đối tượng Layers và xác định khu vực nào cần được vẽ lại và thể hiện theo đúng trật tự. Lớp LayoutManager được thể hiện như dưới đây:

public class LayerManager extends Object

0