1. Trang chủ
  2. » Luận Văn - Báo Cáo

Đồ án lập trình di động Lập trình game code java

60 2,1K 6

Đ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

Thông tin cơ bản

Định dạng
Số trang 60
Dung lượng 7,32 MB

Nội dung

MỤC LỤC DANH MỤC CÁC HÌNH VẼ, SƠ ĐỒ iii MỞ ĐẦU 1 LỜI CẢM ƠN 3 CHƯƠNG 1. GIỚI THIỆU CHUNG VỀ GAME VÀ GAME TRÊN THIẾT BỊ DI ĐỘNG 4 1.1. Khái quát về game 4 1.2. Game trên thiết bị di động 6 1.3. Sơ lược quy trình phát triển game trên di động 6 1.4. Một số framework hỗ trợ việc phát triển game trên Android 8 CHƯƠNG 2. GIỚI THIỆU VỀ ANDENGINE 10 2.1. Các khái niệm chính trong lập trình AndEngine 10 2.1.1. Camera 10 2.1.2. Scene 10 2.1.3. Layer 10 2.1.4. Sprite 10 2.1.5. Entity 10 2.1.6. Modifier 10 2.1.7. Texture 11 2.1.8. Texture Region 11 2.1.9. Engine 11 2.1.10. BaseGameActivity 11 2.1.11. Box2D Physics Engine 11 2.2. Vòng đời của một game AndEngine 11 2.2.1. BaseGameActivity 11 2.2.2. SimpleBaseGameActivity 12 2.3. Một số thành phần của AndEngine được dùng trong PTITit Game 14 2.3.1. Camera / EngineOptions 14 2.3.2. BitmapTextureAtlas / Texture 15 2.3.3. Sprite / AnimatedSprite 17 2.3.4. Font 18 2.3.5.Text 18 2.3.6.Physics Box2D 19 CHƯƠNG 3. PHÂN TÍCH VÀ THIẾT KẾ ‘PTITIT GAME’ 21 3.1. Giới thiệu chung 21 3.2. Level 1 21 3.2.1. Thể loại: 21 3.2.2. Mô tả kịch bản 21 3.2.3. Thiết kế chi tiết 22 3.2.4. Ảnh chụp màn hình 27 3.3. Level 2. 29 3.3.1. Thể loại: 29 3.3.2. Mô tả kịch bản 29 3.3.3. Thiết kế chi tiết 29 3.3.4. Ảnh chụp màn hình 38 3.4. Một số thành phần khác trong game 39 3.4.1. Config 39 3.4.2.ValueControl 39 3.4.3. DBUtil và DBManager 39 3.4.4. MusicBackground và Sound 39 3.4.5. Util 40 3.5. Dữ liệu dùng trong PTITit Game 40 CHƯƠNG 4. CÀI ĐẶT ‘PTITIT GAME’ 42 4.1. Xử lý các thành phần trong game. 42 4.1.1. Xử lý đồ họa. 42 4.1.2. Xử lý font chữ. 44 4.1.3. Xử lý âm thanh. 44 4.1.4. Xử lý dữ liệu CSDL. 44 4.2. Yêu cầu của hệ thống khi cài đặt. 45 4.2.1. Yêu cầu cho phần lập trình. 45 4.2.2. Yêu cầu cho framework. 45 4.2.3. Yêu cầu cho phần chạy game. 46 4.3. Các module đã hoàn thành. 47 4.3.1. Sơ đồ các luồng màn hình của PTITit Game. 47 4.3.2. Màn hình các module game đã hoàn thiện. 48 CHƯƠNG 5. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 53 DANH MỤC TÀI LIỆU THAM KHẢO 54

MỤC LỤC GVHD: ThS Trịnh Thị Vân Anh SVTH: Nguyễn Đức Hải – D09CNPM1 DANH MỤC CÁC HÌNH VẼ, SƠ ĐỒ GVHD: ThS Trịnh Thị Vân Anh SVTH: Nguyễn Đức Hải – D09CNPM1 MỞ ĐẦU Đất nước ta thời kỳ cơng nghiệp hóa, đại hóa, đời sống người dân không ngừng cải thiện, kéo theo nhu cầu vật chất tinh thần nâng cao Trong số phải kể đến nhu cầu thiết bị di động Ngày nay, việc sử dụng thiết bị di động (điện thoại di động, máy tính bảng ) trở nên phổ biến lứa tuổi, tầng lớp xã hội Bởi vậy, dễ dàng nhận thị trường di động thị trường tiềm mà nhiều cá nhân, tập thể, doanh nghiệp muốn nhắm tới Cùng với đời sản phẩm thiết bị di động công nghệ cao Apple, Nokia, Samsung, LG, HTC phát triển hệ điều hành Android, iOS, Window Phone thiết bị di động ngày thu hút số lượng lớn người dùng toàn giới Và yếu tố quan trọng thu hút phải kể đến game mobile – trò chơi thiết bị di động Game từ lâu dịch vụ giải trí phổ biến người dùng Việt Nam Dịch vụ game phát triển nhiều tảng PC, mobile, browser Cùng với game PC game browser, ngày nay, game dành cho thiết bị di động thực bùng nổ Ở Việt Nam, hệ điều hành Android Google sử dụng thiết bị di động thông minh hệ điều hành ưa chuộng Có nhiều cách thức phát triển dịch vụ game hệ điều hành Android Trong đó, AndEngine bật lên công cụ đơn giản hiệu bậc để hỗ trợ việc phát triển game với đồ họa đẹp mắt Trong phạm vi đồ án mình, em xin trình bày số kiến thức AndEngine, cách thức xây dựng “PTITit Game” sử dụng AndEngine hệ điều hành Android Game chủ yếu tập trung ý vào việc sử dụng đối tượng mà AndEngine hỗ trợ, khả thể đồ họa AndEngine Game phát triển theo level Level sử dụng Sprite động tĩnh, với đếm thời gian cách tính điểm đơn giản Level áp dụng thêm thành phần mở rộng vật lý AndEngine để làm game hấp dẫn Bên cạnh đó, “PTITit Game” thể cách làm việc đơn giản với CSDL sqlite hay lưu liệu thiết bị với SharedPreferences Với mục tiêu vậy, bố cục đồ án bao gồm năm chương theo cấu trúc sau: Chương 1: Giới thiệu chung game game thiết bị di động Trình bày số hiểu biết chung game game thiết bị di động Các thành phần game, lưu ý xây dụng game thiết bị di động Chương 2: Giới thiệu AndEngine Trình bày kiến thức AndEngine Vòng đời game AndEngine, thành phần AndEngine hỗ trợ để phát triển game Sprite, Font, Text, PhysicsBox2D Chương 3: Phân tích thiết kế “PTITit Game” “PTITit Game” game viết AndEngine, dành cho sinh viên khoa công nghệ thơng tin Học viện Cơng nghệ Bưu Viễn thơng Chương trình bày cụ thể trình thực việc xây dựng “PTITit Game” kịch bản, cách chơi, cách xây dựng giao diện thành phần game qua level Chương 4: Cài đặt “PTITit Game” Trình bày cách thức xử lý đồ họa, xử lý âm xử lý liệu dùng Game Nêu yêu cầu cho phần cài đặt chạy game Chương 5: Kết luận hướng phát triển GVHD: ThS Trịnh Thị Vân Anh SVTH: Nguyễn Đức Hải – D09CNPM1 Tổng kết, tóm tắt kết đạt chưa đạt Từ đề xuất mục tiêu hướng tới hướng nghiên cứu, phát triển GVHD: ThS Trịnh Thị Vân Anh SVTH: Nguyễn Đức Hải – D09CNPM1 LỜI CẢM ƠN Lời em xin bày tỏ lịng biết ơn sâu sắc tới giáo Trịnh Thị Vân Anh, tận tình hướng dẫn, bảo giúp đỡ em suốt năm học vừa qua trình làm đồ án tốt nghiệp Em xin bày tỏ lòng biết ơn tới thầy, cô giáo khoa Công nghệ thông tin Học viện Cơng Nghệ Bưu Viễn thơng sở Hà Đông Các thầy cô bảo, dạy dỗ truyền đạt cho em kiến thức cần thiết, tạo điều kiện học tập tốt cho em suốt năm học tập trường Cuối cùng, xin chân thành cảm ơn bạn tập thể lớp D09CN1 nhiệt tình giúp đỡ đóng góp ý kiến có giá trị giúp tơi hồn thành đồ án Hà Nội, ngày 20 tháng 11 năm 2013 Nguyễn Đức Hải GVHD: ThS Trịnh Thị Vân Anh SVTH: Nguyễn Đức Hải – D09CNPM1 ĐỒ ÁN TỐT NGHIỆP Chương Giới thiệu chung game game thiết bị di đông CHƯƠNG GIỚI THIỆU CHUNG VỀ GAME VÀ GAME TRÊN THIẾT BỊ DI ĐỘNG 1.1 Khái quát game Kể từ máy tính xuất hiện, game trở thành ứng dụng phổ biến thị trường Trong sách Reality Is Broken, tác giả Jane McGonigal nêu thuộc tính phần lớn game thị trường: + Mục tiêu: Game mục tiêu rõ ràng cho người chơi để họ đạt Mục tiêu thử thách người chơi, họ vượt qua Người chơi cảm thấy hứng thú mục tiêu phù hợp với khả mình, khơng q khó, khơng dễ Mục tiêu rõ ràng, thú vị yếu tố quan trọng thu hút người chơi đến với game + Quy tắc: Game có quy tắc bắt buộc mà tất người chơi phải tuân theo Các quy tắc thường làm cho việc đạt mục tiêu nêu khó khăn Điều khuyến khích sáng tạo người + Phản hồi: Game cần phản hồi cho người chơi biết họ làm cơng việc tốt hay khơng Một điều đáng lưu ý rằng, hệ thống phản hồi chìa khóa để làm trị chơi thú vị + Tham gia cách tự nguyện: trò chơi khơng cịn trị chơi nghĩa bạn khơng thực thích chơi Điều ngụ ý người chơi phải chấp nhận mục tiêu, quy tắc, hệ thống phản hồi trò chơi Các thể loại game Những người phát triển game khơng chủ động phân loại trị chơi họ Và tất nhiên, khơng có danh sách chuẩn việc phân loại game Mặc dù vậy, theo thời gian, trò chơi dần phân loại vào lớp khác theo cách khác Việc phân loại xác khó khăn Tuy vậy, kể đến số loại game điển sau: + Game hành động hay kỹ năng: Người chơi phải sử dụng số kỹ thời gian thực (VD: bắn vào vật di chuyển ) để đạt mục tiêu + Game chiến lược: Người chơi phải sử dụng kỹ hơn, chủ yếu tập trung đưa định lựa chọn chiến lược hợp lý để vượt qua chơi + Game phiêu lưu hay có cốt truyện: Những game xây dựng dựa cốt truyện hấp dẫn, với nhân vật chau chuốt với cốt truyện cụ thể Cốt truyện định nghĩa mục tiêu cho người chơi thể loại game + Game mô phỏng: Thông thường, game thuộc thể loại mô tả lại yếu tố có thực tế (VD lái xe, chơi tennis ) + Game câu đố: Một số trò chơi truyền tải trực tiếp câu đố đến với người chơi Tuy nhiên, số game phức tạp, câu đố ẩn nhiều hình thức khác Có thể hiểu game nhỏ, game lớn GVHD: ThS Trịnh Thị Vân Anh SVTH: Nguyễn Đức Hải – D09CNPM1 ĐỒ ÁN TỐT NGHIỆP Chương Giới thiệu chung game game thiết bị di đông Các thành phần game + Opening (Splash) Screen: Để tối ưu hóa hiệu hoạt động, trước game sẵn sàng, đồ họa level thường nạp vào trước level bắt đầu Q trình nạp liệu kéo dài đến vài giây Trong thời gian đó, bạn khơng muốn để người dùng phải nhìn vào hình trống Vậy nên, hiển thị hình chờ (splash screen) Nó cho người dùng biết game hoạt động bình thường + Menu Screen: Khi game sẵn sàng, cần cung cấp cho người dùng nơi để họ đưa lựa chọn (Ví dụ bật/tắt âm thanh, xem hướng dẫn chơi ) Điều thực Menu Screen + Âm nhạc (Music) Đối với ai, âm nhạc có ảnh hưởng mạnh đến cảm xúc Bởi vậy, nhạc đóng vai trị quan trọng việc giữ nhịp cho game, giúp cho việc chuyển đổi phần khác game liên tục, không bị ngắt quãng +Hiệu ứng âm (Sound Effects) Những hiệu ứng âm làm cho game trở nên thú vị nhiều Ví dụ hai vật thể va chạm, người chơi muốn nghe tiếng động thể va chạm Âm làm cho game thân thiện với người chơi + Thời gian Hầu hết trò chơi kết hợp thời gian Yếu tố thời gian thơi thúc người chơi hồn thiện qua chơi để đáp ứng mục tiêu chơi + Mạng (Lives) Game trở nên hấp dẫn có thêm thử thách Bởi vậy, thêm vào game giới hạn số lượt chơi Như vậy, người chơi cảm thấy thách thức, game vui nhiều + Chướng ngại vật (Obstacles) Mỗi thể loại game khác sử dụng chướng ngại vật khác Hãy lựa chọn chướng ngại vật phù hợp để tăng độ khó thử thách người chơi + Cấp độ (Levels) Thử thách game phần thúc đẩy người chơi Nhưng biết cách giới hạn nó! Hãy chia thử thách thành nhiều cấp độ Người chơi bắt đầu với chơi dễ dàng, làm quen, nâng cao kỹ năng, để chiến thắng cấp độ khó + Người chơi (Player) Người chơi phần quan trọng game Game thành công giữ thú vị, lôi người chơi Người chơi cần thử thách thành phần game, không thách thức khiến họ từ bỏ game thất vọng Game cần bao gồm đủ nhiều yếu tố để trì quan tâm từ phía người chơi! GVHD: ThS Trịnh Thị Vân Anh SVTH: Nguyễn Đức Hải – D09CNPM1 ĐỒ ÁN TỐT NGHIỆP Chương Giới thiệu chung game game thiết bị di đông + Màn chơi (Scenes) Nếu coi trị chơi phim, hình hiển thị cho người chơi giống cảnh phim Ở có thay đổi đồ họa cảnh, không nhiều dù điểm nhìn người chơi thay đổi Sau đó, ta thêm vào thứ chuyển động, với chướng ngại vật để tạo hình game hoàn chỉnh 1.2 Game thiết bị di động Cùng với đa dạng phong phú thể loại game lựa chọn, cần tập trung vào yếu tố phù hợp với tảng di động (điện thoại di động, máy tính bảng ), đặc biệt quan tâm đến game phát triển nhóm người Với tiềm to lớn thị trường di động, không ngạc nhiên có nhiều nghiên cứu tư tưởng đưa nhằm mục đích tạo nên game di động tốt Cùng với việc tiếp tục áp dụng nguyên tắc thông thường thiết kế game máy tính, ta cần quan tâm đến số đặc điểm game thiết kế thiết bị di động: + Khơng lãng phí thời gian người chơi + Cung cấp trợ giúp cần thiết cho người chơi + Làm cho mục tiêu trò chơi dễ hiểu + Hiển thị trạng thái game cách rõ ràng + Người dùng di động thường chơi game thời gian ngắn + Người chơi dễ dàng tạm dừng hay tiếp tục game cần thiết + Người chơi đạt tiến thời gian ngắn + Những hạn chế thiết bị di động ảnh hưởng đến việc xây dựng game: • • • • • Kích thước hình nhỏ, đa dạng kích thước hình, độ phân giải Có nhiều cách thức nhập liệu từ người dùng (bàn phím, cảm ứng, cảm ứng đa điểm, ) Hạn chế khả tính toán Hạn chế pin 1.3 Sơ lược quy trình phát triển game di động Một đội phát triển game thiết bị di động thường có vị trí sau: + Người viết kịch + Lập trình viên + Người thiết kế đồ họa + Người soạn nhạc hiệu ứng âm + Người kiểm tra đóng gói sản phẩm Cần có tài liệu thật tốt để người nhóm có chung tiếng nói, hiểu mục tiêu chung phát triển tốt sản phẩm game GVHD: ThS Trịnh Thị Vân Anh SVTH: Nguyễn Đức Hải – D09CNPM1 ĐỒ ÁN TỐT NGHIỆP Chương Giới thiệu chung game game thiết bị di đông Xét mặt tổng quát, chia phát triển game thành giai đoạn: GĐ1: Giai đoạn tiền sản phẩm/ý tưởng Ở giai đoạn này, thành viên phát triển ý tưởng, sau thống với đội để xác định ý tưởng chủ đạo sản phẩm Qua giai đoạn này, ý tưởng cho lập trình, nội dung, thể loại game (action, puzzle, adventure, platform, sport, RPG ), phong cách đồ họa âm nhạc dần hình thành thể qua biểu đồ, đặc tả, thông số thử nghiệm, hình vẽ tay nhân vật (sketch), giai điệu nhạc lựa chọn thống xuyên suốt giai đoạn phát triển GĐ2: Đặc tả cho lập trình Đây giai đoạn quan trọng trình thiết kế game Bạn bỏ nhiều thời gian cho giai đoạn lập trình, gỡ lỗi tiết kiệm thời gian Lập trình viên chuyên nghiệp hiểu lỗi xuất trình thiết kế thiệt hại nhiều so với lỗi phát giai đoạn Bạn cần giấy, bút hay chương trình văn với vài người khác chơi thử game Khi “chơi thử” cách ghi giấy, ưu/khuyết thiết kế lộ rõ bạn chỉnh sửa cảm thấy vừa ý GĐ3: Thực viết code, thiết kế đồ họa chọn nhạc, hiệu ứng âm Với đặc tả có, dự tính thời lượng cho việc lập trình, tính tốn ngày cơng kỹ để ước tính khối lượng cơng việc dễ theo dõi tiến độ Và phải đảm bảo việc code với đặc tả game Bên cạnh việc viết code, thiết kế đồ họa game cần đặc biệt lưu tâm Do độ phân giải hình điện thoại di động nhỏ nên vật thể đồ họa game thực đồ họa điểm ảnh (pixel art), người thiết kế đồ họa ngồi kiến thức vẽ tay, đổ bóng cịn phải có kỹ thao tác tỉ mỉ Âm game phần quan trọng tạo nên hồn game Việc lựa chọn hay mix nhạc phù hợp tạo hào hứng với người chơi, tăng độ hấp dẫn cho game bạn Hiện có nhiều chương trình giúp cho việc soạn nhạc dễ dàng mà khơng cần biết nhiều nhạc lý, bạn cần lựa vài hợp âm, nhạc cụ, tempo, điệu nhạc , chương trình tạo nhạc cho bạn GĐ4: Kiểm tra đóng gói sản phẩm Kiểm tra: Nhóm lập trình chơi thử, cảm nhận ghi lại tất ưu khuyết Sửa lỗi có Phát hành beta cho game thủ chơi thử lấy ý kiến họ Đóng gói: game cho di động phải “xuất” hay đóng gói cho dòng máy khác (do dòng máy khác phím nhấn, nhớ thư viện hỗ trợ) 1.4 Một số framework hỗ trợ việc phát triển game Android Do nhu cầu không ngừng người chơi game nhà phát triển, ngày thị trường có nhiều framework hỗ trợ việc xây dựng phát triển game thiết bị di động, đặc biệt hệ điều hành Android Tùy theo yêu cầu đặc điểm game, mà lập trình viên lựa chọn cho framework thích hợp để lập trình Một số framework kể đến như: GVHD: ThS Trịnh Thị Vân Anh SVTH: Nguyễn Đức Hải – D09CNPM1 ĐỒ ÁN TỐT NGHIỆP Chương Giới thiệu chung game game thiết bị di đông + Libgdx: Libgdx framework phát triển dựa nghiên cứu game development cross-platform Nghĩa game bạn viết Libgdx framework, chơi Desktop, Web, Android, iOS tương lai thêm platform khác nữa! Khi bạn code game sử dụng Libgdx framework, bạn code desktop debug đó, sau game hồn thiện, bạn hồn tồn mang game chạy platform khác mà khơng cần sửa chữa mã nguồn nhiều Libgdx framework tối ưu hóa game bạn thành phần thiết kế quản lý tài nguyên viết Native code Libgdx framework có phần tài liệu hướng dẫn tuyệt vời hỗ trợ qua forum cách nhanh chóng nhiệt tình Libgdx framework có nhiều game example, nhiều source code, có nhiều game thương mại phi thương mại sử dụng Libgdx framework Ligdx framework thích hợp để xây dựng game chơi nhiều platform, game hành động đòi hỏi di chuyển mượt mà + AndEngine: AndEngine công cụ để phát triển video game, phát triển Nicolas Gramlich Nó bao gồm đầy đủ thuộc tính quan trọng OpenGL, bạn khơng có kinh nghiệm với OpenGL - bạn tạo game có đồ họa đẹp đầy đủ tính ứng dụng đẹp mắt sử dụng công cụ Tất phương diện quan trọng game định nghĩa sẵn AndEngine, dễ dàng để sử dụng AndEngine làm việc nhiều thiết bị khác nhau, với độ phân giải khác Hỗ trợ cảm ứng đa điểm, hình động Bằng lợi đó, AndEngine thích hợp để xây dựng game yêu cầu đồ họa hiệu ứng đẹp mắt Trong khuôn khổ đồ án này, tập trung tìm hiểu AndEngine GLES2 GVHD: ThS Trịnh Thị Vân Anh 10 SVTH: Nguyễn Đức Hải – D09CNPM1 ĐỒ ÁN TỐT NGHIỆP Chương Cài đặt ‘PTITit Game’ Hình 4.3: Button Thốt sử dụng Photoshop + PhotoShop giúp ta biến ảnh chụp, thành hình nhiều màu sắc, hồn tồn phù hợp để đưa vào game Ví dụ: từ ảnh đây, ta tạo hình đẹp cho Dialog mình: Hình 4.4: Dialog sử dụng Photoshop b Paper Artist + Đây phần mềm ứng dụng hệ điều hành Android dùng để chỉnh sửa ảnh + Trong PTITit Game sử dụng Paper Artist để tạo hình cho screen Hình 4.5: Tạo hình Paper Artist c Nguồn ảnh game GVHD: ThS Trịnh Thị Vân Anh 46 SVTH: Nguyễn Đức Hải – D09CNPM1 ĐỒ ÁN TỐT NGHIỆP Chương Cài đặt ‘PTITit Game’ + Đa số hình PTITit Game ảnh chụp từ Học viện Cơng nghệ Bưu Viễn thơng sở Hà Đông, qua xử lý đồ họa cơng cụ nói + Một số hình ảnh lấy từ trang facebook thầy cô + Button game tự thiết kế font chữ + Một số hình ảnh lấy từ nguồn: http://www.samanthapottermusic.com/wp-content/uploads/2012/10/music_note.png http://b.dryicons.com/files/graphics_previews/beautiful_in_color.jpg http://www.veryicon.com/icon/png/System/Standard%20Portfolio/About.png http://static.myfellowgamers.com/images/achievements/star.png 4.1.2 Xử lý font chữ + Trong PTITit Game có sử dụng Font chữ: UVF Barmbrack.ttf UVF Finura-Roman.otf UVF Bourgeois-Med.ttf UVFBankGothicMdBT.ttf VNFFuturaRegular.ttf Nguồn: http://font.vietdesigner.net/ 4.1.3 Xử lý âm + Âm dùng game thường file có kích thước nhỏ Thơng thường, phần mở rộng cho file âm dùng game wav, ogg, mid + Trong PTITit Game có sử dụng nhạc: http://mp3.zing.vn/bai-hat/Con-mua-ngang-qua-beat-Beat/IW80AID9.html http://mp3.zing.vn/bai-hat/League-of-Legends-Ranked-song-LOL/IW988U0C.html http://mp3.zing.vn/bai-hat/She-Neva-Knows-Beat-Touliver/IW89BOO7.html + Sau download file mp3 cần convert sang đuôi ogg cáchtruy cập trang http://audio.online-convert.com/convert-to-ogg + Một số file tiếng động lấy từ nguồn: http://www.soundjay.com/ http://www.freesound.org/ 4.1.4 Xử lý liệu CSDL a Công cụ quản lý csdl SQLite Manager ver 0.8.1 Là Add-on Mozilla Firefox Công cụ giúp dễ dàng thực thao tác với csdl sqlite thêm hàng, sửa hay xóa hàng trước GVHD: ThS Trịnh Thị Vân Anh 47 SVTH: Nguyễn Đức Hải – D09CNPM1 ĐỒ ÁN TỐT NGHIỆP Chương Cài đặt ‘PTITit Game’ Nguồn: https://addons.mozilla.org/en-US/firefox/addon/sqlite-manager/?src=ss Hình 4.6: Giao diện SQLite Manager b Câu hỏi CSDL tham khảo từ nguồn: http://www.sanfoundry.com/cplusplus-interview-questions-answers/ http://www.sanfoundry.com/java-questions-answers-freshers-experienced/ http://123doc.vn/document/2829-ngan-hang-cau-hoi-trac-nghiem-thiet-ke-web.htm Hiện CSDL có 150 câu hỏi, tương ứng 50 câu hỏi môn học 4.2 Yêu cầu hệ thống cài đặt 4.2.1 Yêu cầu cho phần lập trình Android Developer Tools Build: v21.1.0-569685 Java Development Toolkit 7.1 4.2.2 Yêu cầu cho framework Trong workspace Eclipse phải có thư viện: + AndEngine GLES2.0 + AndEnginePhysicsBox2Dextension Tải thư viện từ https://github.com/nicolasgramlich, sau import vào Eclipse GVHD: ThS Trịnh Thị Vân Anh 48 SVTH: Nguyễn Đức Hải – D09CNPM1 ĐỒ ÁN TỐT NGHIỆP Chương Cài đặt ‘PTITit Game’ Muốn tạo project sử dụng AndEngine GLES2.0, ta vào Properties project đó, chọn Android, phần Library, ta thêm thư viện vào Hình 4.7: Cấu hình cho project sử dụng AndEngine GLES2 extension 4.2.3 Yêu cầu cho phần chạy game a Cấu hình yêu cầu Game thiết kế cho thiết bị di động có cấu hình: + Hệ điều hành Android 4.0 trở lên + Độ phân giải hình 800x480 pixel trở lên b Cấu hình đề nghị Để hiển thị đầy đủ thành phần game, không làm ảnh hưởng đến hệ thống, cấu hình đề nghị cho thiết bị di động: + Hệ điều hành Android 4.0 trở lên + Độ phân giải hình 720x1280 pixel Đã thử nghiệm trên: + Samsung Galaxy S3 – HĐH Android 4.1 – Độ phân giải hình 720x1280 pixel GVHD: ThS Trịnh Thị Vân Anh 49 SVTH: Nguyễn Đức Hải – D09CNPM1 ĐỒ ÁN TỐT NGHIỆP Chương Cài đặt ‘PTITit Game’ 4.3 Các module hoàn thành 4.3.1 Sơ đồ luồng hình PTITit Game Splash Screen (1) Menu Screen (2) Select Level Screen (3) Guide Screen (4) High Score Screen (5) Dialog Play (7) LaunchLevel1 (9) LaunchLevel2 (10) Dialog Intro Level (8) Dialog Gameover (11) About Screen (6) Bắt đầu Hình 4.8: Sơ đồ luồng hình PTITit Game GVHD: ThS Trịnh Thị Vân Anh 50 SVTH: Nguyễn Đức Hải – D09CNPM1 ĐỒ ÁN TỐT NGHIỆP Chương Cài đặt ‘PTITit Game’ 4.3.2 Màn hình module game hồn thiện Theo sơ đồ hình 4.6: + Splash Screen (1) Hình 4.9: Splash Screen Splash Screen hình hiển thị bắt đầu vào game Trong thời gian chờ load tài nguyên game, splash screen hiển thị thay hình trống + Menu Screen (2) Menu Screen hình hiển thị tùy chọn cho người chơi lựa chọn Nếu chọn BẮT ĐẦU, Select Level Screen (3) hiển thị Nếu chọn HƯỚNG DẪN, Guide Screen (4) hiển thị Nếu chọn ĐIỂM CAO NHẤT, High Score Screen (5) hiển thị Nếu chọn THỐT, Game Nếu chọn nút , âm game bật / tắt Nếu chọn nút , About Screen(6) hiển thị Hình 4.10: Menu Screen GVHD: ThS Trịnh Thị Vân Anh 51 SVTH: Nguyễn Đức Hải – D09CNPM1 ĐỒ ÁN TỐT NGHIỆP Chương Cài đặt ‘PTITit Game’ + Guide Screen (4) Guide Screen hình đưa dẫn cho người chơi Người chơi bấm vào nút mũi tên, trượt hình xem trang hướng dẫn Hình 4.11: Guide Screen + High Score Screen (5) High Score Screen hình hiển thị thơng tin điểm cao mà người chơi đạt level chơi Màn chơi mở khóa điểm cao chơi hiển thi Trong trường hợp level chưa chơi, điểm mặc định Hình 4.12: High Score Screen + About Screen (6) About Screen hình hiển thị thơng tin giới thiệu số chi tiết game tác giả Màn hình xuất người chơi bấm vào nút GVHD: ThS Trịnh Thị Vân Anh 52 Menu Screen (2) SVTH: Nguyễn Đức Hải – D09CNPM1 ĐỒ ÁN TỐT NGHIỆP Chương Cài đặt ‘PTITit Game’ Hình 4.13: About Screen + Select Level Screen (3) Select Level Screen hình hiển thị danh sách mơn học cho người chơi lựa chọn Những môn học mở khóa chọn, mơn học cịn lại khóa khơng thể chọn Hình 4.14: Select Level Screen + Dialog Play (7) Dialog Play hiển thị người chơi bấm vào chọn môn học để chơi Trong Dialog Play hiển thị Level người chơi chơi Nếu chơi qua Level Level mở khóa, khơng Level khóa lại yêu cầu người chơi phải vượt qua Level trước GVHD: ThS Trịnh Thị Vân Anh 53 SVTH: Nguyễn Đức Hải – D09CNPM1 ĐỒ ÁN TỐT NGHIỆP Chương Cài đặt ‘PTITit Game’ Hình 4.15: Dialog Play + Dialog Intro Level (8) Dialog Intro Level hiển thị sau người chơi bấm vào chọn level Dialog Play Dialog có tác dụng thơng báo thông tin chơi đến người dùng để họ nắm mục tiêu chơi đưa Biểu tượng bên góc phải Dialog Intro Level thể việc bạn chọn chơi mức level Dialog Play Hình 4.16: Dialog Intro Level + LaunchLevel1 (9) Màn hình Level hiển thị sau người chơi chọn chơi Level Dialog Play, tiếp tục bấm vào Dialog Intro Level trước Hình 4.17: LaunchLevel1 + LaunchLevel2 (10) Màn hình Level hiển thị sau người chơi chọn chơi Level Dialog Play, tiếp tục bấm vào Dialog Intro Level trước GVHD: ThS Trịnh Thị Vân Anh 54 SVTH: Nguyễn Đức Hải – D09CNPM1 ĐỒ ÁN TỐT NGHIỆP Chương Cài đặt ‘PTITit Game’ Hình 4.18: LaunchLevel2 + Dialog Game Over (11) Dialog Game Over hiển thị sau người chơi kết thúc level (có thể level level 2) Kết chơi kiểm tra Nếu đủ điểm để qua hiển thị thông báo “Chúc mừng bạn vượt qua chơi này” Hoặc không đử điểm hiển thị thông báo “Rất tiếc! Bạn không vượt qua chơi này” Biểu tượng New Record phía góc phải xuất trường hợp người chơi đạt điểm cao từ trước đến chơi Hình 4.19: Dialog Game Over GVHD: ThS Trịnh Thị Vân Anh 55 SVTH: Nguyễn Đức Hải – D09CNPM1 ĐỒ ÁN TỐT NGHIỆP Chương Kết luận hướng phát triển CHƯƠNG KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN Trên sở việc tìm hiểu lập trình game thiết bị di động nghiên cứu thư viện AndEngine, đồ án đạt kết sau: - Giới thiệu cách khái quát game game thiết bị di động - Trình bày khái quát số cách phân loại game, thành phần game bản, quy trình đơn giản để phát triển game thiết bị di động - Giới thiệu cách khái quát số framework hỗ trợ việc phát triển game thiết bị di động - Giới thiệu sơ lược thành phần, đối tượng AndEngine thường sử dụng để phát triển game hệ điều hành Android - Trên sở tìm hiểu nghiên cứu AndEngine xây dựng ‘PTITit Game’ game đơn giản sử dụng AndEngine PhysicsBox2D extension AndEngine Bên cạnh kết đạt đồ án hạn chế sản phẩm PTITit Game là: - Game cịn đơn giản, cách chơi chưa thực hấp dẫn mà chủ yếu tập trung vào thiết kế đồ họa - Game chưa hỗ trợ tốt cho nhiều hình khác Các hình có độ phân giải thấp bị hạn chế hiển thị - CSDL game cịn liệu (50 câu hỏi cho môn học) dẫn đến việc trùng lặp câu hỏi - Vẫn có số lỗi mắc phải trình chơi game mà người dùng nhận gọi hay tin nhắn Qua kết hạn chế hệ thống cho thấy việc xây dựng game hoàn thiện thiết bị di động nói chung hệ điều hành Android nói riêng địi hỏi q trình nghiên cứu thực lâu dài công sức tập thể Trong phạm vi đồ án, nhiều hạn chế thời gian thực lượng công việc lớn, em thực yếu tố để xây dựng game đơn giản Android sử dụng công nghệ AndEngine Để hồn thiện sản phẩm game, cần phải có thêm nhiều thời gian, cơng sức Trước mắt hướng phát triển đồ án tập trung cải thiện tính game khả tương thích với nhiều hình, cải tiến cách chơi giúp người chơi cảm thấy thú vị hơn, mở rộng CSDL để lượng câu hỏi phong phú hơn, giải vấn đề game mắc phải người dùng nhận gọi hay tin nhắn trình chơi game Xa nữa, mục tiêu đồ án hướng tới mục đích kinh tế Game mở thêm cửa hàng game để người chơi mua vật phẩm cửa hàng vượt qua chơi dễ dàng Hay thiết kế chế độ đấu đối kháng nhiều người chơi để tăng tính thu hút cho game Ngồi ra, game cịn mở rộng cho sinh viên nhiều trường học khác, với lĩnh vực khác cách thay đổi liệu hình ảnh, text game GVHD: ThS Trịnh Thị Vân Anh 56 SVTH: Nguyễn Đức Hải – D09CNPM1 ĐỒ ÁN TỐT NGHIỆP Chương Kết luận hướng phát triển DANH MỤC TÀI LIỆU THAM KHẢO Tiếng Anh: [1] Chris Pruett, Writing Real Time Games For Android, May 2009 [2] Jane McGonigal, Reality is Broken, The Penguin Press, New York, 2011 [3] Jayme Shroeder & Brian Broyles, AndEngine for Android Game Development Cookbook, PACKT Publishing, January 2013 [4] Rick Rogers, Learning Android Game Programming, Addison-Wesley, USA, December 2011 Danh mục Website tham khảo: [5] “Hướng dẫn tạo Game đơn giản với AndEngine 2.0”: http://www.droidviet.com/forum/bai-hoc-ma-nguon/15175-huong-dan-tao-mot-gamedon-gian-voi-andengine-2-0-phan-1-a.html [6] “Hướng dẫn lập trình game Pikachu với Andengine”: http://android.vn/threads/huongdan-lap-trinh-game-pikachu-voi-andengine-da-hoan-thanh.23996/ [7] “Hướng dẫn lập trình game Kim Cương (Jewels) với Andengine”: http://android.vn/threads/huong-dan-lap-trinh-game-kim-cuong-jewels-voi-andengineda-hoan-thanh.26451/ [8] “Không lấy liệu SQLite từ Assets được”: http://android.vn/threads/khong-lay-dulieu-sqlite-tu-assets-ra-duoc.28331/ [9] “Copy my own SQLite DB from Asset folder to”: http://stackoverflow.com/questions/4434367/copy-my-own-sqlite-db-from-asset-folderto [10] “Copy my own SQLite DB from Asset folder to”: http://stackoverflow.com/questions/4434367/copy-my-own-sqlite-db-from-asset-folderto [11] “[Released] Balance Ball”: http://www.andengine.org/forums/post56148.html#p56148 [12] “GLES1 versus GLES2 – comparison”: http://www.matim-dev.com/gles1-versusgles2 -comparison.html [13] https://github.com/nicolasgramlich [14] http://www.andengine.org/forums/ [15] http://www.mybringback.com/tutorial-series/12754/andengine-gles2-simple-vs-basegameactivity/ [16] “Android: Accessing assets folder sqlite database file with sqlite extension”: http://stackoverflow.com/questions/2605555/android-accessing-assets-folder-sqlitedatabase-file-with-sqlite-extension [17] http://font.vietdesigner.net/ GVHD: ThS Trịnh Thị Vân Anh 57 SVTH: Nguyễn Đức Hải – D09CNPM1 ĐỒ ÁN TỐT NGHIỆP Chương Kết luận hướng phát triển [18] http://mp3.zing.vn/ [19] http://audio.online-convert.com/convert-to-ogg [20] http://www.soundjay.com/ [21] http://www.freesound.org/ [22] https://addons.mozilla.org/en-US/firefox/addon/sqlite-manager/?src=ss [23] http://www.sanfoundry.com/cplusplus-interview-questions-answers/ [24] http://www.sanfoundry.com/java-questions-answers-freshers-experienced/ [25] http://123doc.vn/document/2829-ngan-hang-cau-hoi-trac-nghiem-thiet-ke-web.htm GVHD: ThS Trịnh Thị Vân Anh 58 SVTH: Nguyễn Đức Hải – D09CNPM1 ... thiệu chung game game thiết bị di động Trình bày số hiểu biết chung game game thiết bị di động Các thành phần game, lưu ý xây dụng game thiết bị di động Chương 2: Giới thiệu AndEngine Trình bày kiến... chế pin 1.3 Sơ lược quy trình phát triển game di động Một đội phát triển game thiết bị di động thường có vị trí sau: + Người viết kịch + Lập trình viên + Người thiết kế đồ họa + Người soạn nhạc... người chơi chọn đáp án, ẩn khỏi hình sau khoảng thời gian e ThoiGianDemNguoc .java Diem .java Hình 3.27: Thể lớp ThoiGianDemNguoc .java Diem .java Level Lớp ThoiGianDemNguoc .java Diem .java chứa đối tượng

Ngày đăng: 12/06/2014, 18:18

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Chris Pruett, Writing Real Time Games For Android, May 2009 Sách, tạp chí
Tiêu đề: Writing Real Time Games For Android
[2] Jane McGonigal, Reality is Broken, The Penguin Press, New York, 2011 [3] Jayme Shroeder & Brian Broyles, AndEngine for Android Game DevelopmentCookbook, PACKT Publishing, January 2013 Sách, tạp chí
Tiêu đề: Reality is Broken", The Penguin Press, New York, 2011[3] Jayme Shroeder & Brian Broyles, AndEngine "for Android Game Development "Cookbook
[4] Rick Rogers, Learning Android Game Programming, Addison-Wesley, USA, December 2011.Danh mục các Website tham khảo Sách, tạp chí
Tiêu đề: Learning Android Game Programming
[5] “Hướng dẫn tạo một Game đơn giản với AndEngine 2.0”: http://www.droidviet.com/forum/bai-hoc-ma-nguon/15175-huong-dan-tao-mot-game-don-gian-voi-andengine-2-0-phan-1-a.html Sách, tạp chí
Tiêu đề: Hướng dẫn tạo một Game đơn giản với AndEngine 2.0
[6] “Hướng dẫn lập trình game Pikachu với Andengine”: http://android.vn/threads/huong-dan-lap-trinh-game-pikachu-voi-andengine-da-hoan-thanh.23996/ Sách, tạp chí
Tiêu đề: Hướng dẫn lập trình game Pikachu với Andengine
[7] “Hướng dẫn lập trình game Kim Cương (Jewels) với Andengine”: http://android.vn/threads/huong-dan-lap-trinh-game-kim-cuong-jewels-voi-andengine-da-hoan-thanh.26451/ Sách, tạp chí
Tiêu đề: Hướng dẫn lập trình game Kim Cương (Jewels) với Andengine
[8] “Không lấy dữ liệu SQLite từ Assets ra được”: http://android.vn/threads/khong-lay-du-lieu-sqlite-tu-assets-ra-duoc.28331/ Sách, tạp chí
Tiêu đề: Không lấy dữ liệu SQLite từ Assets ra được
[9] “Copy my own SQLite DB from Asset folder to”: http://stackoverflow.com/questions/4434367/copy-my-own-sqlite-db-from-asset-folder-to Sách, tạp chí
Tiêu đề: Copy my own SQLite DB from Asset folder to
[10] “Copy my own SQLite DB from Asset folder to”: http://stackoverflow.com/questions/4434367/copy-my-own-sqlite-db-from-asset-folder-to Sách, tạp chí
Tiêu đề: Copy my own SQLite DB from Asset folder to
[11] “[Released] Balance Ball”: http://www.andengine.org/forums/post56148.html#p56148[12]“GLES1 versus GLES2 – comparison”: http://www.matim-dev.com/gles1-versus-gles2---comparison.html Sách, tạp chí
Tiêu đề: [Released] Balance Ball”: http://www.andengine.org/forums/post56148.html#p56148[12] “GLES1 versus GLES2 – comparison
[16] “Android: Accessing assets folder sqlite database file with .sqlite extension”: http://stackoverflow.com/questions/2605555/android-accessing-assets-folder-sqlite-database-file-with-sqlite-extension Sách, tạp chí
Tiêu đề: Android: Accessing assets folder sqlite database file with .sqlite extension

HÌNH ẢNH LIÊN QUAN

Hình 2.1: Ví dụ một cấu trúc đơn giản của BaseGameActivity. - Đồ án lập trình di động Lập trình game code java
Hình 2.1 Ví dụ một cấu trúc đơn giản của BaseGameActivity (Trang 13)
Hình 2.2: Cấu trúc của một SimpleBaseGameActivity trong AndEngine GLES2. - Đồ án lập trình di động Lập trình game code java
Hình 2.2 Cấu trúc của một SimpleBaseGameActivity trong AndEngine GLES2 (Trang 14)
Hình 2.6: Ví dụ về TiledTextureRegion true_TTR sử dụng trong PTITit Game: - Đồ án lập trình di động Lập trình game code java
Hình 2.6 Ví dụ về TiledTextureRegion true_TTR sử dụng trong PTITit Game: (Trang 17)
Hình 3.1: Giao diện phác thảo Level 1 - Đồ án lập trình di động Lập trình game code java
Hình 3.1 Giao diện phác thảo Level 1 (Trang 23)
Hình 3.8: Thể hiện của lớp KhungCauHoi.java trong Level 1 d. KhungHinhAnh.java - Đồ án lập trình di động Lập trình game code java
Hình 3.8 Thể hiện của lớp KhungCauHoi.java trong Level 1 d. KhungHinhAnh.java (Trang 27)
Hình 3.9: Thể hiện của lớp KhungHinhAnh.java trong Level 1 e. ThoiGianDemNguoc.java và Diem.java - Đồ án lập trình di động Lập trình game code java
Hình 3.9 Thể hiện của lớp KhungHinhAnh.java trong Level 1 e. ThoiGianDemNguoc.java và Diem.java (Trang 27)
Hình 3.12: Một số hình ảnh dùng cho các Sprite trong Level 1 3.2.4. Ảnh chụp màn hình - Đồ án lập trình di động Lập trình game code java
Hình 3.12 Một số hình ảnh dùng cho các Sprite trong Level 1 3.2.4. Ảnh chụp màn hình (Trang 28)
Hình 3.13: Ảnh chụp màn hình Level 1 - Đồ án lập trình di động Lập trình game code java
Hình 3.13 Ảnh chụp màn hình Level 1 (Trang 29)
Hình 3.14: Ảnh chụp màn hình Level 1 - Đồ án lập trình di động Lập trình game code java
Hình 3.14 Ảnh chụp màn hình Level 1 (Trang 29)
Hình 3.15: Ảnh chụp màn hình Level 1 - Đồ án lập trình di động Lập trình game code java
Hình 3.15 Ảnh chụp màn hình Level 1 (Trang 29)
Hình 3.16: Giao diện phác thảo Level 2 - Đồ án lập trình di động Lập trình game code java
Hình 3.16 Giao diện phác thảo Level 2 (Trang 31)
Hình 3.19: Các biến sử dụng trong LaunchLevel2.java - Đồ án lập trình di động Lập trình game code java
Hình 3.19 Các biến sử dụng trong LaunchLevel2.java (Trang 35)
Hình 3.29: Ảnh chụp màn hình Level 2 - Đồ án lập trình di động Lập trình game code java
Hình 3.29 Ảnh chụp màn hình Level 2 (Trang 40)
Hình 3.28: Một số hình ảnh dùng cho các Sprite trong Level 2 3.3.4. Ảnh chụp màn hình - Đồ án lập trình di động Lập trình game code java
Hình 3.28 Một số hình ảnh dùng cho các Sprite trong Level 2 3.3.4. Ảnh chụp màn hình (Trang 40)
Hình 3.31: Ảnh chụp màn hình Level 2 - Đồ án lập trình di động Lập trình game code java
Hình 3.31 Ảnh chụp màn hình Level 2 (Trang 41)
Hình 3.37: Cấu trúc bảng QUESTIONS trong PTITITGAMEDB - Đồ án lập trình di động Lập trình game code java
Hình 3.37 Cấu trúc bảng QUESTIONS trong PTITITGAMEDB (Trang 43)
Hình 4.3: Button Thoát sử dụng Photoshop - Đồ án lập trình di động Lập trình game code java
Hình 4.3 Button Thoát sử dụng Photoshop (Trang 46)
Hình 4.4: Dialog sử dụng Photoshop - Đồ án lập trình di động Lập trình game code java
Hình 4.4 Dialog sử dụng Photoshop (Trang 46)
Hình 4.6: Giao diện SQLite Manager  b. Câu hỏi trong CSDL được tham khảo từ các nguồn: - Đồ án lập trình di động Lập trình game code java
Hình 4.6 Giao diện SQLite Manager b. Câu hỏi trong CSDL được tham khảo từ các nguồn: (Trang 48)
Hình 4.7: Cấu hình cho project sử dụng AndEngine GLES2 và extension - Đồ án lập trình di động Lập trình game code java
Hình 4.7 Cấu hình cho project sử dụng AndEngine GLES2 và extension (Trang 49)
Hình 4.9: Splash Screen - Đồ án lập trình di động Lập trình game code java
Hình 4.9 Splash Screen (Trang 51)
Hình 4.11: Guide Screen - Đồ án lập trình di động Lập trình game code java
Hình 4.11 Guide Screen (Trang 52)
Hình 4.12: High Score Screen - Đồ án lập trình di động Lập trình game code java
Hình 4.12 High Score Screen (Trang 52)
Hình 4.14: Select Level Screen - Đồ án lập trình di động Lập trình game code java
Hình 4.14 Select Level Screen (Trang 53)
Hình 4.13: About Screen - Đồ án lập trình di động Lập trình game code java
Hình 4.13 About Screen (Trang 53)
Hình 4.15: Dialog Play - Đồ án lập trình di động Lập trình game code java
Hình 4.15 Dialog Play (Trang 54)
Hình 4.16: Dialog Intro Level - Đồ án lập trình di động Lập trình game code java
Hình 4.16 Dialog Intro Level (Trang 54)
Hình 4.19: Dialog Game Over - Đồ án lập trình di động Lập trình game code java
Hình 4.19 Dialog Game Over (Trang 55)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w