Đề tài “ nghiên cứu đồ họa 2d, 3d và phát triển game trên hệ điều hành android

98 858 0
Đề tài “ nghiên cứu đồ họa 2d, 3d và phát triển game trên hệ điều hành android

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

TRƯỜNG ĐẠI HỌC HÒA BÌNH KHOA CÔNG NGHỆ KHÓA LUẬN TỐT NGHIỆP Đề tài: Nghiên cứu đồ họa 2D, 3D phát triển Game hệ điều hành Android Sinh viên: Đặng Văn Giỏi Ngành: Công Nghệ Thông Tin Giảng viên hướng dẫn: ThS Đinh Đức Hùng Hà Nội 5/5/2012 Đặng Văn Giỏi – Lớp 508CNT * _ Lời cảm ơn L i i n gi p in n n E ũng in ng Đ i in ng iệ n n nn n n n n n n n gi ng gi p ng V ôi in n n ng ng i ôn ng i n i ẻ gi p ôi n n ự iện nn C i ng n ín gửi i i iện n n i ng i in ởng í n p ệ Đin Đ ng ng n i n n ô gi o khoa Công ng ệ n n ng i n n p n ủ ng ôi n ng ng i gi n i ng p ũng n ắ n ới gi n n ẹ ợ n ng ô n V in n ng i n ôi ng i gi n Hà Nội, ngày tháng năm 2012 Đặng Văn Giỏi Đặng Văn Giỏi – Lớp 508CNT * _ TÓM TẮT NỘI DUNG CỦA KHÓA LUẬN Tên đề tài: “ Ng i n 2D 3D p i n Game ệ i n Android” Chương 1: Giới thiệu hệ điều hành Android Nội dung chương giới thiệu cách tổng quan hệ điều hành Android Cung cấp kỹ thuật để cài đặt công cụ phát triển ứng dụng Chương 2: Nghiên cứu lý thuyết đồ họa 2D, 3D Giới thiệu lý thuyết đồ họa 2D, 3D Những thành phần đồ họa máy tính Các ứng dụng sử dụng kỹ thuật đồ họa 2D, 3D Chương 3: Nghiên cứu đồ họa 2D, 3D viết chương trình mẫu hệ điều hành Android Tìm hiểu lý thuyết đồ họa hệ điều hành Android, số thành phần quan trọng đồ họa 2D, 3D hệ điều hành Xây dựng hai ví dụ minh họa đồ họa 2D, 3D Viết trò chơi Bom Offline 2D xây dựng ý tưởng cho trò chơi Line3D Chương 4: Kết luận hướng phát triển tương lai Trình bày kết đạt khó khăn cần giải Định hướng phát triển tương lai Đặng Văn Giỏi – Lớp 508CNT * _ Danh mục thuật ngữ từ viết tắt sử dụng STT Từ Giải nghĩa 2D Chiều 3D Chiều 3G Third Generation Technology – Thế hệ thứ GPS Định vị toàn cấu EDGE Enhanced Data Rates for GSM Evolution EDGE (công nghệ web di động nâng cấp từ GPRS) NFC Near Field Communication – Giao tiếp trường gần XML eXtensible Markup Language - Ngôn ngữ Đánh dấu Mở rộng SDK Software Development Kit - Phát triển phần mềm ADT Android Development Tools – Công cụ phát triển Android 10 API Application Programming Interface – Giao diện lập trình ứng dụng Đặng Văn Giỏi – Lớp 508CNT * _ Danh mục hình dùng khóa luận Hình 1.Kiến chúc hệ điều hành Android Hình 2: Bảng liệt kê số kiểu file Linux Hình 3: Mô tả thư mục Hình 4: Tóm tắt trình cập nhật phiên tính đến năm 2011 Hình 5: Các gói cho hệ điều hành Hình 6: Kết chạy file SDK Manager Hình 7: Add ADT Hình 8: Cài đặt thành công Hình 9: ảnh chụp từ đối tượng 3D Hình 10: Hiện thị hình tròn màu đỏ Hình 11: Kết chương trình minh họa TestAndroid2D Hình 12: Kết chương trình TestAndroid3D Hình 13: Giao diện menu Hình 14: Hiện thị thông tin Hình 15: Xác thực xem muốn thoát hay không Hình 16: Giao diện phần hướng dẫn chơi Hình 17: Hiện thị thông báo tải liệu Hình 18: Giao diện Game Bom Offline Hình 19: Giao diện menu phụ Hình 20: Giao diện người chơi thua Hình 21: Giao diện người chơi thắng Hình 22: Giao diện lưu điểm Hình 23: Hiện thị danh sách điểm cao Hình 24: Ví dụ map (bản đồ) Hình 25: Vị trí pX, pY nằm TMXLayer HÌnh 26: Vị trí pX, pY nằm TMXLayer Hình 27: Ảnh phần menu Đặng Văn Giỏi – Lớp 508CNT * _ Hình 28: ảnh thể chức thị menu Hình 29: ảnh dùng phần giao diện Game Hình 30: Giao diện menu Game Line3D Hình 31: Giao diện chơi Game Line3D Hình 32: Ví dụ minh họa cách tính ăn viên bi Đặng Văn Giỏi – Lớp 508CNT * _ MỤC LỤC Lời cảm ơn TÓM TẮT NỘI DUNG CỦA KHÓA LUẬN Danh mục thuật ngữ từ viết tắt sử dụng .3 Danh mục hình dùng khóa luận Lời mở đầu .9 Chương 1: Giới thiệu hệ điều hành Android 11 1.1 Giới thiệu chung hệ điều hành Android 11 1.1.1 Giới thiệu chung hệ điều hành Android 11 1.1.2 Kiến trúc hệ điều hành Android 13 1.1.2.1 Tầng hạt nhân Linux (Linux Kernel layer) 13 1.1.2.2 Phần Libraries 14 1.1.2.3 Phần Android runtime 14 1.1.2.4 Tầng Application Framework 14 1.1.2.5 Tầng Application 15 1.1.3 Hệ thống tập tin hệ điều hành 16 1.1.3.1 Tổng quan hệ thống file Android 16 1.1.3.2 Các kiểu file Android 17 1.1.3.3 Tổ chức quyền sở hữu quyền hạn file 17 1.1.3.4 Cây thư mục hệ điều hành Android 19 1.1.4 So sánh hệ điều hành 19 1.1.4.1 So sánh hệ điều hành di động hệ điều hành desktop 19 1.1.4.2 So sánh hệ điều hành Android với hệ điều hành di động khác 20 1.2 1.2.1 1.2.2 Lịch sử phát triển hướng phát triển tương lai 21 Lịch sử phát triển 21 Hướng phát triển tương lai 22 1.3 Hướng dẫn cài đặt .23 1.4 Chương trình mẫu 23 1.4.1 1.4.2 1.4.3 Mục đích chương trình mẫu 23 Giải thích chương trình 24 Kết luận 24 Chương 2: Nghiên cứu lý thuyết đồ họa 2D, 3D .26 2.1 Đồ họa nói chung .26 2.1.1 Giới thiệu chung 26 2.1.2 Lịch sử phát triển 26 2.1.3 Các hệ màu thông dụng 27 2.1.3.1 Hệ màu RGB 27 2.1.3.2 Hệ màu CMYK (hệ màu trừ) 28 2.1.3.3 Hệ màu HSB (hệ tổng hợp) 29 2.1.3.4 Hệ màu Lab (hệ tổng hợp) 29 2.1.4 Các ứng dụng đồ họa 29 Đặng Văn Giỏi – Lớp 508CNT * _ 2.2 Đồ họa 2D 30 2.3 Đồ họa 3D 30 Chương 3: Nghiên cứu đồ họa 2D, 3D hệ điều hành Android viết chương trình minh họa 31 3.1 3.1.1 3.2 3.2.1 3.2.2 3.3 Đồ họa Android .31 Giới thiệu chung đồ họa Android 31 Đồ họa 2D Android 31 Một số thành phần đồ họa 2D 31 Chương trình minh họa 35 Đồ họa 3D Android 38 3.3.1 Một số thành phần đồ họa 3D 38 3.3.2 Chương trình minh họa 40 3.4 Chương trình minh họa 43 3.4.1 Chương trình (2D) 43 3.4.1.1 Mục đích chương trình minh họa 43 3.4.1.2 Ý tưởng thực 43 3.4.1.3 Phân tích chương trình 46 3.4.1.3.1 Sơ đồ hoạt động Game 46 3.4.1.3.2 Xác định actor mô hình use case 47 3.4.1.3.2.1 Danh sách Actor 47 3.4.1.3.2.2 Sơ đồ Use Case 47 3.4.1.3.3 Thiết kế chương trình 51 3.4.1.3.3.1 Thiết kế kiến trúc hệ thống 51 3.4.1.3.3.2 Mô tả chi tiết thành phần 52 3.4.1.3.3.3 Một số quan hệ đối tượng 54 3.4.1.3.4 Thiết kế giao diện người dùng 55 3.4.1.3.4.1 Giao diện menu Xem hình 13 55 3.4.1.3.4.2 Giao diện thị thông tin tác giả Xem hình 14 55 3.4.1.3.4.3 Giao diện thị xác minh thoát Xem hình 15 55 3.4.1.3.4.4 Giao diện thị phần giới thiệu Xem hình 16 55 3.4.1.3.4.5 Giao diện thị tải liệu Xem hình 17 55 3.4.1.3.4.6 Giao diện Game Xem hình 18 55 3.4.1.3.4.7 Giao diện menu phụ Xem hình 19 55 3.4.1.3.4.8 Giao diện người chơi thua Xem hình 20 55 3.4.1.3.4.9 Giao diện người chơi thắng Xem hình 21 55 3.4.1.3.4.10 Giao diện lưu điểm Xem hình 22 55 3.4.1.3.4.11 Giao diện thị danh sách điểm Xem hình 23 55 3.4.1.3.5 Thiết kế thuật toán 55 3.4.1.3.5.1 Thuật toán xác định vị trí pX,pY có nằm vùng Maps 55 3.4.1.3.5.2 Thuật toán xác định va chạm sprite 56 3.4.1.4 Viết chương trình 57 3.4.1.4.1 Hiện thị menu 57 3.4.1.4.2 Hiện thị phần giới thiệu giao diện 59 3.4.1.4.3 Giao diện chơi Game 60 3.4.1.4.4 Hiện thị giao diện người chơi thua 66 3.4.1.5 Kiểm thử đánh giá chương trình 71 3.4.2 Chương trình mở rộng (3D) 72 3.4.2.1 Mục đích chương trình minh họa 72 3.4.2.2 Ý tưởng thực 72 Đặng Văn Giỏi – Lớp 508CNT * _ 3.4.2.3 Phân tích chương trình 72 3.4.2.3.1 Sơ đồ hoạt động Game 72 3.4.2.3.2 Xác định actor mô hình use case 73 3.4.2.3.2.1 Xác định actor 73 3.4.2.3.2.2 Sơ đồ use case đặc tả chi tiết 73 3.4.2.3.2.2.1 Sơ đồ use case 73 3.4.2.3.2.2.2 Danh sách use case 74 3.4.2.3.2.2.3 Đặc tả use case 74 3.4.2.3.3 Thiết kế chương trình 76 3.4.2.3.3.1 Kiến trúc hệ thống 76 3.4.2.3.3.2 Mô tả thành phần hệ thống 77 3.4.2.3.4 Thiết kế giao diện 78 3.4.2.3 Viết chương trình 78 3.4.2.4 Kiểm thử đánh giá chương trình (Đang nghiên cứu) 78 Chương 4: Kết luận hướng phát triển tương lai .79 4.1 Kết luận 79 4.2 Hướng phát triển tương lai 79 Tài liệu tham khảo 97 Đặng Văn Giỏi – Lớp 508CNT * _ Lời mở đầu Ngày Công nghiệp giải trí phát triển giới, bao gồm thành phần như: Game, âm nhạc, thời trang, chương truyền hình, điện ảnh, Gameshow, truyền thông, tổ chức live show, Các mảng nằm ngành giải trí không mang tính giải trí mà mang nhiều giá trị văn hóa, lối sống, phong tục người vùng miền, đồng thời quảng bá hình ảnh đất nước Việt Nam tới bè bạn khắp nơi giới Có thể nói ngành giải trí mang lại nhiều lợi nhuận ngành Game Game lĩnh vực giải trí tương tác quan trọng hàng đầu ngành công nghiệp nội dung số Doanh thu toàn cầu từ ngành tăng trưởng nhanh chóng từ tỷ USD (1994) lên 41.9 tỷ USD (2007) dự đoán đạt 68 tỷ USD (2012) Với tốc độ tăng trưởng bình quân 9% năm, Game trở thành ngành có tốc độ phát triển nhanh lĩnh vực giải trí Trong đó, Mỹ chiếm 40.42% thị phần, Anh 12.45% Nhật 11.87% Năm 2008, ngành Game Mỹ giá trị khoảng 22 tỷ USD vượt qua ngành công nghiệp âm nhạc (10 tỷ USD) ngành công nghiệp phim ảnh (9,5 tỷ USD), thu hút hàng triệu lao động chuyên gia phát triển, phân phối marketing Game Việt Nam thị trường Game lớn khu vực Đông Nam Á với 20 nhà phát hành Game nước Doanh thu năm gần liên tục tăng trưởng với mức trung bình 400 triệu USD/năm, chiếm 70% doanh thu ngành nội dung số Có mức tăng trưởng ấn tượng, ngành công nghiệp Game Việt Nam dừng lại mức phân phối phát hành gia công tựa Game nước Một vài năm gần đây, Studio lập nên nhằm phát triển sản xuất Game Việt Tính đến tháng năm 2011, số lượng Game Việt Nam sản xuất đưa vào triển khai thị trường có Thuận Thiên Kiếm (VNG), SQUAD, G3, Showbiz (VTC Studio) Jay Online (FGame) Tranh Hùng (SunSoft), Game offline có 7754 – tựa Game thành công lấy đề tài chiến dịch Điện Biên Phủ 83 Đặng Văn Giỏi – Lớp 508CNT * _ Hình 5: Các gói cho hệ điều hành Hình 6: Kết chạy file SDK Manager 84 Đặng Văn Giỏi – Lớp 508CNT * _ Hình 7: Add ADT Hình 8: Cài đặt thành công 85 Đặng Văn Giỏi – Lớp 508CNT * _ Hình 9: ảnh chụp từ đối tượng 3D 86 Đặng Văn Giỏi – Lớp 508CNT * _ Hình 10 Hiện thị hình tròn màu đỏ Hình 11: Kết chương trình minh họa TestAndroid2D 87 Đặng Văn Giỏi – Lớp 508CNT * _ Hình 12: Kết chương trình TestAndroid3D Hình 13: Giao diện menu 88 Đặng Văn Giỏi – Lớp 508CNT * _ Hình 14: Hiện thị thông tin Hình 15: Xác thực xem muốn thoát hay không Hình 16: Giao diện phần hướng dẫn chơi 89 Đặng Văn Giỏi – Lớp 508CNT * _ Hình 17: Hiện thị thông báo tải liệu Hình 18: Giao diện trò chơi 90 Đặng Văn Giỏi – Lớp 508CNT * _ Hình 19: Giao diện menu phụ Hình 20: Giao diện người chơi thua 91 Đặng Văn Giỏi – Lớp 508CNT * _ Hình 21: Giao diện người chơi thắng Hình 22: Giao diện lưu điểm 92 Đặng Văn Giỏi – Lớp 508CNT * _ Hình 23: Hiện thị danh sách điểm cao Hình 24: Ví dụ map(bản đồ) 93 Đặng Văn Giỏi – Lớp 508CNT * _ Hình 25: Vị trí pX, pY nằm TMXLayer Hình 26: Vị trí pX, pY nằm TMXLayer 94 Đặng Văn Giỏi – Lớp 508CNT * _ Hình 27: Ảnh phần menu Hình 28: ảnh thể chức thị menu Hình 29: ảnh dùng phần giao diện Game Ảnh trái tim: Ảnh thể trạng thái tạm dừng: Ảnh thể bom: 95 Đặng Văn Giỏi – Lớp 508CNT * _ Hình 30: Giao diện menu Game Line3D Hình 31: Giao diện chơi Game Line3D 96 Đặng Văn Giỏi – Lớp 508CNT * _ Hình 32: Ví dụ minh họa cách tính ăn viên bi 97 Đặng Văn Giỏi – Lớp 508CNT * _ Tài liệu tham khảo [1] http://vietAndroid.com/forum.php [2] http://congtruongit.com/forum/showthread.php?t=16213 [3] http://vi.wikipedia.org/wiki/%C4%90%E1%BB%93_h%E1%BB%8Da_m%C3%A1y_t%C3%ADnh [4] http://developer.Android.com/index.html [5] docx_20111101_bao_cao_do_an_Android_3491 Võ Quang Hòa – Nhóm 09A, Lớp 07T4 [...]... của hệ thống  1.1.4 So sánh giữa các hệ điều hành 1.1.4.1 So sánh giữa hệ điều hành di động và hệ điều hành trên desktop  Giống nhau về bản chất hệ điều hành, những thành phần lõi hệ điều hành  Khác nhau : o Hệ điều hành di động : hoạt động trên các thiết bị nhỏ gọn, hạn chế nhất là về vấn đề năng lượng Pin thì có hạn, vì thế tất cả các thành phần trên thiết bị đều phải tối ưu để tiết kiệm pin, điều. .. thiệu chung về hệ điều hành Android Android là một hệ điều hành di động dựa trên nền tảng linux phiên bản 2.6 dành cho các dòng điện thoại SmartPhone Đầu tiên được ra đời bởi công ty liên hợp Android, sau đó được Google mua lại và phát triển từ năm 2005 và trở thành một hệ điều hành di động mã nguồn mở, miễn phí, mạnh mẽ và được ưa chuộng cao trên thế giới Hệ điều hành Android một hệ điều hành rất mạnh,... sử phát triển và hướng phát triển trong tương lai 1.2.1 Lịch sử phát triển Android là hệ điều hành trên điện thoại di động (và hiện nay là cả trên một số đầu phát HD, HD Player) phát triển bởi Google và dựa trên nền tảng Linux Trước đây, Android được phát triển bởi công ty liên hợp Android ( sau đó được Google mua lại vào năm 2005) Theo NPD, thiết bị di động sử dụng hệ điều hành Android bán được tại... Sự phát triển nhanh chóng của thị trường Game Việt đòi hỏi một lượng nhân lực lớn ở tất cả các khâu của quá trình sản xuất Game như: thiết kế đồ họa Game (Games Design), lập trình Game (Programming), âm thanh (Audio)… Với sự phát triển bùng nổ của ngành Game như hiện nay, việc nghiên cứu và phát triển Game là một hướng đi khá tốt cho các lâp trình viên Với đề tài “Ng i n ồ 2D 3D p i n Game n ệ i n Android ,... Giống nhau : Đều là hệ điều hành di động nên mang đầy đủ bản chất của hệ điều hành di động nói chung (Đã đề cập ở trên)  Khác nhau : o Android là hệ điều hành mã nguồn mở và miễn phí trong khi các hệ điều hành di động còn lại đều là nguồn đóng và có phí (khi một hãng thứ hai sử dụng) 21 Đặng Văn Giỏi – Lớp 508CNT * _ o Android được phát triển từ nhân linux do đó nó có thể chạy tốt trên nhiều... cho việc hiểu và phát triển Game nói riêng cũng như ngành công nghiệp giải trí nói chung trong tương lai gần Các vấn đề chính được làm rõ trong đề tài này là: + Lý thuyết đồ họa 2D + Lý thuyết đồ họa 3D + Xây dựng một ứng dụng Game hoàn chỉnh (2D) và một phần mở rộng (3D) 11 Đặng Văn Giỏi – Lớp 508CNT * _ Chương 1: Giới thiệu hệ điều hành Android 1.1 Giới thiệu chung về hệ điều hành Android 1.1.1... là BB os với 28% và iOS ở vị trí thứ 3 với 22% Android có một cộng đồng những nhà phát triển rất lớn viết các ứng dụng cho hệ điều hành của mình Hiện tại có khoảng 1000,000 ứng dụng cho Android os và vào khoảng 1000,000 ứng dụng đã được đệ trình, điều này khiến Android trở thành hệ điều hành di động có môi trường phát triển lớn thứ 2 Các nhà phát triển viết ứng dụng cho Android dựa trên ngôn ngữ Java... vào hệ thống nguồn sáng vẽ xử lí bằng máy tính Tuy vậy hình ảnh chụp từ khung hình 3D vẫn gọi là 2D, nhưng bằng chương trình 3D ta có thể chụp nhiều tấm ảnh ở nhiều góc cạnh khác nhau từ 1 khung hình 3D Dưới đây là 3 tấm ảnh 2D chụp từ 1 khung hình 3D Xem hình 9 31 Đặng Văn Giỏi – Lớp 508CNT * _ Chương 3: Nghiên cứu đồ họa 2D, 3D của hệ điều hành Android và viết chương trình minh họa 3.1 Đồ họa. .. CPU, điều đó nhằn để tránh độc quyền trong việc sử dụng CPU  Ứng dụng không có điểm vào cố định, không có phương thức main để bắt đầu 1.1.3 Hệ thống tập tin trên hệ điều hành Trong phạm vi một bài tìm hiểu về hệ điều hành, em chỉ xin tìm hiểu rõ một vấn đề của hệ điều hành Android đó là vấn đề quản lý hệ thống tập tin Phần này có điểm thuận lợi để tìm hiểu đó là vì được phát triển từ nhân linux nên hệ. .. các hệ điều hành di động còn lại o Các ứng dụng chạy trên Android được viết bằng Java trong khi đó, ứng dụng trên các hệ điều hành khác chủ yếu là viết bằng C/C++/Object C Ngay cả symbian có hỗ trợ Java thì cũng khác so với Android, trong khi hệ điều hành Android sử dụng máy ảo Java là Dalvik VM do chính Google phát triển thì Symbian lại sử dụng máy ảo Java là J2ME của Sun 1.2 Lịch sử phát triển và

Ngày đăng: 24/07/2016, 08:28

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan