Phát triển trò chơi chiếc nón kỳ diệu trên hệ điều hành android

21 582 0
Phát triển trò chơi chiếc nón kỳ diệu 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

MỤC LỤC Phần I: Sơ lược hệ điều hành Android Phân II: Phát triển trò chơi Chiếc nón kỳ diệu hệ điều hành Android Phần III: Tổng kết PHẦN 1: SƠ LƯỢC VỀ HỆ ĐIỀU HÀNH ANDROID I Lịch sử đời phát triển hệ điều hành android Tháng năm 2005 Công ty Google mua lại Android Inc đánh dấu bước khởi đầu hệ điều hành Android, năm 2007 với thành lập Liên minh thiết bị cầm tay mở (Open Handset Alliance) hệ điều hành Android lần giới thiệu, tháng 10 năm 2008 điện thoại Android HTC Dream giới thiệu bán mở đầu cho thời kỳ phát triển hệ điều hành nguồn mở Android Hình 1.1 Điện thoại Android - HTC Dream phiên Androdi 1.6 Trải qua thời kỳ phát triển mạnh mẽ với nhiều nhà sản xuất lớn Samsung, LG, HTC, Sony…cho nhiều dòng thiết bị khác nhau, tính đến tháng 12 năm 2013 số thiết bị Android kích hoạt chạm mốc tỷ thiết bị, chiếm phần lớn điện thoại di động, máy tính bảng, thiết bị nghe nhìn thông minh khác, tính đến quý năm 2013 Android tảng đứng đầu thị trường di động với 81% tổng số thiết bị bán Hình 1.2 Thị phần thiết bị di động năm 2013 (Engadget.com) Android hệ điều hành dựa tảng LINUX thiết kế dành cho thiết bị cảm ứng điện thoại, máy tính bảng…là điều hành nguồn mở Google Inc phát hành mã nguồn theo giấy phép Apache, với không nhiều buộc nên cho nhà phát triển thiết bị cộng đồng phát triển giới điều chỉnh phân phối Android cách tự Android có hạt nhân dựa nhân Linux phiên 2.6, kể từ Android 4.0 Ice Cream Sandwich trở sau, phiên 3.x, với middleware, thư viện API viết C, phần mềm ứng dụng chạy tảng ứng dụng gồm thư viện tương thích với Java dựa Apache Harmony Android sử dụng máy ảo Dalvik với trình biên dịch động để chạy 'mã dex' (Dalvik Executable) Dalvik, thường biên dịch sang Java bytecode Nền tảng phần cứng Android kiến trúc ARM Người ta hỗ trợ x86 thông qua dự án Android x86, Google TV sử dụng phiên x86 đặc biệt Android Nhân Linux dùng cho Android Google thực nhiều thay đổi kiến trúc so với nhân Linux gốc Android sẵn X Window System không hỗ trợ thư viện GNU chuẩn, nên việc chuyển ứng dụng thư viện Linux có sẵn sang Android khó khăn Các ứng dụng C đơn giản SDL hỗ trợ cách chèn đoạn shim Java sử dụng tương tự JNI , người ta chuyển Jagged Alliance sang Android Một số tính Google đóng góp ngược vào nhân Linux, đáng ý tính quản lý nguồn điện có tên wakelock II Hình 1.3 Kiến trúc hệ điều hành Android Sơ lược việc phát triển ứng dụng cho hệ điều hành Android Bên cạnh hệ điều hành cung cấp tính cho thiết bị Google cung cấp kho ứng dụng mở rộng cho phép người sử dụng mua tải xuống miễn phí tiện ích mở rộng, ứng dụng trò chơi cho thiết bị thông qua dịch vụ Google Play Với thủ tục tương đối đơn giản nhà phát triển, cá nhân, lập trình viên đăng ký dễ dàng để trở thành nhà phát triển ứng dụng cho hệ điều hành Android bán cung cấp miễn phí ứng dụng lên kho ứng dụng Google kho ứng dụng bên thứ Các ứng dụng tiện ích trò chơi sau gọi chung ứng dụng chạy hệ điều hành viết ngôn ngữ Java, Android SDK tool biên dịch code tài nguyên có file đóng gói APK (Android Package) có phần mở rộng apk Một APK file bao gồm nội dung ứng dụng cài đặt nên thiết bị Android tương ứng, mói cách khác file cài đặt ứng dụng chạy hệ điều hành Android Thành phân ứng dụng: - Các Activity Một Activity coi hình đơn giao diện người sử dụng, ví dụ ứng dụng Email phải có Activity thể tiêu đề ngày tháng đến trạng thái tất thư đến Các Activity hoạt động tổng thể để xây dựng nên ứng dụng nhiên chúng có độc lập với nhau, ứng dụng khác hoàn toàn sử dụng chung Acitvity - Các Service Một service thành phần chạy ngầm phía hệ điều hành, thực chức liên tục lâu dài để phục vụ cho tiến trình khác Một service không cung cấp giao diện người dùng, ví dụ dịch vụ nghe nhạc - người dùng truy cập vào trang web xem ảnh Các Content provider Content provider quản lý chung tập ứng dụng, ví dụ tên, số điện thoại danh bạ Content provider lưu trữ hoàn toàn lấy - sử dụng từ ứng dụng khác Manifest File Là file XML khai báo tất ứng dụng Android, cung cấp nội dung chủ yếu sau đây: o Các quyền người dụng mà ứng dụng yêu cầu quyền gửi tin nhắn, truy cập internet, truy cập danh bạ… o Mức API tối thiệu mà ứng dụng yêu cầu để cài đặt, ứng dụng có API o cao hệ điều hành không cài đặt hệ điều hành Các thư viện API mà ứng dụng yêu cầu Hình 1.4 AndroidManifest - Tài nguyên ứng dụng o Một ứng dụng ứng dụng đa phương tiện hay trò chơi không bao gồm mã lệnh mà bao gồm thệ thống âm thanh, hình ảnh để cung cấp cho người sử dụng giao diện thuận tiện đẹp mắt PHẦN 2: XÂY DỰNG TRÒ CHƠI CHIẾC NÓN KỲ DIỆU TRÊN HỆ ĐIỀU HÀNH ANDROID Chiếc nón kỳ diệu trò chơi dành cho người chơi thiệt bị di động hệ điều hành Android bao gồm điện thoại động máy tính bảng, nội dung trò chơi đưa ô chữ ẩn chữ với gợi ý người chơi đoán chữ để tìm ô chữ ẩn, qua trình đoán người chơi quay nón để tính mức điểm thưởng cho lần đoán I Mục đích đề tài: Trò chơi thực chất phần mềm có thêm hiệu ứng âm hình ảnh tương tác lớn giữ người sử dụng chương trình, không đơn phần mềm giải toàn thông thường mà sản phẩm Multimedia giải trí Tuy nhiên để đưa thiết kế hoàn chỉnh kiến trúc trò chơi tương đối khó khăn, đề tài Xây dựng trò chơi Chiếc nón kỳ diệu trước hết để sơ lược tìm hiểu bước xây dựng phát triển trò chơi đơn giản cho hệ điều hành Android nói riêng trò chơi nói chung, thứ hai qua trình xây dựng sản phẩm tìm hiểu thêm công cụ lập trình, engine trò chơi ngôn ngữ lập trình java, lý đề tài chủ yếu tập trung vào mục tiêu bản: o Phân tích thiết kế để đưa kiến trúc trò chơi mà từ dễ dàng sử dụng công cụ lập trình để phát triển thành sản phẩm hoàn thiện o Sử dụng công cụ Android để xây dựng trò chơi hoàn thiện II Phân tích thiết kế trò chơi Chiếc nón kỳ diệu Công việc phân tích thiết kế trò chơi Chiếc nón kỳ diệu thực thi công việc sau o Tổng hợp yêu cầu (Requiement Capture): tổng hợp yêu cầu trò chơi, mô hình hóa yêu cầu dựa biểu đồ UML use case Bước thực nhằm mục đích yêu cầu trò chơi thành phần tĩnh mà trò chơi phải xây dựng o Phân tích yêu cầu (Requiement Analysis) : Từ bước tổng hợp yêu cầu, đưa phân tích yêu cầu để chuyển chúng thành thành phần trò chơi, đâu sau bước phân tích yêu cầu đưa Class cần có để cấu thành nên trò chơi o Mô hình động (Dynamic Modelling): hai bước đưa cấu trúc tĩnh trò chơi, mà chưa việc xây dựng tương tác trò chơi người chơi thành phần khác bên trò chơi, bước Mô hình động hoạt động, trạng thái khác cần có trò chơi, từ khởi đầu đến kết thúc, để mô hình hóa trạng thái hoạt động sử dụng biểu đồ UML Activity Dưới chi tiết bược thực Tổng hợp yêu cầu (Requiement Capture) Có mành hình trò chơi hình Splash  Màn hình Menu lựa chọn  Màn hình xem hướng dẫn trò chơi  Màn hình xem bảng xếp hạng  Màn hình chơi  Màn hình Slash (Màn hình chờ khởi động game) o Các hình trạng thái chuyển mô tả theo sơ đồ Hình 2.1 Luồng di chuyển trò chơi Dưới hoạt động tương tác người chơi trò chơi, phần in đậm chủ thể thực tương tác với người chơi, trò chơi lớn việc liệt kê tất hoạt động không cần thiết, mục đích bước phân tích thiết kế đưa cấu trúc tổng quan trò chơi mà lập trình viên người liên quan hiểu triển khai chúng thành sản phẩm MÀNH HÌNH MENU Hiển thị cho người chơi:  Hiển thị hình menu  Hiển thị nút lựa chọn Menu  Hiển thị Logo tên trò chơi  Thể âm âm nút lựa chọn  Hiển thị MessageBox xác nhận thoát Các hoạt động người chơi:      Người chơi chọn nút bắt đầu Người chơi chọn nút xem hướng dẫn Người chơi chọn nút xem bảng xếp hạng Người chơi bật tắt âm Người chơi chọn thoát game • Người nhấn Thoát để thoát hẩn game • Người chơi Chọn Hủy để trở lại menu MÀN HÌNH HƯỚNG DẪN Các hiển thị  Hiển thị nội dung hướng dẫn  Hiển thị nút Thoát để trở Menu Các hành động  Nhấn nút thoát để trở Menu MÀN HÌNH BẢNG XẾP HẠNG Các hiển thị 10 Hiển thị bảng xếp hạng • Hiển thị Unit điểm cao bảng xếp hạng  Hiển thị nút Thoát để trở Menu  Các hành động  Nhấn nút thoát để trở Menu MÀN HÌNH CHƠI CHÍNH Các hiển thị Hiển thị nón quay Hiển thị ô chữ gồm ô chữ Hiển thị keyboard bao gồm nút chữ • Hiển thị keyboard (Hiển thị trở lại hình) • Giấu keyboard (ẩn khỏi hình) • Ẩn nút chữ đoán  Hiển thị MC (Người dẫn chương trình) gồm câu bình luận    nút lựa chọn  Hiển thị câu hỏi  Hiển thị điểm đạt  Hiển thị số lượt chơi Các hành động người chơi Quay nón Đoán chữ • Chọn chữ  Lật ô chữ bảng ô chữ  Đoán toàn ô chữ • Nhập ô chữ đoán   11 • Xác nhận ô chữ đoán Tương tác với MC • Chọn quay tiếp • Chọn đoán  Lưu điểm • Nhập tên người chơi • Chọn lưu điểm  Thoát khỏi chơi • Chọn Thoát để thoát chơi • Chọn Hủy để tiếp tục chơi tiếp  Từ tình ta có sơ đồ USE CASE sau: Màn hình Menu Màn hình hướng dẫn 12 Màn hình bảng xếp hạng 13 Màn hình chơi - Các hoạt động người chơi: - Các hiển thị Màn chơi 14 Mô hình tĩnh: 15 Từ mô hình use case phân tích phần Yêu cầu trò chơi ta rút Class sau: - ManHinh ManHinhMenu ManHinhHuongDan ManHinhBXH ManHinhGameLevel (Màn hình chơi chính) MenuButton (Các nút Menu) BXHUnit SimpleButton (Nút ấn trò chơi) NonKyDieu OchuTroChoi ChuCaiOChu (nút chữ ô chữ) BanPhim NutBanPhim MC GameManager LuuDiem Sơ đồ Class thể sau: Hình 2.2 Sơ đồ số class trò chơi 16 Phân tích yêu cầu Mô hình động Ở phần tập trung vào tương tác phần chơi chính: Hoạt động phần chơi mô tả tóm tắt sau: Trò chơi hiển thị hình ảnh chơi chính, Level giây MC chương trình hiển thị hỏi lại người chơi sẵn sàng sau xem qua ô chữ đọc nội dung câu hỏi Tiếp theo nón quay hiển thị để người chơi quay nón chờ nón dừng, kết (Điểm số) hiển thị, bàn phím chữ hiển thị để người chơi đoán chọn chữ cái, sau người chơi chọn chữ chương trình chờ giây đưa kết hay sai, tiếp tục trở trạng thái quay nón, cập nhật thêm điểm, sai lượt chơi bị trở trạng thái quay nón để tiếp tục, hết lượt chơi trò chơi kết thúc bảng lưu điển hiển thị để người chơi lựa chọn lưu lại điểm số Màn chơi hoàn thành người chơi đoán hết ô chữ người chơi đoán ô chữ Trò chơi kết thúc hết lượt chơi người chơi hoàn thành 20 level trò chơi Từ trò chơi có số trạng thái sau: - Trạng thái giới thiệu: Khi bắt đầu trò chơi Trạng thái sẵn sàng quay nón: Ở tráng thái người chơi tương tác với - nón để quay Trạng thái nón quay: trạng thái hiển thị nón quay để chờ kết quả, người chơi chờ không tương tác với thành phần khác cho - đến nón dừng lại Trạng thái nón dừng: Sau quay nón dừng lại ô kết quả, trạng thái - kéo dài 2s để hiển thị rõ kết lượt quay Trạng thái đoán chữ: Trạng thái mà trò chơi yêu cầu người chơi đoán chữ cái, - trạng thái chuyển người chơi chọn ô chữ Trạng thái đoán chữ xong: Sau người chơi chọn chuyển sang trạng thái - chờ giây để trò chơi xác nhận chữ đoán hay sai Trạng thái chiến thắng: Là trạng thái người chơi đoán xong ô chữ 17 - Trạng thái thua: Khi người chơi đoán sai hết lượt đoán chuyển sang trạng thái Các trạng thái mô tả theo sơ đồ sau: 18 Hình 2.3 Sơ đồ trạng thái trò chơi Khi triển khai trò chơi quản lý tiến trình timerHandler trạng thái private static final int STATE_WHEEL = 0; private static final int STATE_GUESS = 1; 19 private static final int STATE_INTRO = 3; private static final int STATE_READ_QUEST = 4; private static final int STATE_GUESS_DONE = 5; private static final int STATE_WHEEL_DONE = 6; private static final int STATE_READY_WHEEL = 7; private static final int STATE_SPIN_GUESS = 8; private static final int STATE_BANK_RUP = 12; private static final int STATE_FLIP = 9; private static final int STATE_SPIN = 10; private static final int STATE_GIFT = 11; private static final int STATE_HALF = 13; private static final int STATE_WIN = 14; private static final int STATE_LOSE = 15; private static final int STATE_ANSWER = 16; Thực thi yêu cầu Từ mô tả thiết kế triển khai thực thi trò chơi nón kỳ điệu: Ngôn ngữ sử dụng: Java Trình biên tập: Eclipse công cụ Android SDK Manager Engine: Andengine GLES 2.0 Yêu cầu hệ điều hành: Android 2.3 trở lên Một số điểm quan trọng trình triển khai: o Sử dụng Engine:  Trò chơi Chiếc Nón Kỳ diệu xây dựng engine Andengine (http://www.andengine.org/) eninge 2D nguồn mở miễn phí chuyên biệt cho việc xây dựng trò chơi 2D hệ điều hành Android với nhiều ưu điểm bật như, miễn phí, dễ dàng quản lý tài nguyên, cung cấp thư viện vật lý có sẵn o Lưu trữ sử dụng liệu Android Để kết nối với sở liệu, sử dụng lưu trữ liệu cần sử dụng đến SQLite, SQLite cung cấp sẵn thư viện Android import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; PHẦN III: TỔNG KẾT Hệ điều hành Android có nhiều ưu điểm để xây dựng phát triển ứng dụng có khả thương mại, công cụ hỗ trợ xây dựng ứng dụng, trò chơi đa dạng phong phú, có nhiều nguồn tài liệu hỗ trợ việc phân phối ứng dụng vô thuận lợi kho ứng dụng GooglePlay có khả phân hóa vùng miền cao đảm bảo cho ứng dụng nội địa phát triển cạnh tranh tốt 20 Trong trình phát triển game Chiếc Nón Kỳ Diệu nhiều vấn đề hạn chế, việc kết nối sở liệu thiết bị di động, khả quản lý nhớ hạn chế điện thoại, kiểm tra phát lỗi sản phẩm khó khăn đa dạng thiết bị, phần cứng, tỷ lệ hình hệ điều hành khác Đề tài phát triển theo hướng: o Hiệu ứng âm đồ họa cần cải thiện o Ngân hàng câu hỏi cần đặt server để thuận tiện cho việc nâng cấp, bổ xung sửa chữa o Khả chơi nhiều người (Multiplayer), khả người chơi thi đấu với AI trò chơi… - Tài liệu tham khảo o Nguyễn Văn Vỵ - Nguyễn Việt Hà, Giáo trình kỹ nghệ phần mềm, 2010 o Erik Bethke, Game development and production, Worldware game developer’s libarary, 2003 o Jayme Schroeder Brian Broyles, AndEngine for Android Game Development Cookbook, PACKT, 2013 21

Ngày đăng: 01/07/2016, 12:57

Từ khóa liên quan

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

Tài liệu liên quan