Tải bản đầy đủ (.pdf) (27 trang)

Đề Tài Game Tetris Sử Dụng C# và GDI+

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.19 MB, 27 trang )

LOGO
Trường ĐHSP TPHCM
Khoa CNTT
Báo Cáo Môn Lập Trình
Windows Trên C#
Đề Tài: Game Tetris Sử Dụng
C# & GDI+

GVHD: Âu Bửu Long
SVTH: Lê Anh Toàn & Lê Quang Phước
3/26/2012
1
Game Tetris
Nội Dung
1
Giới thiệu
Một số khái niệm 2
Chiến lược cho máy chơi 3
4
Các nhân tố ước lượng
5
Minh họa trò chơi Tetris
3/26/2012 2
www.themegallery.com
Nội Dung
1
Giới thiệu
Một số khái niệm 2
Chiến lược cho máy chơi 3
4
Các nhân tố ước lượng


5
Minh họa trò chơi Tetris
3/26/2012 3
www.themegallery.com
Giới thiệu
Tetris lần đầu tiên được ra mắt vào năm
1984.
Đây là game được viết bởi nhà toán học
người Nga Alexey Pajitnov.

“Tetris = Tetra + Tennis”

“Công nghệ có thể thay đổi
nhưng não người thì không”
3/26/2012 4
www.themegallery.com
Giới thiệu








Tạp chí Electronic Gaming Monthly:
”Trò chơi vĩ đại nhất trong mọi thời đại”

3/26/2012 5
www.themegallery.com

Nội Dung
1
Giới thiệu
Một số khái niệm 2
Chiến lược cho máy chơi 3
4
Các nhân tố ước lượng
5
Minh họa trò chơi Tetris
3/26/2012 6
www.themegallery.com
Một số khái niệm


Có 7 miếng hình chuẩn trong Tetris với các tên: O, I, S, Z, L, J, T
(dựa vào hình dạng của các miếng hình)
3/26/2012 7
www.themegallery.com
Một số khái niệm


•Từ hình đầu -> hình sau: quay 1 góc 90
0

ngược chiểu kim đồng hồ.


•Từ hình sau -> hình đầu: quay 1 góc 90
0


theo chiều kim đồng hồ
3/26/2012 8
www.themegallery.com
Một số khái niệm


•Từ hình đầu -> hình kế tiếp: chỉ cần quay hình đầu 1 góc 90
0
ngược chiều kim
đồng hồ.

•Từ hình cuối -> hình đầu tiên: cũng quay 90
0
ngược chiều kim đồng hồ



3/26/2012 9
www.themegallery.com
Một số khái niệm
Controls
Rotate
Right
Left
Left
Rotate
Right
Drop
Drop
Điều khiển trong Tetris:

qua trái, phải, đi xuống, quay
3/26/2012 10
www.themegallery.com
Một số khái niệm
Lines Completed
Levels
Piece Landing

Các dòng mà
chứa đầy các ô
được gọi là lines
completed.

Tetris chuẩn có
10 cấp độ khó
Level Delay(second)
3/26/2012 11
www.themegallery.com
Cấu trúc dữ liệu cho Tetris
Cell
•Foreground, background, x, y, size
Block
•Type, x, y, orientation, state, data
Board
•Width, height, Cells,
10
20
3/26/2012 12
www.themegallery.com
Nội Dung

1
Giới thiệu
Một số khái niệm 2
Chiến lược cho máy chơi 3
4
Các nhân tố ước lượng
5
Minh họa trò chơi Tetris
3/26/2012 13
Chiến lược cho máy chơi
 Dựa vào thông tin của bảng hiện tại và miếng hình hiện
tại -> sự phân tích “one-piece”.
 Thuật toán one-piece cho Tetris tốt nhất của Pierre
Dellacherie (người Pháp)

www.themegallery.com
3/26/2012 14
Chiến lược cho máy chơi
www.themegallery.com
3/26/2012 15
Thuật toán





Xét tất các nhánh con:
 Với mỗi trạng thái con, đánh giá chỉ số (rate) trạng thái
ấy bằng cách dùng các trọng số ước lượng
 Nếu chỉ số của nhánh con nào vượt chỉ số (rate) của các

nhánh con trước thì cập nhật nhánh tốt nhất hiện tại (vị
trí dịch chuyển, hình dạng của hình)
www.themegallery.com
Note: nếu một nhánh mà có
miếng hình (piece) vượt
khung của bảng hoặc đè lên
ô đã xuất hiện (occupied
cells) trong bảng thì ta không
xét nhánh đó.

3/26/2012 16
www.themegallery.com
Nội Dung
1
Giới thiệu
Một số khái niệm 2
Chiến lược cho máy chơi 3
4
Các nhân tố ước lượng
5
Minh họa trò chơi Tetris
3/26/2012 17
Các nhân tố ước lượng
 Landing height
 Eroded price cells
 Row transition
 Column transition
 Buried holes
 Wells


www.themegallery.com
3/26/2012 18
Các nhân tố ước lượng
Landing height
 Độ cao của miếng hình khi không thể rơi được nữa.



www.themegallery.com
Landing
height = 9
3/26/2012 19
Các nhân tố ước lượng
Eroded piece cells
 Số lượng dòng được xóa nhân với số ô bị xóa của
“piece” khi ăn điểm.







www.themegallery.com
3/26/2012 20
Các nhân tố ước lượng
Row transitions
 Ghi lại số lần chuyển tiếp giữa một ô trống (empty) và
một ô đã có (occupied) trên mỗi dòng trong bảng (board)


» Mỗi mũi tên trong hình là một
» “row transition”.
www.themegallery.com
3/26/2012 21
Các nhân tố ước lượng
Column transitions
 Ghi lại số lần chuyển tiếp giữa một ô trống (empty) và
một ô đã có (occupied) trên cột trong bảng (board)

» Mỗi mũi tên trong hình là một
» “column transition”.
www.themegallery.com
Có 16 “column transitions”.
3/26/2012 22
Các nhân tố ước lượng
Buried holes
 Số lượng các lỗ hỗng (khoảng trống) mà có ít nhất một
ô xuất hiện ở trên nó.
» Các ô được đánh dấu “1”
là các holes.

www.themegallery.com
Có 10 “buried holes”.
3/26/2012 23
Các nhân tố ước lượng
Wells
 Tổng tất cả các giếng trong bảng (board).

www.themegallery.com
Có 2 giếng (wells).

3/26/2012 24
www.themegallery.com
Nội Dung
1
Giới thiệu
Một số khái niệm 2
Chiến lược cho máy chơi 3
4
Các nhân tố ước lượng
5
Minh họa trò chơi Tetris
3/26/2012 25

×