1. Trang chủ
  2. » Công Nghệ Thông Tin

Báo cáo: Xây dựng ứng dụng GAME FUN MATH trên android

30 520 4

Đ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 tiêu chính của Báo cáo Xây dựng ứng dụng GAME FUN MATH trên android là việc xây dựng game Funsmath sẽ giúp trẻ ôn tập những phép toán , cải thiện bộ nhớ, phát triển tư duy logic, phát triển tư duy kết hợp.

BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC SAO ĐỎ BÁO CÁO ĐỀ TÀI MƠN HỌC LẬP TRÌNH HỆ THỐNG NHÚNG Đề tài: XÂY DỰNG ỨNG DỤNG GAME FUN MATH TRÊN ANDROID Nhóm thực hiện: Sv Nguyễn Thị Trang Sv Vũ Thị Thủy CNTT - DK04 Lớp: Hải Dương, tháng 09/2017 LỜI MỞ ĐẦU Hiện nay, toán học coi tảng phát triển Hàng triệu người từ văn hóa khác nỗ lực mơn học Ở Việt Nam tốn học thể vị trí quan trọng kể từ đất nước bắt đầu phát triển Tất lĩnh vực cần có trình độ tốn Vì tốn học môn quan trọng mà nên học rèn luyện hàng ngày đặc biệt trẻ nhỏ Khi nhỏ, trẻ dễ dàng tiếp thu toán nhanh để thúc đẩy suy tư trẻ thay học thụ động trưởng thành Độ tuổi em có khả tự tìm quy tắc riêng cho thân theo cách hồn tồn Nhờ đó, trẻ học nhanh dễ dàng tiếp thu kiến thức mà giáo viên truyền đạt Cùng với phát triển công nghệ di động bùng nổ vài năm qua Các thiết bị cầm tay trở nên mạnh mẽ phổ biến Trong vài năm trở lại đây, hệ điều hành Android đời trở thành tảng điện thoại thông minh phổ biến giới Những ưu điểm dễ thấy Android khả tùy biến nhanh chóng, dễ làm quen, ứng dụng hỗ trợ phong phú, tương thích với đa cấu hình phần cứng nhà sản xuất Hầu tất smartphone sử dụng hệ điều hành Android dễ sử dụng, đơn giản tùy biến theo sở thích cá nhân Với phát triển mạnh mẽ Android, lập trình game Android, hội cho lập trình viên lớn Vì vậy, nhóm chọn đề tài “Lập trình ứng dụng game Fun Math Android” Trong đề tài này, nhóm trình bày nhìn lập trình game Android demo ứng dụng game MỤC LỤC LỜI MỞ ĐẦU .2 MỤC LỤC DANH MỤC HÌNH .5 MỞ ĐẦU Lý chọn đề tài Mục đích nghiên cứu Đối tượng đề tài .6 Phạm vi nhiên cứu .6 Phương pháp nghiên cứu .6 Bố cục đề tài CHƯƠNG CƠ SỞ LÝ THUYẾT 1.1.Tổng quan Android 1.1.1.Tầng hạt nhân Linux 1.1.2.Tầng Library .8 1.1.3 Phần Android runtime 1.1.4 Tầng Application Framework .8 1.1.5 Tầng Application 1.2 Tổng quan Game ENGINE 1.2.1.Khái niệm 1.2.2.Mục đích .9 1.2.3.Ảo hóa phần cứng (Hardware Abstraction) .10 1.2.4.Phần mềm trung gian 10 1.2.5.Kiến trúc tổng quan 11 1.3.Tổng quan Unity 12 1.3.1.Tổng quan Unity 12 1.3.2.Các thành phần Unity .12 CHƯƠNG THIẾT KẾ ỨNG DỤNG GAME 15 2.1.Thiết kế game 15 2.1.1.Tạo cấu hình game 2D 15 2.1.2 Load Back ground 17 2.1.3.Sự kiện thực phép toán 18 2.1.4.Sự kiện kích nút Button .19 2.1.5.Điêm số hiển thị 20 2.1.6.Thời gian game 20 2.1.7.Âm game 21 2.2.Xây dựng game Fun Math .23 2.2.1.Giới thiệu game 23 2.2.2.Quy luật chơi .24 2.2.3.Điểm số .24 2.2.4.Cách biên dịch file APK unity .25 KẾT QUẢ VÀ HƯỚNG PHÁT TRIỂN 29 Cài đặt 29 Kết 29 2.1 Ưu điểm 29 2.2 Nhược điểm 29 Hướng phát triển 29 TÀI LIỆU THAM KHẢO 30 DANH MỤC HÌNH Hình 1.1.Tổng quan kiến trúc Unity 11 Hình 1.2.Khung Inspector 13 Hình 1.3.Giao diện Prefabs 14 Hình 2.1.Tạo project 15 Hình 2.2.Giao diện First look 15 Hình 2.3.Giao diện Chọn phép chiếu vng góc .16 Hình 2.4.Giao diện tạo folder 17 Hình 2.8.Thơng tin file âm .22 Hình 2.9.Thêm thành phần Audio Source 23 Hình 2.10.Thêm file âm cho thành phần AudioSource .23 Hình 2.11.Giao diện Menu game .24 Hình 2.12.Giao diện game Play 24 Hình 2.13.Giao diện game Over 25 Hình 2.14.Giao diện External Tools 26 Hình 2.15.Giao diện BuildSettings 26 Hình 2.16.Giao diện Inspector 27 Hình 2.17.Giao diện Resolution and presentation 27 Hình 2.18.Giao diện Splash Image 27 Hình 2.19.Giao diện Other setting .28 MỞ ĐẦU Lý chọn đề tài Hiện nay, toán học coi tảng phát triển Hàng triệu người từ văn hóa khác nỗ lực môn học Ở Việt Nam toán học thể vị trí quan trọng kể từ đất nước bắt đầu phát triển Tất lĩnh vực cần có trình độ tốn Vì tốn học mơn quan trọng mà nên học rèn luyện hàng ngày đặc biệt trẻ nhỏ Khi nhỏ, trẻ dễ dàng tiếp thu toán nhanh để thúc đẩy suy tư trẻ thay học thụ động trưởng thành Độ tuổi em có khả tự tìm quy tắc riêng cho thân theo cách hoàn tồn Nhờ đó, trẻ học nhanh dễ dàng tiếp thu kiến thức mà giáo viên truyền đạt Nhận thấy tầm quan trọng nhóm em định tìm hiểu thực đề tài: “Lập trình ứng dụng game Funsmath Android” Mục đích nghiên cứu Việc xây dựng game Funsmath giúp trẻ ôn tập phép toán , cải thiện nhớ, phát triển tư logic, phát triển tư kết hợp Đối tượng đề tài Trò chơi phù hợp cho học sinh tiểu học Phạm vi nhiên cứu - Tìm hiểu kĩ thuật lập trình Unity - Các phép toán bảng cửu chương Phương pháp nghiên cứu - Nghiên cứu lỹ thuyết - Khảo sát thực tế - Xây dựng chương trình theo mục tiêu đặt - Phân tích, thiết kế hệ thống chương trình cho phù hợp Bố cục đề tài Nội dung đồ án gồm thành phần sau: MỞ ĐẦU - Chương Cơ sở lý thuyết - Chương Thiết kế ứng dụng KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN TÀI LIỆU THAM KHẢO CHƯƠNG CƠ SỞ LÝ THUYẾT 1.1.Tổng quan Android Android hệ điều hành dựa tảng Linux ,được chạy thiết bị di động có hình cảm ứng điện thoại thơng minh máy tính bảng Ban đầu, phát triển Tổng công ty Android, với nguồn vốn từ Google sau Google mua lại vào năm 2005.Năm 2007 android mắt với tuyên bố thành lập Liên minh thiết bị cầm tay mở: hiệp hội gồm công ty phần mềm, phần cứng, viễn thông với mục tiêu đẩy mạnh tiêu chuẩn cho thiết bị di động Tháng 10 năm 2008 điện thoại chạy Android bán thị trường Kiến trúc hệ điều hành Android có tầng từ lên tầng hạt nhân Linux (phiên 2.6), tầng Libraries & Android runtime, tầng Application Framework tầng Application 1.1.1.Tầng hạt nhân Linux Hệ điều hành Android phát triển dựa hạt nhân Linux, cụ thể hạt nhân Linux phiên 2.6, điều thể lớp Tất hoạt động điện thoại muốn thi hành thực mức cấp thấp Ở lớp bao gồm quản lý nhớ (memory management), giao tiếp với phần cứng (driver model), thực bảo mật (security), quản lý tiến trình (process) Tuy phát triển dựa vào nhân Linux thực nhân Linux nâng cấp chỉnh sửa nhiều để phù hợp với tính chất thiết bị cầm tay, hạn chế vi xử lý, dung lượng nhớ, kích thước hình, nhu cầu kết nối mạng khơng dây Tầng có thành phần chủ yếu: - Display Driver: Điều khiển việc hiển thị lên thu nhận điều khiển người dùng hình (di chuyển, cảm ứng…) - Camera Driver: Điều khiển hoạt động camera, nhận luồng liệu từ camera trả - Bluetooth Driver: Điều khiển thiết bị thu phát sóng Bluetooth - USB driver: Quản lý hoạt động cổng giao tiếp USB - Keypad driver: Điều khiển bàn phím - Wifi driver: Chịu trách nhiệm việc thu phát sóng wifi - Audio Driver: Điều khiển thu phát âm thanh, giải mã tín hiệu dạng audio thành tín hiệu số ngược lại - Binder IPC Driver: Chịu trách nhiệm việc kết nối liên lạc với mạng vô tuyến CDMA, GSM, 3G, 4G, E để đảm bảo chức truyền thông thực - M-System Driver: Quản lý việc đọc ghi lên thiết bị thẻ nhớ SD, flash - Power Management: Giám sát việc tiêu thụ điện 1.1.2.Tầng Library Phần có nhiều thư viện viết C/C++ để phần mềm sử dụng, thư viện tập hợp thành số nhóm như: - Thư viện hệ thống (System C library): thư viện dựa chuẩn C, sử dụng hệ điều hành - Thư viện Media (Media Libraries): Có nhiều codec để hỗ trợ việc phát ghi loại định dạng âm thanh, hình ảnh, video thơng dụng - Thư viện web (LibWebCore): thành phần để xem nội dung web, sử dụng để xây dựng phần mềm duyệt web (Android Browse) để ứng dụng khác nhúng vào Nó mạnh, hỗ trợ nhiều công nghệ mạnh mẽ HTML5, JavaScript, CSS, DOM, AJAX… - Thư viện SQLite: Hệ sở liệu để ứng dụng sử dụng 1.1.3 Phần Android runtime Phần chứa thư viện mà chương trình viết ngơn ngữ Java hoạt động Runtime có phận tương tự mơ hình chạy Java máy tính thường Thứ thư viện lõi (Core Library), chứa lớp Java IO, Collection, File Access Thứ hai máy ảo Java (Dalvik Virtual Machine) Mặc dù viết từ ngôn ngữ Java ứng dụng Java Android không chạy JRE Sun mà chạy máy ảo Dalvik Google phát triển 1.1.4 Tầng Application Framework Tầng xây dựng công cụ – phần tử mức cao để lập trình viên nhanh chóng xây dựng ứng dụng Nó viết Java, có khả sử dụng chung để tiết kiệm tài nguyên Đây tảng mở, điều có điều lợi: - Với hãng điện thoại: Có thể tùy biến để phù hợp với cấu hình điện thoại mà họ sản xuất để có nhiều mẫu mã, style hợp thị hiếu người dùng Vì nên chung tảng Android mà điện thoại Google khác với Motorola, HTC, T-Mobile, Samsung… Với lập trình viên: Cho phép lập trình viên sử dụng API tầng mà không cần phải hiểu rõ cấu trúc bên dưới, tạo điều kiện cho lập trình viên tự sáng tạo cần quan tâm đến nội dung mà ứng dụng họ làm việc Một tập hợp API hữu ích xây dựng sẵn hệ thống định vị, dịch vụ chạy nền, liên lạc ứng dụng, thành phần giao diện cấp cao… 1.1.5 Tầng Application Đây tầng ứng dụng giao tiếp với người sử dụng, bao gồm ứng dụng như: - Các ứng dụng bản, cài đặt liền với hệ diều hành: gọi diện, quản lý danh bạ, duyệt web, nhắn tin, lịch làm việc, đọc email, quay phim chụp ảnh,… - Các ứng dụng cài thêm trò chơi, từ điển, phần mềm học tiếng anh Các chương trình có đặc điểm là: - Viết Java có phần mở rộng apk - Khi ứng dụng chạy, có phiên Virtual Machine dựng lên để phục vụ cho - Android hệ diều hành đa nhiệm, điều có nghĩa thời điểm, có nhiều chương trình chạy lúc, nhiên với ứng dụng có thực thể (instance) phép chạy mà thơi Điều có tác dụng hạn chế lạm dụng tài nguyên, giúp hệ thống hoạt động tốt - Các ứng dụng gán số ID người sử dụng nhằm phân định quyền hạn sử dụng tài nguyên, cấu hình phần cứng hệ thống - Android hệ điều hành có tính mở, khác với nhiều hệ điều hành di động khác, Android cho phép ứng dụng bên thứ chạy Các ứng dụng có hạn chế khơng phép sử dụng q 5% cơng suất CPU Điều nhằm tránh độc quyền 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.2 Tổng quan Game ENGINE 1.2.1.Khái niệm Một Game Engine (hay công cụ tạo Game / động Game) phần mềm viết cho mục đích thiết kế phát triển video Game Có nhiều loại Game Engine dùng để thiết kế Game cho hệ máy hệ Consoles hay máy tính cá nhân (PC) Chức cốt lõi Game Engine phần lớn nằm cơng cụ dựng hình (kết xuất đồ họa) cho hình ảnh chiều (2D) hay chiều (3D), công cụ vật lý (hay công cụ tính tốn phát va chạm), âm thanh, mã nguồn, hình ảnh động (Animation), trí tuệ nhân tạo, phân luồng, tạo dòng liệu xử lý, quản lý nhớ, dựng ảnh đồ thị, kết nối mạng Quá trình phát triển Game tiết kiệm nhiều thời gian kinh phí vào việc tái sử dụng tái thích ứng Engine để tạo nhiều Game khác 1.2.2.Mục đích Game Engine cung cấp cơng cụ phát triển trực quan tái sử dụng thành phần Nói chung công cụ cung cấp môi trường phát triển tích hợp đơn giản hóa Phát triển ứng dụng nhanh (Rapid Application Development) cho Game theo cách lập trình hướng liệu Những Game Engine đơi gọi "phần mềm trung gian cho Game" (Game Middleware), ý nghĩa thuật ngữ, chúng cung cấp tảng phần mềm linh hoạt dễ dàng sử dụng lại với chức cốt lõi cần thiết để phát triển ứng dụng Game đồng thời giảm giá thành, độ phức tạp, kịp thời hạn phát hành - tất yếu tố quan trọng ngành công nghiệp Game đầy cạnh tranh Giống phần mềm trung gian khác, Game Engine thường cung cấp tảng trừu tượng hóa, cho phép Game chạy nhiều hệ máy bao gồm hệ console máy tính cá nhân với vài thay đổi (nếu cần) mã nguồn Game Thông thường, phần mềm trung gian cho Game thiết kế với tảng kiến trúc dựa thành phần khác, cho phép hệ thống khác Engine thay mở rộng với phần mềm trung gian khác chuyên biệt Havok cho hệ thống vật lý Game, Miles Sound System cho âm thanh, hay Bink cho đoạn video Một số Game Engine cung cấp khả dựng hình (kết xuất) 3D thời gian thực hay khả riêng biệt khác thay nhiều chức phạm vi rộng mà Game yêu cầu Loại Engine thường gọi là: "Graphics Engine", "Rendering Engine," hay "3D Engine" thay thuật ngữ bao quát "Game Engine” 1.2.3.Ảo hóa phần cứng (Hardware Abstraction) Thông thường, Engine 3D hay hệ thống kết xuất đồ họa Game Engine thường xây dựng tảng giao diện lập trình ứng dụng đồ họa Direct3D hay OpenGL cung cấp sẵn hệ ảo hóa cho GPU hay card đồ họa Thư viện mã nguồn cấp thấp (cấp bản) DirectX, SDL, OpenAL (thư viện âm mã nguồn mở) thường sử dụng Game chúng cung cấp khả truy cập phần cứng độc lập 1.2.4.Phần mềm trung gian Một số hãng chuyên tập trung vào phát triển phần mềm gọi phần mềm trung gian (Middleware) Các nhà phát triển Middleware cố gắng phát triển phần mềm mạnh mẽ bao gồm hầu hết yếu tố mà nhà phát triển Game cần đến để xây dựng Game Phần lớn Middleware cung cấp sở để phát triển game cách dễ dàng, hình ảnh, âm thanh, hệ thống vật lý chức AI Gamebryo RenderWare hai phần mềm trung gian sử dụng rộng rãi Một số Middleware làm chức hiệu tồn Engine 10 Sau tạo dự án xong, Hierarchy có đối tượng Main Camera Chúng ta cần điều chỉnh kiểu hiển thị Scene 2D Ở cửa sổ Hierarchy chọn Main Camera Ở cửa sổ Inspector hiển thị thông số camera, ta chọn lại giá trị Projection hay phép chiếu phép chiếu vng gócthay cho phép chiếu phối cảnh Hình 2.3.Giao diện Chọn phép chiếu vng góc Tiếp theo, cửa sổ Project, ta tạo sẵn thư mục để chứa tất tài nguyên có sử dụng game sau là: Animations, Prefabs, Scripts, Sprites, Sounds, Scenes.R-Click vào thư mục Assets cửa sổ Project, ta chọn Create, chọn Folder 16 Hình 2.4.Giao diện tạo folder Kết hình sau: Hình 2.5.Giao diện Assets 2.1.2 Load Back ground Game 2D xây dựng từ nhiều mơ hình 2D đặt lên khơng gian chiều cho hài hòa với để tạo thành cảnh vật game Do việc nạp hiển thị mơ hình 2D game vô quan trọng 17 Engine Unity hỗ trợ nhiều định dạng mơ hình 2D, 3D khác như: PNG, JPG mơ hình load vào project ta chuyển mơ hình sang mục Prefab để tái sử dụng nhiều lần Unity có hỗ trợ load mơ hình cách kéo thả Prefab vào vị trí Scene Tuy nhiên, để linh hoạt xử lý code Trước tiên, ta tạo file script gắn vào đối tượng Back ground để đoạn script thức thi Trong file script này, ta khai báo để khởi tạo Back ground để đổ màu tự động nên back ground private Camera cam; void Awake () { cam = gameObject.GetComponent ();} void Start () { RandomColor (); } public void RandomColor () { cam.backgroundColor = new Color(Random.value,Random.value, Random.value);} 2.1.3.Sự kiện thực phép toán Một số xử lý bản: Phép tốn có phần phép toán bên trái, bên phải, toán tử phép toán Trong file script ta khai báo biến này: private int leftNumber; // so ben trai phep toan private int rightNumber; // so ben phai phep toan private int mathOperator; // toan tu cua phep toan (+,-,*) Khi người chơi bắt đầu vào hình chơi biến tự động hiển thị số ngẫu nhiên khoảng số giới hạn từ đến 9: leftNumber = Random.Range (1, 10); // Random so 1-> rightNumber = Random Range (1,10); mathOperator = Random.Range(0, 3);//Randomtoán tử phéptoán(+,-,*) Phần kết phép tốn ta có biến kết quả: kết phép toán kết hiển thị ngồi hình phép tốn: private int trueResult; // dan an dung cua phep toan private int falseResult; // dan an se hien man hinh Để thực phép toán ta thực thi cấu lệnh sau: switch (mathOperator) { // + case 0: // ket qua dung trueResult = leftNumber + rightNumber; // ket qua da bi thay doi 18 falseResult = trueResult + Random.Range (-2, 3); Đối với phép toán trừ nhân ta làm tương tự với phép cộng Để hiển thị phép tốn ngồi hình game, ta sử dụng UI.Text Trước thao tác với UI, ta cầm import thư viện sau: using UnityEngine.UI; resultText.GetComponent ().text = falseResult.ToString (); Hình 2.6.Giao diện Scene game 2.1.4.Sự kiện kích nút Button Trong kiện ta phải gắn cho button kiện On Click.Đâu tiên, ta tạo file script gắn vào đối tượng để đoạn script thức thi lệnh click: public void onTrueButtonClick(){ // ket qua show trung voi dap an dung > D if (trueResult == falseResult) { currentTime = 0; createMath (); // Tao lai phep toan moi } else { // neu tinh sai LoseGame(); } } 19 Hình 2.6.Giao diện On Click Button 2.1.5.Điêm số hiển thị Điểm số game sử dụng Fun Math, game khơng hỗ trợ tính Leaderboard (bảng xếp hạng), hay Statistic (bảng thống kê số liệu người chơi đạt được), … nên bạn hồn tồn lưu trữ điểm số GameController.cs Để thực tổng quát, đặt biến lưu trữ điểm số lớp: public static int currentScore Ta thấy, với button có hai trường hợp xảy Nếu currentScore cập nhật trực tiếp button.Nếu để ý, bạn thấy với trường hợp trả lời đúng, hàm createMath gọi để tạo thử thách tiếp theo, với phím hay button Do đó, tơi thêm đoạn code xử lý currentScore vào hàm sau currentScore += Trong trường hợp chọn sai kết trò chơi kết thúc điểm số trò chơi cập nhật lại file class lưu trữ GameValues.cs Điểm số so sách với để lấy điểm số cao tro trò chơi GameValues.currentScore = currentScore; int highScore = PlayerPrefs.GetInt ("HIGH_SCORE", 0); if (currentScore > highScore) { PlayerPrefs.SetInt ("HIGH_SCORE", currentScore); 2.1.6.Thời gian game Progress Timer game biểu diễn dạng Panle (cả hình thời gian) Khoảng thời gian trôi qua level thể tỉ lệ phần hình bị mờ 20 Hình 2.7.Giao diện time Đồng Progress Timer với thời gian thực game Progress Timer tạo hình ảnh hiển thị thời gian chơi game, quản lý thời gian với Script Để quản lý thời gian, ta sử dụng hai thuộc tính LimitTime currentTime CurrentTime thời gian tại, tính từ thời điểm level bắt đầu, LimitTime thời gian tối đa người chơi có level Ngồi ra, để thay đổi tỉ lệ vẽ ProgressTimer, sử dụng thêm thuộc tính UI Text Khai báo thuộc tính sau: public GameObject timeProgress;// time game private float limitTime; // time gioi han cho moi cau hoi private float currentTime; // thoi gian da troi qua cho moi cau hoi Tại hàm Start, ta thêm phần khai báo giá trị ban đầu cho thuộc tính sau : limitTime = 7f; // 7s currentTime = 0.0f; // moi vao game la 0s Quản lý thời gian cập nhật Progress Timer : currentTime += Time.deltaTime; //mi vong lap troi qua if (currentTime > limitTime) { // het thoi gian LoseGame ();} Cuối cùng, để currentTime cập nhật lại từ đầu sau level, tơi thêm dòng sau vào hàm ButtonOnClick: currentTime = 0; 2.1.7.Âm game 21 Âm yếu tố không phần quan trọng ứng dụng game Thật nhàm chán cảnh đánh đánh nhau, bắn hay hiệu ứng đẹp mắt mà khơng có âm Âm chiều làm cho game thực sống động Để chơi file âm Unity có cách: code giao diện Dù chọn cách trước hết phải có sẵn file âm import vào project Sau import âm vào project, file hợp lệ thấy hình sau nhấn nút play để nghe thử Hình 2.8.Thơng tin file âm Trên menu Unity, vào GameObject  Create Empty Chọn đối tượng vừa tạo gắn thành phần “AudioSource” cho đối tượng AudioSource đối tượng âm Muốn Play hay Stop, thay đổi cách lặp, tăng giảm volume nhạc phải thơng qua đối tượng 22 Hình 2.9.Thêm thành phần Audio Source Sau gắn thành phần âm cho đối tượng vừa tạo, dễ dàng chỉnh sửa thông số gán file âm cho thành phần AudioSource Hình 2.10.Thêm file âm cho thành phần AudioSource 2.2.Xây dựng game Fun Math 2.2.1.Giới thiệu game Đặc trưng dòng game mà em xây dựng thời điểm có người chơi, trò chơi có hình chơi, người chơi chọn sai thơng qua hai nút tên hình game Nếu người chơi chọn sai đán án hình GameOver xuất hiên thông báo cho người chơi số điểm Màn hình có tính thời gian, ta phải nhìn nhanh tính kỹ trước ấn chọn nút đáp án để nâng cao điểm số 23 Hình 2.11.Giao diện Menu game 2.2.2.Quy luật chơi Người chơi chọn nút sai cho đáp án phép tốn Hình 2.12.Giao diện game Play 2.2.3.Điểm số Người chơi cộng điểm chọn đáp án Và điểm số cộng dồn theo số mà người chơi đạt được, kết cuối hiển thị người chơi chọn sai đáp án: 24 Hình 2.13.Giao diện game Over 2.2.4.Cách biên dịch file APK unity Để thực biên dịch bạn làm theo bước sau: * Bước 1: Download: + File android sdk + File JDK (Với jdk bạn phải chọn phiên với hệ điều hành 32bit 64bit) Sau down load xong bạn giải nén trỏ vào thư mục hình ảnh phía dưới: (Nằm Menu>edit>References) 25 Hình 2.14.Giao diện External Tools *Bước 2: Trong giao diện unity vào File>BuildSettings Hình 2.15.Giao diện BuildSettings Bản thân unity biên dịch nhiều môi trường khác nhau, bước bạn lưu ý phần android phân mà bôi màu đỏ * Bước 3: Các bạn chọn Player Settings phần màu đỏ bước 2, sau chọn xong xuất cửa sổ bên phía tay phải bạn sau: 26 Hình 2.16.Giao diện Inspector Trong phần hình ảnh bước bạn lưu lý phần đánh dầu phần 1, Với phần bạn phải nhập tên công ty hay tập thể cá nhân bạn, bạn phải đưa kích thước ảnh icon cho game Bước 4: Các thành phần cửa số player setting - Với phần Resolution and presentation Hình 2.17.Giao diện Resolution and presentation Trong hình phần thực chọn chế độ tự động cho phép hình game tự động xoay đặt chế độ thẳng đứng hay nằm ngang Màn hình thẳng đứng để là: Portrait Còn nằm ngang để là: Landscape - Với phần Icon Là phần biểu tượng cho game, bạn thay đổi theo kích thước độ phân giải điện thoại - Với phần Splash Image Hình 2.18.Giao diện Splash Image Là ảnh hiển thị bắt đầu vào game chúng ta, thông thường với unity free vào game bạn thấy xuất ảnh Unity, phiên có quyền hay crack đặt ảnh bắt đầu mở game 27 - Với phần Other setting Hình 2.19.Giao diện Other setting Các bạn ý phần đánh dấu, phải đặt tên identifier cho game chúng bạn khơng đặt số ban đầu Phần phiên game biên dịch phần thiết bị có hỗ trợ cho chíp ARMv7 hay x86 cài đặt không, lưu ý chọn chế độ dung lượng game thay đổi (Nếu armv7 dung lượng game cao so với x86) *Bước 5: Thực Build cửa sổ build setting Hình 2.20.Giao diện Build Chúng ta dành cho nhà phát triển Dành cho debug game Build thư mục máy tính 4.Thực build chạy ln, lưu ý bạn phải cắm lối tới điện thoại 28 KẾT QUẢ VÀ HƯỚNG PHÁT TRIỂN Cài đặt - Ứng dụng Build dạng file apk - Copy file apk vào điện thoại chạy hệ điều hành Android - Mở file apk copy vào để fiel tự cài đặt diện thoại Kết - Game có giao diện thân thiện, đẹp mắt, dễ sử dụng - Game đạt yêu cầu trò chơi 2.1 Ưu điểm - Hiểu cấu trúc, cách thức hoạt động, cách thức phát triển ứng dụng Unity - Nâng cao kiến thức lập trình tiếng anh chuyên ngành thông qua tài liệu Unty tiếng anh - Tổ chức load tương ứng thông qua button - Xây dựng chức điểm, chơi thông qua ngôn ngữ lập trình C# MonoDevelop - Tạo âm cho cho trò chơi số chức khác 2.2 Nhược điểm - Do kiến thức em Unity hạn hẹp nên chức game nghèo nàn - Chưa xây dựng hoàn chỉnh game mong muốn Hướng phát triển  Tối ưu hóa xử lý giúp game chạy nhanh  Tăng thêm số lượng chơi để người chơi thêm nhiều lựa chọn  Cung cấp thêm công cụ để người chơi trợ giúp câu khó tạo nhiều mức độ chơi khác nhau, hiệu ứng âm thanh, … 29 TÀI LIỆU THAM KHẢO [0] Ryan Henson Creighton, Unity 3D Game Development by Example, Packt Publishing, 2010 [0] Will Goldstone, Unity Game Development Essential, Packt Publishing, 2009 [0] Efraim Meulenberg, Game Development with Unity, VTC, 2010 [0] Efraim Meulenberg, Game Development for iPhone/iPad Using Unity iPhone, VTC, 2010 [5] Sue Blackman, Beginning 3D Game Development with Unity All-in-One, Multi-Platform Game Development 2nd Edition , 2013 [6] Terry Norton , Learning C# by Developing Games with Unity 3D Beginner's Guide , 2013 [7] Jeff Murray , C# Game Programming Cookbook for Unity 3D, 2014 [8] Charles Bernardoff, NGUI for Unity, 2014 30 ... viên lớn Vì vậy, nhóm chọn đề tài “Lập trình ứng dụng game Fun Math Android Trong đề tài này, nhóm trình bày nhìn lập trình game Android demo ứng dụng game MỤC LỤC LỜI MỞ ĐẦU .2 MỤC... tầm quan trọng nhóm em định tìm hiểu thực đề tài: “Lập trình ứng dụng game Funsmath Android Mục đích nghiên cứu Việc xây dựng game Funsmath giúp trẻ ôn tập phép toán , cải thiện nhớ, phát triển... AudioSource 2.2 .Xây dựng game Fun Math 2.2.1.Giới thiệu game Đặc trưng dòng game mà em xây dựng thời điểm có người chơi, trò chơi có hình chơi, người chơi chọn sai thông qua hai nút tên hình game Nếu

Ngày đăng: 01/11/2017, 17:09

Xem thêm: Báo cáo: Xây dựng ứng dụng GAME FUN MATH trên android

HÌNH ẢNH LIÊN QUAN

Hình 1.1.Tổng quan kiến trúc Unity - Báo cáo: Xây dựng ứng dụng GAME FUN MATH trên android
Hình 1.1. Tổng quan kiến trúc Unity (Trang 11)
Hình 1.2.Khung Inspector - Báo cáo: Xây dựng ứng dụng GAME FUN MATH trên android
Hình 1.2. Khung Inspector (Trang 13)
Hình 1.3.Giao diện Prefabs - Báo cáo: Xây dựng ứng dụng GAME FUN MATH trên android
Hình 1.3. Giao diện Prefabs (Trang 14)
Hình 2.1.Tạo project mới - Báo cáo: Xây dựng ứng dụng GAME FUN MATH trên android
Hình 2.1. Tạo project mới (Trang 15)
2.1.1.Tạo và cấu hình game 2D * Tạo dự án  - Báo cáo: Xây dựng ứng dụng GAME FUN MATH trên android
2.1.1. Tạo và cấu hình game 2D * Tạo dự án (Trang 15)
Hình 2.3.Giao diện Chọn phép chiếu vuông góc - Báo cáo: Xây dựng ứng dụng GAME FUN MATH trên android
Hình 2.3. Giao diện Chọn phép chiếu vuông góc (Trang 16)
Hình 2.4.Giao diện tạo folder - Báo cáo: Xây dựng ứng dụng GAME FUN MATH trên android
Hình 2.4. Giao diện tạo folder (Trang 17)
Kết quả như hình sau: - Báo cáo: Xây dựng ứng dụng GAME FUN MATH trên android
t quả như hình sau: (Trang 17)
Hình 2.6.Giao diện OnClick Button - Báo cáo: Xây dựng ứng dụng GAME FUN MATH trên android
Hình 2.6. Giao diện OnClick Button (Trang 20)
Hình 2.7.Giao diện thanh time - Báo cáo: Xây dựng ứng dụng GAME FUN MATH trên android
Hình 2.7. Giao diện thanh time (Trang 21)
Hình 2.8.Thông tin file âm thanh - Báo cáo: Xây dựng ứng dụng GAME FUN MATH trên android
Hình 2.8. Thông tin file âm thanh (Trang 22)
Hình 2.10.Thêm file âm thanh cho thành phần AudioSource - Báo cáo: Xây dựng ứng dụng GAME FUN MATH trên android
Hình 2.10. Thêm file âm thanh cho thành phần AudioSource (Trang 23)
Hình 2.9.Thêm thành phần AudioSource - Báo cáo: Xây dựng ứng dụng GAME FUN MATH trên android
Hình 2.9. Thêm thành phần AudioSource (Trang 23)
Hình 2.12.Giao diện game Play - Báo cáo: Xây dựng ứng dụng GAME FUN MATH trên android
Hình 2.12. Giao diện game Play (Trang 24)
Hình 2.11.Giao diện Menu game - Báo cáo: Xây dựng ứng dụng GAME FUN MATH trên android
Hình 2.11. Giao diện Menu game (Trang 24)
Sau khi download xong các bạn giải nén và trỏ vào thư mục như hình ảnh phía dưới: (Nằm trong Menu>edit>References) - Báo cáo: Xây dựng ứng dụng GAME FUN MATH trên android
au khi download xong các bạn giải nén và trỏ vào thư mục như hình ảnh phía dưới: (Nằm trong Menu>edit>References) (Trang 25)
Hình 2.13.Giao diện game Over - Báo cáo: Xây dựng ứng dụng GAME FUN MATH trên android
Hình 2.13. Giao diện game Over (Trang 25)
Hình 2.15.Giao diện BuildSettings - Báo cáo: Xây dựng ứng dụng GAME FUN MATH trên android
Hình 2.15. Giao diện BuildSettings (Trang 26)
Hình 2.14.Giao diện External Tools - Báo cáo: Xây dựng ứng dụng GAME FUN MATH trên android
Hình 2.14. Giao diện External Tools (Trang 26)
Hình 2.16.Giao diện Inspector - Báo cáo: Xây dựng ứng dụng GAME FUN MATH trên android
Hình 2.16. Giao diện Inspector (Trang 27)
Hình 2.20.Giao d in Build ệ - Báo cáo: Xây dựng ứng dụng GAME FUN MATH trên android
Hình 2.20. Giao d in Build ệ (Trang 28)
Hình 2.19.Giao diện Other setting - Báo cáo: Xây dựng ứng dụng GAME FUN MATH trên android
Hình 2.19. Giao diện Other setting (Trang 28)

TỪ KHÓA LIÊN QUAN

Mục lục

    Phân loại Game Engine theo mức độ chuyên biệt

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

TÀI LIỆU LIÊN QUAN

w