Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 34 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
34
Dung lượng
1,55 MB
Nội dung
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM BÁO CÁO MÔN HỌC ĐỒ ÁN – SE121.N21.PMCL Tìm hiểu Unity xây dựng ứng dụng minh họa Giảng viên hướng dẫn: Ths Thái Thụy Hàn Uyển Sinh viên thực hiện: Nguyễn Hoàng Nam - 20520643 TP Hồ Chí Minh, tháng năm 2022 LỜI CẢM ƠN Em trân trọng cảm ơn cô Thái Thụy Hàn Uyển tạo điều kiện hướng dẫn em để em có hội thử thách thân mơn học Trải qua 14 tuần tìm tịi, nghiên cứu phát triển cho em nhìn chi tiết thách thức vừa hấp dẫn vừa chông gai nhà phát triển game Em tin kiến thức kinh nghiệm hỗ trợ em nhiều đường nghiệp tới Một lần nữa, cảm ơn cô đồng hành hỗ trợ em môn học NHẬN XÉT CỦA GIẢNG VIÊN ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM TRƯỜNG ĐẠI HỌC Độc Lập - Tự Do - Hạnh Phúc CÔNG NGHỆ THÔNG TIN ĐỀ CƯƠNG CHI TIẾT TÊN ĐỀ TÀI: Tìm hiểu Unity xây dựng ứng dụng minh họa Cán hướng dẫn: THS THÁI THỤY HÀN UYỂN Thời gian thực hiện:Từ ngày 27/02/2023 đến ngày 16/05/2023 Sinh viên thực hiện: NGUYỄN HOÀNG NAM – 20520643 Nội dung đề tài:(Mô tả chi tiết mục tiêu, phạm vi, đối tượng, phương pháp thực hiện, kết mong đợi đề tài) Mục tiêu đề tài: 1.1 Bối cảnh chọn đề tài: Trò chơi điện tử ngày trở nên phổ biến người, không phân biệt tuổi tác, giới tính, quốc gia hay văn hóa Trị chơi điện tử dần khẳng định khơng cơng cụ giải trí đơn thuần, mà cịn loại hình nghệ thuật với khả tương tác với người thưởng lãm Do đó, ngành cơng nghiệp game đem đến nguồn lợi nhuận lớn thách thức vừa khó nhằn vừa hấp dẫn Trong thị trường game nhập vai hành động, có tựa game bật dựa chế độc đáo độc nhất, làm thỏa mãn người chơi, điển hình kể đến chế Giao tranh Liên tục Diablo III Cơ chế ảnh hưởng sâu sắc đến trải nghiệm người dùng, tạo nên sức hấp dẫn, kích thích tiêu diệt hết đợt quái vật công mang lại cho người dùng cảm giác thỏa mãn, sung sướng mang phần thưởng thắng trận Tuy nhiên, thời gian gần đây, tựa game phát triển cho thấy xu hướng ngành công nghiệp tỷ - bắt người dùng phục vụ cho trị chơi Hay nói cách khác, việc lơi kéo người chơi cách thỏa mãn cảm xúc họ dần bị thay xu hướng khiến cảm xúc người dùng thay đổi theo dòng chảy trò chơi Đi đầu việc thay đổi kể đến Elden Ring, với chế “Tự học, tự nâng cấp” NPC, qua lần đánh quái, người chơi có cảm giác khó khăn tham gia vào trận chiến tiếp theo, qua đó, cảm xúc người dùng từ hài lòng, vui vẻ đến ức chế, đau khổ quái vật vượt trội so với khả người chơi Tuy nhiên, yếu tố cốt lõi làm nên thành công tựa game vừa nêu kế thừa phát huy tốt di sản người tiền nhiệm Chính thế, em mong muốn phát triển tựa game học hỏi tinh hoa truyền tải dấu ấn cá nhân 1.2 Mục đích đề tài: Đề tài “Tìm hiểu Unity xây dựng ứng dụng minh họa” thực dựa mục đích: Nghiên cứu cơng nghệ, kiến thức thiết kế game góc nhìn sản phẩm phần mềm Dưới dẫn dắt, hỗ trợ từ giảng viên hướng dẫn nỗ lực tìm tịi, nghiên cứu em, em hy vọng đạt mục tiêu mà em đề 1.3 Ý nghĩa đề tài: Đem đến cho người chơi trải nghiệm lạ dựa chất liệu quen thuộc giới thời trung cổ có chiều sâu, thời đại hiệp sĩ dũng cảm ca tụng nông dân thuộc tầng lớp thấp kém, bị áp bức, chịu nhiều bất công, phải đương đầu với Hồng Gia để giành lại bình đẳng Bên cạnh đó, phương diện cá nhân, kiến thức, kinh nghiệm mà em thu nạp đồ án trở thành hành trang quý giá cho đường nghiệp phía trước Đồng thời, đồ án phát triển theo định hướng, bước đệm vững để em tiếp tục đề tài Đồ Án 1.4 Nhiệm vụ đề tài: • Xây dựng yếu tố gameplay, thành phần chế game cốt lõi o Cơ chế chiến đấu theo đợt - Với đến phút theo dòng kiện trò chơi, người chơi liên tục đối mặt với đợt công từ binh lính Hồng Gia Người chơi phải tính tốn sức công, sát thương, tầm hoạt động loại vũ khí trang bị để ứng phó kịp thời với loại binh lính Ngồi ra, người chơi phải tính tốn, lựa chọn đường đi, để tránh va chạm với đợt cơng nhiều số lượng máu sức cơng nhân vật giảm dần qua đợt đụng độ o Cơ chế trang bị vũ khí chiến đấu - Xun suốt chơi, có loại vũ khí rơi từ binh lính bị hạ gục đường đi, với loại vũ khí cho sức công, độ bền, tầm hoạt động khác Ứng với loại vũ khí, người chơi nhặt, trang bị, ghép, vứt bỏ Hệ thống hoạt ảnh, hiệu ứng cơng, hiệu ứng dính sát thương kẻ dịch thay đổi loại vũ khí Việc giúp người chơi có trải nghiệm chân thật, bảo tồn tính logic game o Hệ thống số, kỹ năng, vật phẩm lên cấp - Một thành tố thiếu dịng game Nhập vai kỹ vật phẩm hỗ trợ người chơi vượt qua thử thách mà game đặt Hệ thống lên cấp giúp phân bổ nội dung game điều chỉnh độ khó cách hợp lý, tránh việc người chơi bị “ngộp” cảm thấy nhàm chán • Xây dựng kiến trúc phần mềm dễ phát triền, mở rộng sửa đổi Phạm vi nghiên cứu: 2.1 • • • 2.2 • • • • Phạm vi cơng nghệ Ngơn ngữ, cơng cụ lập trình, phần mềm phát triển game Ứng dụng tạo hiệu ứng âm thanh, hình ảnh Phần mềm vẽ mơ hình 3D hoạt ảnh nhân vật Phạm vi thiết kế game Các thành phần, chế chiến đấu Cơ chế “Tự học tự nâng cấp” cho NPC Hệ thống ứng dụng điện ảnh game Hệ thống lưu trữ tài nguyên, trình chơi game Đối tượng nghiên cứu: • • • • • Ngơn ngữ lập trình: C# Cơng cụ lập trình: Visual Studio Code Phần mềm phát triển game: Unity Phần mềm tạo hiệu ứng âm thanh: Audacity Phần mềm vẽ mơ hình 3D hoạt ảnh: Blender Phương pháp nghiên cứu: • Đọc tài liệu • Khảo sát, phân tích game tương tự • Thực nghiệm Kết dự kiến: 5.1 Kết tổng quát • Game bao gồm chơi hướng dẫn nhỏ (tutorial) chơi chiến dịch (campaign) • Kiến trúc game dễ mở rộng để bổ sung thêm nội dung tương lai • Giao diện dễ làm quen, dễ sử dụng đảm bảo phản hồi liền mạch người chơi với game • Giao diện đẹp, thể concept mà game truyền tải • Có âm tương tác với giao diện nhạc • Cốt truyện xây dựng mạch lạc, hợp logic 5.2 Kết phát triển chi tiết tính ưu tiên • Hệ thống chiến đấu thời gian thực với nhiều quân lực từ kẻ dịch • Hệ thống cấp độ tiến trình trị chơi lưu trữ tự động • Hệ thống đối thoại phân nhánh ảnh hưởng tới mạch truyện trò chơi • Hệ thống kho, chiến lợi phẩm, vật phẩm mà nhân vật sử dụng • Hệ thống kỹ năng, chiêu thức nhân vật Kế hoạch thực hiện:(Mô tả kế hoạch làm việc phân công công việc cho sinh viên tham gia) Thời gian thực dự án kéo dài từ ngày 27/02/2023 đến ngày 16/05/2023 Một sprint tính tuần Giai đoạn Tháng Tháng Tháng Tháng Sprint Tiền sản xuất & Lập kế hoạch Xây dựng base Thiết kế, xây dựng core gameplay Thiết kế, xây dựng chi tiết thành phần game Thiết kế, xây dựng hình bắt đầu Thiết kế, xây dựng chơi ingame Bổ sung âm nhạc Trau chuốt & Sửa lỗi Hoàn thành báo cáo Xác nhận CBHD (Ký tên ghi rõ họ tên) TP HCM, ngày….tháng … năm… Sinh viên (Ký tên ghi rõ họ tên) THS THÁI THỤY HÀN UYỂN NGUYỄN HOÀNG NAM DANH MỤC LỜI CẢM ƠN NHẬN XÉT CỦA GIẢNG VIÊN ĐỀ CƯƠNG CHI TIẾT DANH MỤC DANH MỤC HÌNH ẢNH 10 DANH MỤC BẢNG BIỂU 11 BẢNG PHÂN CÔNG, ĐÁNH GIÁ THÀNH VIÊN 11 Chương TỔNG QUAN 12 1.1 Tổng quan đề tài 12 1.2 Lý chọn đề tài 12 1.3 Mục tiêu 12 1.4 Phạm vi 12 Chương TỔNG QUAN CÔNG NGHỆ 13 2.1 Unity 13 Chương HỆ THỐNG MODULE 15 Chương USE CASE 15 4.1 Use case diagram 15 4.2 Danh sách actor 15 4.3 Danh sách use case 15 4.4 Đặc tả use case 16 4.4.1 Use case "Bắt đầu chơi" 16 4.4.2 Use case “Đánh quái” 17 4.4.3 Use case “Nhặt vũ khí” 17 4.4.4 Use case “Trò chuyện” 18 4.4.5 Use case “Mua trang bị” 18 4.4.6 Use case “Chuyển đến chơi tiếp theo” 19 4.4.7 Use case “Thốt trị chơi” 19 4.4.8 Use case “Tạo chơi” 20 4.4.9 Use case “Lưu chơi” 20 Chương THIẾT KẾ CLASS 21 5.1 Class diagram 21 5.2 Danh sách class 21 5.2.1 Danh sách lớp thuộc hệ thống gameplay 21 Chương THIẾT KẾ GIAO DIỆN 23 6.1 Giao diện hình “Màn hình chính” 23 6.2 Giao diện hình “Màn chơi mới” 23 6.3 Giao diện hình “Các chơi lưu” 24 6.4 Giao diện hình “In-game” 25 6.5 Giao diện cửa sổ “Thông tin nhân vật” 26 6.6 Giao diện cửa sổ “Tiệm bán đồ” 27 6.7 Giao diện cửa sổ “Hệ thống nhiệm vụ” 28 6.8 Giao diện cửa sổ “Trang bị” 29 6.9 Giao diện cửa sổ “Túi đồ” 30 6.10 Giao diện cửa sổ “Tiềm năng” 31 6.11 Giao diện cửa sổ “Hộp thoại – nhận nhiệm vụ” 32 6.12 Giao diện cửa sổ “Hộp thoại – tương tác NPC” 33 Chương TỔNG KẾT 34 7.1 Kết 34 7.2 Hạn chế 34 7.3 Source Code 34 7.4 Cài đặt 34 7.5 Hướng phát triển 34 7.5.1 Cải thiện trải nghiệm gameplay 34 7.5.2 Cải thiện trải nghiệm đồ họa 34 7.5.3 Cải thiện trải nghiệm âm 34 DANH MỤC HÌNH ẢNH Figure 1: Game Engine Unity 13 Figure 2: Giao diện Unity 14 Figure 3: Use case diagram 15 Figure 4: Sơ đồ lớp hệ thống gameplay 21 Figure 6: Giao diện "Màn hình chính" 23 Figure 7: Giao diện "Màn chơi mới" 24 Figure 8: Giao diện "Các chơi lưu" 25 Figure 9: Giao diện "In-game" 25 Figure 10: Giao diện "Thông tin nhân vật" 26 Figure 11: Giao diện "hệ thống nhiệm vụ" 29 Figure 12: Giao diện cửa sổ "Trang bị" 30 Figure 13: Giao diện cửa sổ "Túi đồ" 31 Figure 14: Giao diện cửa sổ "Tiềm năng" 32 Figure 15: Giao diện cửa sổ "Hộp thoại – nhận nhiệm vụ" 33 Figure 16: Giao diện "Hộp thoại – tương tác NPC" 33 10 Điều kiện kích hoạt Khơng Điều kiện cần Khơng Kết Trị chơi ngắt kết nối đóng lại 4.4.8 Use case “Tạo chơi” Table 10: Đặc tả use case “Tạo chơi" Mô tả Hệ thống tạo chơi cho người chơi Tác nhân Hệ thống Luồng Hệ thống tạo file sav để khởi tạo chơi Sau người dùng nhập tên chơi mới, hệ thống tự động lưu tên xuống file sav Luồng thay Khơng Điều kiện kích hoạt Người dụng chọn mục “New Game” hình “Màn hình chính” Điều kiện cần Khơng Kết Màn hình chơi lên 4.4.9 Use case “Lưu chơi” Table 11: Đặc tả use case "Lưu chơi" Mô tả Hệ thống lưu lại chơi có người chơi Tác nhân Hệ thống Luồng Hệ thống mở file sav tạo trước Hệ thống cập nhật lại trạng thái đối tượng làm so với trạng trước Hệ thống lưu trữ lại trạng thái Luồng thay Khơng Điều kiện kích hoạt Khơng Điều kiện cần Không Kết Hệ thống lưu lại file sav thay đổi 20 Chương THIẾT KẾ CLASS 5.1 Class diagram Figure 4: Sơ đồ lớp hệ thống gameplay 5.2 Danh sách class 5.2.1 Danh sách lớp thuộc hệ thống gameplay Table 12: Danh sách lớp thuộc hệ thống Kỹ Lớp Mô tả Character Lớp đại diện cho nhân vật game Player Đại diện cho nhân vật người chơi xây dựng, kế thừa từ lớp Character Enemies Đại diện cho kẻ địch mà người chơi cần tiêu diệt, kế thừa từ lớp Character 21 NPC Đại diện cho người dân, nơi người chơi nhận nhiệm vụ phần thưởng, kế thừa từ lớp Character Statistic Biểu thị thông số nhân vật Weapon Là Scriptable Object định nghĩa cho trang bị vũ khí, mà người chơi sử dụng để tăng sức mạnh giúp tiêu diệt kẻ địch Quest Là Scriptable Object định nghĩa cho nhiệm vụ mà người chơi cần thực 22 Chương THIẾT KẾ GIAO DIỆN 6.1 Giao diện hình “Màn hình chính” Giao diện - Figure 5: Giao diện "Màn hình chính" Mơ tả đối tượng giao diện - Table 13: Mô tả giao diện “Màn hình chính" Ý nghĩa Hiện thị tên game Tiếp tục chơi gần Bắt đầu chơi STT Tên gameTitle btnContinue Kiểu Text Button btnNewGame Button btnLoadSaved Button Lựa chọn chơi lưu btnQuit Button Tắt ứng dụng game 6.2 Giao diện hình “Màn chơi mới” - 23 Giao diện Ghi Màn hình chuyển qua hình “Màn chơi mới” Màn hình chuyển qua hình “Các chơi lưu” Figure 6: Giao diện "Màn chơi mới" Mô tả đối tượng giao diện - Table 14: Bảng mô tả giao diện "Màn chơi mới" STT Tên txbSaveName Kiểu Textbox btnCreateNewGame Button btnBack Button Ý nghĩa Ghi Tên chơi Tạo chơi Nút có tác dụng txbSaveName điền Quay lại giao diện “Màn hình chính” 6.3 Giao diện hình “Các chơi lưu” - 24 Giao diện ` Figure 7: Giao diện "Các chơi lưu" Mô tả đối tượng giao diện - Table 15: Bảng mô tả giao diện "Các chơi lưu" STT Tên btnSavedGame Kiểu Button btnBack Button Ý nghĩa Ghi Bắt đầu chơi chơi lưu Quay lại giao diện “Màn hình chính” 6.4 Giao diện hình “In-game” - Giao diện Figure 8: Giao diện "In-game" 25 Mô tả đối tượng giao diện - Table 16: Mơ tả giao diện hình "In-game" STT Tên dlCharInfor Kiểu Dialog dlCoin Dialog Player Game Object dlEquipment Dialog NPC Game Object btnQuest Button Ý nghĩa Ghi Hiển thị thông tin nhân vật Hiển thị lượng tiền mà nhân vật sở hữu Nhân vật người chơi Hiển thị vật dụng mà nhân vật trang bị Các nhân vật không Người phải người chơi chơi tương tác với nhân vật Hiển thị nhiệm vụ đang/ cần thực 6.5 Giao diện cửa sổ “Thông tin nhân vật” - Giao diện Figure 9: Giao diện "Thông tin nhân vật" 26 Mô tả đối tượng giao diện - Table 17: Bảng mơ tả giao diện hình "Thơng tin nhân vật" STT Tên txtHealth Text txtMana Text txtHealthEnemy Text txtXP Text txtLevel Text Ý nghĩa Hiển thị lượng máu nhân vật Hiện thị lượng lượng nhân vật Hiển thị lượng máu kẻ địch giao tranh với nhân vật Hiển thị lượng kinh nghiệm tích lũy Hiển thị cấp độ nhân vật Kiểu Ghi 6.6 Giao diện cửa sổ “Tiệm bán đồ” - Giao diện 12 10 - 11 Mô tả đối tượng giao diện Table 18: Bảng mơ tả giao diện hình "Tiệm bán đồ" STT 27 Tên btnSwitch Kiểu Button Ý nghĩa Chuyển đổi từ việc mua sang việc bán Ghi dlThingToTrade Dialog imgItem Image txtItemName txtAvailability Text Text txtPrice Text btnDecreaseAmount Button txtAmountItem Text btnIncreaseAmount Button 10 txtTotalPrice Text 11 12 btnBuy btnClose Button Button 6.7 Giao diện cửa sổ “Hệ thống nhiệm vụ” - 28 Giao diện Hiển thị vật phẩm mua/ bán theo loại Hình ảnh đại diện cho vật phẩm mua/ bán Hiển thị tên vật phẩm Hiển thị số lượng vật phẩm có sẵn cửa hàng Hiển thị giá mua/bán vật phẩm Giảm số lượng mua/bán vật phẩm Hiển thị số lượng vật phẩm mua/bán Tăng số lượng mua/bán vật phẩm Hiển thị tổng lượng vàng phải trả/được nhận mua/ bán Mua/ bán hàng Đóng cửa sổ cửa hàng Figure 10: Giao diện "hệ thống nhiệm vụ" Mô tả đối tượng giao diện - Table 19: Mô tả giao diện hình "Hệ thống nhiệm vụ" STT Tên dlListQuest Kiểu Dialog QuestDetailWindow Canvas nameOfQuest txtObJectives Text Text txtReward Text 6.8 Giao diện cửa sổ “Trang bị” - 29 Giao diện Ý nghĩa Hiển thị danh sách nhiệm vụ Cửa sổ hiển thị chi tiết nhiệm vụ Hiển thị tên nhiệm vụ Hiển thị hướng dẫn hoàn thành nhiệm vụ Hiển thị phần thưởng sau hoàn thành nhiệm vụ Ghi Figure 11: Giao diện cửa sổ "Trang bị" Mô tả đối tượng giao diện - Table 20: Mô tả giao diện cửa sổ "Trang bị" STT Tên unEquippedSlot Kiểu Tile equippedSlot Tile 6.9 Giao diện cửa sổ “Túi đồ” - 30 Giao diện Ý nghĩa Hiển thị ô trang bị bỏ trống Hiển thị ô trang bị Ghi Figure 12: Giao diện cửa sổ "Túi đồ" - Mô tả đối tượng giao diện Table 21: Mô tả giao diện cửa sổ "Túi đồ" STT Tên hadItemSlot emptySlot Kiểu Tile Tile 6.10 Giao diện cửa sổ “Tiềm năng” - 31 Giao diện Ý nghĩa Hiển thị ô chứa đồ Hiển thị ô trống Ghi 4 Figure 13: Giao diện cửa sổ "Tiềm năng" Mô tả đối tượng giao diện - Table 22: Mô tả giao diện cửa sổ "Tiềm năng" STT Tên txtTraitName Kiểu Text txtPoint Text btnMinus btnPlus txtUnallocatePoint Button Button Text btnConfirmPoint btnClosed Button Button Ý nghĩa Hiển thị tên tiềm Hiển thị số điểm tiềm Giảm điểm tiềm Tăng điểm tiềm Hiển thị số điểm tiềm chưa cộng Xác nhận điểm cộng Đóng cửa sổ 6.11 Giao diện cửa sổ “Hộp thoại – nhận nhiệm vụ” - 32 Giao diện Ghi 4 4 Figure 14: Giao diện cửa sổ "Hộp thoại – nhận nhiệm vụ" Mô tả đối tượng giao diện - Table 23: Mô tả giao diện cửa sổ "Hộp thoại – nhận nhiệm vụ" STT Tên txtNPCName txtScript Kiểu Text Text btnNext Button btnClosed Button Ý nghĩa Hiển thị tên NPC Hiển thị lời đối thoại NPC Tiếp tục đối thoại với NPC Dừng đối thoại với NPC Ghi 6.12 Giao diện cửa sổ “Hộp thoại – tương tác NPC” - Giao diện 4 Figure 15: Giao diện "Hộp thoại – tương tác NPC" - Mô tả đối tượng giao diện Table 24: Bảng mô tả giao diện " Hộp thoại – tương tác NPC " STT 33 Tên txtNPCName btnAnswers btnClosed Kiểu Text Button Button Ý nghĩa Hiển thị tên NPC Trò chuyện với NPC Dừng đối thoại với NPC Ghi Chương TỔNG KẾT 7.1 Kết • Game có đầy đủ tính năng, chế game tối thiểu • Game hồn tồn khơng xảy tình trạng glitch, crash • Game chạy Windows/Linux • Cấu trúc hệ thống có khả linh hoạt cao để bổ sung thêm kỹ năng, hiệu ứng, số • Thành thạo sử dụng số tính Unity: terrain, UI,… 7.2 Hạn chế • Chưa có vịng lặp game, đồ hồn chỉnh • Chưa có cốt truyện, ý nghĩa trị chơi • Gameplay chưa có tính sáng tạo cao, chưa đủ hấp dẫn 7.3 Source Code https://github.com/NAM2412/Zeaot.git 7.4 Cài đặt 7.5 Hướng phát triển 7.5.1 Cải thiện trải nghiệm gameplay • Bổ sung chế game, chế độ • Bổ sung phần thưởng sau hồn thành nhiệm vụ • Đầu tư khoản cân game 7.5.2 Cải thiện trải nghiệm đồ họa • Bổ sung animation cho trạng thái (Idle, Attack, Hit, Dead) 7.5.3 Cải thiện trải nghiệm âm • Bổ sung hiệu ứng âm thanh, lời thoại nhân vật 34