Thư viện tri thức trực tuyến
Kho tài liệu với 50,000+ tài liệu học thuật
© 2023 Siêu thị PDF - Kho tài liệu học thuật hàng đầu Việt Nam

Nghiên cứu lập trình đồ họa và xây dựng game 3d cho mobile.
Nội dung xem thử
Mô tả chi tiết
1
TRƢỜNG ĐẠI HỌC SƢ PHẠM ĐÀ NẴNG
KHOA TIN HỌC
LUẬN VĂN TỐT NGHIỆP
CỬ NHÂN CÔNG NGHỆ THÔNG TIN
KHÓA 2009
NGHIÊN CỨU LẬP TRÌNH ĐỒ HỌA VÀ
XÂY DỰNG GAME 3D CHO MOBILE
Giáo viên hƣớng dẫn : Th.S TRẦN UYÊN TRANG
Sinh viên thực hiện : TRẦN ĐỨC HUY
ĐÀ NẴNG
THÁNG 5 NĂM 2013
2
NHẬN XÉT CỦA GIÁO VIÊN HƢỚNG DẪN
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
Đà Nẵng, ngày …… tháng …… năm 201…
Giáo viên hƣớng dẫn
3
NHẬN XÉT CỦA HỘI ĐỒNG XÉT DUYỆT
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
.....................................................................................................................................................................
Đà Nẵng, ngày …… tháng …… năm 201…
Hội đồng xét duyệt
4
Mục lục
NHẬN XÉT CỦA GIÁO VIÊN HƢỚNG DẪN ............................................................................... 2
NHẬN XÉT CỦA HỘI ĐỒNG XÉT DUYỆT.................................................................................. 3
MỞ ĐẦU............................................................................................................................................ 6
Chƣơng 1: CƠ SỞ LÝ THUYẾT....................................................................................................... 7
1. Khái niệm đồ họa máy tính ................................................................................................. 7
2. Sự phát triển của đồ họa di động........................................................................................ 9
3. Khái niệm cơ bản về 3D..................................................................................................... 12
3.1. Hệ tọa độ 3 chiều ........................................................................................................ 12
3.2. Vertex (đỉnh)............................................................................................................... 15
3.3. Edge (cạnh)................................................................................................................. 15
3.4. Triangle & Quad (Tam giác và các hình đa giác) ................................................... 16
3.5. Normal Vector (Vector pháp tuyến)......................................................................... 16
3.6. Pixel ............................................................................................................................. 17
3.7. Texture & Texel.......................................................................................................... 17
3.8. Fragment..................................................................................................................... 17
3.9. Phép chiếu song song và phép chiếu phối cảnh ....................................................... 18
3.10. Các kênh màu (Color channel) ............................................................................. 19
4. Các thƣ viện đồ họa DirectX, OpenGL và OpenGL ES 2 .............................................. 20
5. Rendering Pipeline (quy trình trình chiếu hình ảnh) ..................................................... 30
6. Shader ................................................................................................................................. 33
7. Các khái niệm toán học 3D cơ bản ................................................................................... 35
8. Ma trận MVP ..................................................................................................................... 40
9. Texture ................................................................................................................................ 43
10. Mô hình đối tƣợng (Model)........................................................................................... 44
11. Ngôn ngữ GLSL ............................................................................................................. 45
12. Cấu trúc của một trò chơi (game)................................................................................. 48
13. Giới thiệu về Game Engine............................................................................................ 49
Chƣơng 2: PHÂN TÍCH VÀ XÂY DỰNG ĐỀ TÀI ....................................................................... 51
1. Giới thiệu đề tài và nội dung game ................................................................................... 51
2. Các thành phần gồm có trong game................................................................................. 53
3. Thiết kế các lớp đối tƣợng ................................................................................................. 55
4. Chuyển game trên máy tính sang điện thoại ................................................................... 65
5. Một vài hình ảnh demo game............................................................................................ 69
5
KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN ....................................................................................... 73
TÀI LIỆU THAM KHẢO................................................................................................................ 74
6
MỞ ĐẦU
Ngày nay, sự phát triển bùng nổ của các thiết bị di động đã có tác động không nhỏ
tới đời sống chúng ta. Có thể dễ dàng nhận thấy, các thiết bị số di động nhƣ
Smartphone (iPhone, Android,…), tablet (iPad, iPad mini, các loại máy tính bảng
khác,…) dần trở thành vật bất ly thân đối với mỗi ngƣời, chúng ta sử dụng chúng
hầu nhƣ khắp mọi nơi, và mọi lúc, khi đi học, tại công sở, khi đi chơi với bạn bè, ở
nhà,…
Chính vì sự phổ biến này, kèm theo sự phát triển vƣợt bậc về công nghệ phần cứng
lẫn phần mềm của các thiết bị di động đã biến những chiếc điện thoại chỉ có màn
hình trắng đen, nghe gọi nhắn tin ngày xƣa trở thành nhƣng cỗ máy mạnh mẽ với
cấu hình mạnh, hệ điều hành đa nhiệm, đa tác vụ, kết nối internet thƣờng trực 24/24
với các công nghệ 3G, wifi.
Nhờ vậy mà nhu cầu giải trí trên các thiết bị cũng ngày một tăng, đồng thời với sự
cạnh tranh của các hãng sản xuất thiết bị di động đã cung cấp cho giới lập trình rất
nhiều công cụ để hỗ trợ phát triển các sản phẩm công nghệ, giải trí trên các thiết bị
di động, rất nhiều chợ ứng dụng đƣợc đầu tƣ phát triển để đảm bảo đầu ra cho các
sản phẩm ứng dụng di động, giúp các lập trình viên dễ dàng kiếm đƣợc tiền từ
những sản phẩm của mình và dễ dàng đƣa sản phẩm của mình ra đến thị trƣờng
quốc tế một cách nhanh chóng, mà không cần phải lo nghĩ nhiều cho việc quảng bá
sản phẩm hay đau đầu các chiến lƣợc kinh doanh phức tạp.
Để nắm bắt xu thế công nghệ thế giới và tận dụng cơ hội lớn này, em cảm thấy cần
thiết phải nghiên cứu sâu vào lĩnh vực phát triển ứng dụng di động đầy hấp dẫn này,
vì thế nên em chọn đề tài Nghiên cứu lập trình đồ họa và xây dựng Game 3D
cho mobile với mục tiêu là có đƣợc cái nhìn toàn diện và hiểu rõ đƣợc thế nào là
lập trình đồ họa, game, các công nghệ đằng sau đó, và làm sao để xây dựng cho
mình một bộ công cụ mà từ đó có thể sử dụng để xây dựng bất cứ một game nào tùy
thích cho các thiết bị di động (iPhone, iPad, Android phone,…) và ứng dụng những
kiến thức này xây dựng một game 3D đơn giản lấy đề tài biển đảo Việt Nam với tên
gọi: Game Bảo vệ Hoàng Sa Trƣờng Sa.
7
Chƣơng 1: CƠ SỞ LÝ THUYẾT
1. Khái niệm đồ họa máy tính
Đồ họa máy tính là một lĩnh vực của khoa học máy tính nghiên cứu về cơ sở toán
học, các thuật toán cũng nhƣ các kĩ thuật để cho phép tạo, hiển thị và điều khiển
hình ảnh trên màn hình máy tính. Đồ họa máy tính có liên quan ít nhiều đến một số
lĩnh vực nhƣ đại số, hình học giải tích, hình học họa hình, quang học,... và kĩ thuật
máy tính, đặc biệt là chế tạo phần cứng (các loại màn hình, các thiết bị xuất, nhập,
các vỉ mạch đồ họa...).
Theo nghĩa rộng hơn, đồ họa máy tính là phƣơng pháp và công nghệ dùng trong
việc chuyển đổi qua lại giữa dữ liệu và hình ảnh trên màn hình bằng máy tính. Đồ
họa máy tính hay kĩ thuật đồ họa máy tính còn đƣợc hiểu dƣới dạng phƣơng pháp
và kĩ thuật tạo hình ảnh từ các mô hình toán học mô tả các đối tƣợng hay dữ liệu lấy
đƣợc từ các đối tƣợng trong thực tế. Thuật ngữ "đồ họa máy tính" (computer
graphics) đƣợc đề xuất bởi một chuyên gia ngƣời Mĩ tên là William Fetter vào năm
1960. Khi đó ông đang nghiên cứu xây dựng mô hình buồng lái máy bay cho hãng
Boeing. William Fetter đã dựa trên các hình ảnh 3 chiều của mô hình ngƣời phi
công trong buồng lái để xây dựng nên mô hình buồng lái tối ƣu cho máy bay
Boeing. Đây là phƣơng pháp nghiên cứu rất mới vào thời kì đó. Phƣơng pháp này
cho phép các nhà thiết kế quan sát một cách trực quan vị trí của ngƣời lái trong
khoang buồng lái. William Fetter đã đặt tên cho phƣơng pháp của mình là computer
graphics...
Lịch sử của đồ họa máy tính vào thập niên 1960 còn đƣợc đánh dấu bởi dự án
SketchPad đƣợc phát triển tại Học viện Công nghệ Massachusetts (MIT) bởi Ivan
Sutherland. Các thành tựu thu đƣợc đã đƣợc báo cáo tại hội nghị Fall Joint
Computer và đây cũng chính là sự kiện lần đầu tiên ngƣời ta có thể tạo mới, hiển thị
và thay đổi đƣợc dữ liệu hình ảnh trực tiếp trên màn hình máy tính trong thời gian
thực. Hệ thống Sketchpad này đƣợc dùng để thiết kế hệ thống mạch điện và bao
gồm những thành phần sau:
Màn hình CRT
Bút sáng và một bàn phím bao gồm các phím chức năng
Máy tính chứa chƣơng trình xử lí các thông tin
Với hệ thống này, ngƣời sử dụng có thể vẽ trực tiếp các sơ đồ mạch điện lên màn
hình thông qua bút sáng, chƣơng trình sẽ phân tích và tính toán các thông số cần
thiết của mạch điện do ngƣời dùng vẽ nên.
Kỹ thuật đồ họa đƣợc liên tục hoàn thiện vào thập niên 1970 với sự xuất hiện của
các chuẩn đồ họa làm tăng cƣờng khả năng giao tiếp và tái sử dụng của phần mềm
cũng nhƣ các thƣ viện đồ họa.