Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 93 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
93
Dung lượng
7,43 MB
Nội dung
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN CÔNG NGHỆ PHẦN MỀM HẦU NGUYỄN THÀNH NAM – TRẦN DUY QUANG NGHIÊN CỨU VÀ PHÁT TRIỂN GAME TRÊN TRÌNH DUYỆT WEB VỚI SILVERLIGHT KHĨA LUẬN TỐT NGHIỆP CỬ NHÂN CNTT TP.HCM, 2009 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN CÔNG NGHỆ PHẦN MỀM HẦU NGUYỄN THÀNH NAM 0512222 TRẦN DUY QUANG 0512275 NGHIÊN CỨU VÀ PHÁT TRIỂN GAME TRÊN TRÌNH DUYỆT WEB VỚI SILVERLIGHT KHĨA LUẬN TỐT NGHIỆP CỬ NHÂN CNTT GIÁO VIÊN HƯỚNG DẪN TS TRẦN MINH TRIẾT NIÊN KHÓA 2005 – 2009 NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… Khóa luận đáp ứng yêu cầu LV cử nhân tin học Tp HCM, ngày…… tháng…… năm 2009 Giáo viên hướng dẫn i NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… Khóa luận đáp ứng yêu cầu LV cử nhân tin học Tp HCM, ngày…… tháng…… năm 2009 Giáo viên phản biện ii LỜI CÁM ƠN Chúng em xin chân thành cảm ơn Khoa Công Nghệ Thông Tin, trường Đại Học Khoa Học Tự Nhiên Tp HCM tạo điều kiện tốt cho chúng em thực đề tài tốt nghiệp Chúng em xin chân thành cảm ơn Thầy Trần Minh Triết, người tận tình hướng dẫn, bảo chúng em suốt thời gian thực đề tài Chúng em xin gửi lời cảm ơn sâu sắc đến quý Thầy Cô Khoa tận tình giảng dạy, trang bị cho chúng em kiến thức quí báu năm học vừa qua Chúng em xin gửi lòng biết ơn sâu sắc đến Ba, Mẹ, anh chị bạn bè ủng hộ, giúp đỡ động viên chúng em lúc khó khăn suốt thời gian học tập nghiên cứu Mặc dù chúng em cố gắng hoàn thành luận văn phạm vi khả cho phép, chắn không tránh khỏi thiếu sót, kính mong cảm thơng tận tình bảo q Thầy Cơ bạn Nhóm thực Hầu Nguyễn Thành Nam & Trần Duy Quang iii ĐỀ CƯƠNG CHI TIẾT Tên đề tài: Nghiên cứu phát triển game trình duyệt web với Silverlight Giáo viên hướng dẫn: TS Trần Minh Triết Thời gian thực hiện: từ ngày 02/01/2009 đến ngày 07/07/2009 Sinh viên thực hiện: Hầu Nguyễn Thành Nam (0512222) – Trần Duy Quang (0512275) Loại đề tài: Tìm hiểu cơng nghệ xây dựng ứng dụng Nội dung đề tài: Đây đề tài thuộc hướng tìm hiểu cơng nghệ phát triển ứng dụng Đề tài bao gồm phần sau: Khảo sát đặc điểm thường gặp số game online web, Ikariam, Travian, Evony, Second World, Battle, TribalWars… Nghiên cứu kĩ thuật phát triển ứng dụng web hỗ trợ multimedia có tính tương tác cao với cơng nghệ Silverlight Đề xuất khái niệm quy luật họ game online thuộc thể loại xây dựng chiến thuật web Phát triển game thuộc họ game đề xuất với công nghệ silverlight Game xây dựng có khả tùy biến để bổ sung/thay đổi thơng tin trị chơi (ví dụ cơng trình, qn lính, kỹ thuật…) tài ngun hình ảnh tương ứng Xây dựng công cụ (game editor) thực việc bổ sung / thay đổi thông tin trị chơi (ví dụ cơng trình, qn lính, kỹ thuật…) tài ngun hình ảnh tương ứng, ngồi với cơng cụ cho phép tạo game có phong cách chơi, nguyên tắc xử lý, thơng tin trị chơi tài nguyên hình ảnh thay đổi Kế hoạch thực hiện: - 02/01/2009 đến 14/1/2009: Tìm hiểu Rich Internet Application cơng iv nghệ Silverlight Tìm hiểu game web có - 15/1/2009 đến 1/2/2009: Phân tích yêu cầu, vấn đề, giải pháp xây dựng game web - 2/2/2009 đến 20/2/2009: Tìm hiểu hoàn tất yêu cầu mặt kĩ thuật - 21/2/2009 đến 12/3/2009: Xây dựng khung chương trình cho game chơi web - 13/3/2009 đến 25/3/2009: Hồn thành chức chương trình - 26/3/2009 đến 10/4/2009: Nâng cấp, cải thiện hiệu suất tốc độ xử lý - 11/4/2009 đến 6/5/2009: Xây dựng khung chương trình cho cơng cụ hiệu chỉnh phát sinh game - 7/5/2009 đến 22/5/2009: Hoàn thành chức công cụ phát sinh game - 23/5/2009 đến 8/6/2009: Nâng cấp giao diện tính tiện dụng cơng cụ - 9/6/2009 đến 30/6/2009: Hồn thành tồn chương trình dựa qui trình giải pháp xây dựng Xác nhận GVHD Ngày 06 tháng 07 năm 2009 SV Thực v MỤC LỤC NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN .1 NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN LỜI CÁM ƠN .3 ĐỀ CƯƠNG CHI TIẾT MỤC LỤC DANH MỤC HÌNH 10 Mở đầu 1.1 Tổng quan 1.1.1 Tổng quan trình phát triển hệ video game 1.1.2 Tổng quan game trình duyệt .2 1.2 Rich Internet Application - RIA 1.2.1 Tổng quan RIA 1.2.2 RIA giải pháp 1.3 Mục tiêu luận văn 12 1.4 Nội dung báo cáo khóa luận 14 Một số đặc điểm game trình duyệt 15 1.5 Tổng quan 15 1.6 Phân tích đặc điểm chung game trình duyệt .15 1.6.1 Dựa văn .15 1.6.2 Tất xử lý hầu hết thực server .17 vi 1.6.3 Hạn chế xử lý tất hành động đồng thời .18 1.6.4 Game hỗ trợ đa ngôn ngữ 20 1.6.5 Game xây dựng với cấu trúc linh động 20 1.7 Quy luật chung dòng game thể loại xây dựng chiến thuật trình duyệt web 21 1.7.1 Thế giới ảo 21 1.7.2 Khu xây dựng 22 1.7.3 Tài nguyên 23 1.7.4 Quân lính 24 1.7.5 Nâng cấp khả cho đơn vị quân lính 25 1.7.6 Nâng cao suất khai thác loại tài nguyên 26 1.7.7 Quan hệ ngoại giao hệ thống liên minh 27 1.7.8 Vận chuyển hàng hóa giao thương 28 1.7.9 Mở rộng lãnh thổ .28 Web game xây dựng MyIka .30 1.8 Thế giới game MyIka 30 1.9 Các loại tài nguyên 31 1.10 Thành phố .32 1.11 Các loại cơng trình .33 1.11.1 Loại cơng trình định nghĩa sẵn 33 1.11.2 Loại cơng trình tạo tài nguyên 34 1.11.3 Loại cơng trình tạo đơn vị lính 34 1.12 Quân lính .34 vii 1.13 Công nghệ .36 1.14 Liên minh thuộc địa 36 1.15 Tin nhắn .37 1.16 Tấn công 37 Những vấn đề xử lý game client 38 1.17 Xử lý đồ họa tương tác giao diện 38 1.17.1 Chuyển đổi qua lại hình giao diện game .38 1.17.2 Hiệu ứng chuyển trang ứng dụng nhiều trang game 41 1.17.3 Hỗ trợ giao diện đa ngôn ngữ game 43 1.17.4 Hiệu ứng xoay vòng dạng băng chuyền game 44 1.17.5 Các hiệu ứng với đối tượng riêng lẻ game 45 1.18 Các vấn đề trình xử lý game client 49 1.18.1 Xây dựng game có cấu trúc linh động 49 1.18.2 Bảo mật thông tin tài khoản người dùng game 50 1.18.3 Tối ưu hóa xử lý hỗ trợ đa ngơn ngữ game 50 1.18.4 Tối ưu hóa trình nạp hình ảnh từ server 52 1.18.5 Truyền nhận liệu client server 52 1.18.6 Lưu giữ trạng thái chương trình client 54 1.19 Âm game 55 Một số vấn đề xử lý game Server 57 1.20 Một số vấn đề xử lí 57 1.20.1 Serialize đối tượng WCF service 57 viii Kiến trúc hệ thống Ở chương trước trình bày vấn đề gặp phải trình xử lí client server đưa giải pháp để giải Trong chương trình bày cụ thể kiến trúc hệ thống xây dựng Kiến trúc hệ thống bao gồm hai thành phần client server server lại bao gồm hai thành phần nhỏ web (gồm trang web dịch vụ web mà server cung cấp) thành phần giám sát kiện 1.23 Kiến trúc client Kiến trúc client gồm có module Hình 6.24 Kiến trúc client Ikariam: Chính chương trình silverlight chịu trách nhiệm hiển thị IkariamEntity: Silverlight dll chứa lớp xử lí giao diện nghiệp vụ IkariamHelper: Silverlight dll chứa lớp trợ giúp việc xử lí 1.24 Kiến trúc server Server gồm có hai thành phần, thành phần trang web chứa silverlight control đồng thời cung cấp web service cho client Thành phần thứ hai giám sát kiện server client tạo kiện xây cơng trình, nâng cấp, mua lính… 64 Thông qua lớp thuộc module Dao, web service truy cập sở liệu để lấy thông tin trả cho client Các module DaoEntity DaoHelper trợ giúp việc xử lí nghiệp vụ Web Web Pages Web Services DaoEntity Dao DaoHelper Hình 6.25 Thành phần chứa trang web EventManager EventHandler1 EventHandler1 … EventHandler1 Hình 6.26 Thành phần quản lí kiện (Chiều mũi tên chiều tham chiếu) EventManager xây dựng theo kiến trúc plugin Các EventHandler đảm nhiệm việc xử lí kiện riêng biệt quản lí EventManager 65 1.25 Sơ đồ phối hợp client server Sơ đồ bên cho thấy phối hợp thành phần với để hoạt động Đọc / Ghi thông tin Trao đổi liệu Ikariam Web Giám sát kiện EventManager Hình 6.27 : Sơ đồ phối hợp client server Những hành động người chơi client thông qua module Web để trao đổi liệu Kết hành động ghi nhận vào sở liệu Thông qua module EventManger, kiện phát từ client giám sát xem trải qua đủ thời gian cần thiết để có hiệu lực hay chưa cập nhật 1.26 Tổ chức liệu 1.26.1 Cơ sở liệu Account: Mỗi người chơi đăng kí cần cung cấp tên đăng nhập, mật địa email Trạng thái tài khoản (active/unactive) ghi nhận lại trường Status City: Trường hợp cụ thể khu xây dựng thành phố Mỗi người chơi có nhiều thành phố chiếm làm thuộc địa Cấp độ thành phố định dựa vào cấp độ tòa thị với cấp độ có lượng dân số tương ứng 66 Island: Trong giới ảo có nhiều trung tâm xây dựng với thể cụ thể đảo Một hịn đảo ngồi tên cịn có tọa độ giới xác định thông qua hai trường PositionX PositionY BuildingAbility: Bảng mơ tả khả xây cơng trình người chơi Trường Unlocked cho biết loại cơng trình xây hay khơng Một cơng trình unlock nghiên cứu thành công công nghệ liên quan Unit: Bảng cho biết số lượng qn lính với loại cụ thể có thành phố 67 Event: Các kiện game có thơng tin loại kiện, xuất phát từ người chơi nào, thời gian bắt đầu, thời gian kết thúc thông tin dạng xml mô tả chi tiết loại kiện Technology: Tương tự BuildingAbility, bảng Technology cho biết công nghệ nghiên cứu người chơi nghiên cứu thành công hay chưa Building: Trong khu xây dựng có nhiều cơng trình Mỗi cơng trình xây nên vị trí định cạn biển Trạng thái cơng trình mô tả thêm trường BuildingCreationId cho biết cơng trình 68 có phải tạo hay khơng, BuildingUpgradeId cho biết cơng trình có phải nâng cấp hay khơng, CreatingUnit cho biết có phải tạo lính hay khơng CityResource: Mỗi khu xây dựng có tài nguyên dùng để phục vụ nhiều mục đích khác Giá trị loại tài nguyên lưu trữ bảng PlayerAchievement: Tất chung mà người chơi có đưa vào bảng PlayerAchievement, IsAlliance cho biết người chơi có tham gia vào liên minh chưa MaxColony khả tạo tối đa thuộc địa Alliance Alliance Detail: Bảng quan hệ thể thông tin liên minh viên tham gia liên minh thông qua hai bảng trên, liên minh phải có chủ liên minh 69 Message: Thơng tin tin nhắn lưu trữ thông qua ba gồm người gửi, người nhận, nội dung loại tin nhắn có hai loại loại tin nhắn thông thường, loại tin nhắn xin gia nhập liên minh 1.26.2 Cấu hình prototype Cấu hình game lưu tập tin GameConfig.xml prototype dùng để khởi tạo người chơi đăng kí tài khoản lưu tập tin GamePrototype.xml GameConfig.xml Để tăng tính linh động cấu trúc game nên liệu chung lưu dạng xml thông qua file Config 70 Trong tập tin cấu hình chứa + Danh sách ánh xạ tài nguyên, công trình, cơng nghệ, đơn vị lính … … … + Tọa độ cờ hiển thị khu đất trống … + Độ lệch hình hiển thị tòa nhà so với cờ … + Thông tin chi tiết việc xây dựng cơng trình, bao gồm tài nguyên cần có ứng với level, loại cơng trình, xây tối đa, thời gian xây dựng thuộc tính đặc biệt loại cơng trình … 71 + Thông tin chi tiết việc tạo lính, bao gồm tài nguyên cần thiết để tạo lính, tịa nhà tạo loại lính + … Thơng tin chi tiết loại côngLength="0 0:0:20" cứu … GamePrototypes.xml Chứa nguyên mẫu thông tin khu xây dựng người chơi đăng kí tài khoản gồm có số lượng loại tài nguyên, trạng thái loại cơng trình, loại cơng trình có khả xây dựng, loại đơn vị lính xây dựng, cơng nghệ nghiên cứu, khả tạo liên minh số lượng thuộc địa có 72 1.27 GameEditor Hình 6.28 Giao diện game editor Khi nạp chương trình tồn thông tin nhà nạp lên Khi muốn chỉnh sửa số thông số yêu cầu tài nguyên ứng với cấp độ, chọn level muốn sửa đổi, sau cập nhập thơng tin tài nguyên thực tao tác updatebuilding, cấp độ building, add thêm cấp độ cần thiết, vd game cho phép xây cac công trinh đến Level 5, muốn thêm level ta thực tap tác AddLevel, với level add vào level cao nhất, tương tự với delete Level 73 Hình 6.29 Màn hình editor cho unit Giống với building, hinh cho phép ta thêm xóa, cập nhập thơng số để tạo loại lình, nhu cầu vê tai nguyên, số quan lính tối đa ứng với loại thời gian xây dựn tính giây Tương tự với hình Technology, City Island Như vậy, qua chương 4, 5, trình bày cụ thể vấn đề gặp phải trình xây dựng game chơi trình duyệt MyIka đưa giải pháp để giải đồng thời trình bày kiến trúc hệ thống cần xây dựng Chương trình bày kết đạt hướng phát triển đề tài 74 Kết luận Nội dung chương trình bày kết đạt hướng phát triển đề tài 1.28 Các kết đạt Thơng qua q trình nghiên cứu tìm hiểu chúng em đả đề xuất đặc điểm chung game trình duyệt từ chung em sâu vào tìm hiểu dạng game trình duyệt thể loại xây dựng chiến thuật (dàn trận ), thông qua đặc điểm đề xuất, chúng em xây dựng nên game có tên MyIka thể số đề xuất em đưa ra, trình xây dựng kiến trúc game chúng em đả hoàn thành mục tiêu tùy biến thơng tin game tai nguyên tương ứng để trở thành game tương tự cung cách xử lý, hình ảnh thơng tin game khác 1.29 Hướng phát triển đề tài Cùng với phát triển khoa học công nghệ, phát triển Internet công nghệ web nay, nhu cầu người ngày cao, cần có framework hỗ trợ xây dựng tối đa nhiều loại game hơn, tùy theo nhu cầu người sử dụng Hệ thống framework cho game tương tự với đặc điểm game mang tính chiến thuật, để tạo game dạng khác đòi hỏi framework linh động hỗ trợ nhiều so với mà framework hỗ trợ Một điểm nhấn khác xây dựng thêm khả tùy biến cho game loại hình muốn thể game, loại cơng nghệ muốn sử dụng để thể cho game, hệ thống mức silverlight 75 TÀI LIỆU THAM KHẢO [1] Bill Evjen, Scott Hanselman, Farhan Muhmad, Srimivasa Sivakumar, Devin Rader, Professional ASP.NET 2.0, Wiley Publishing, Inc, 2005 [2] Charles Petzold, Programming Microsoft Windows with C#, Microsoft, 2001 [3] Matthew MacDonald, Pro WPF Windows Presentation Foundation in dot NET 3.0, Apress, 2007 [4] Paolo Pialorsi, Marco RussoPaolo, Introducing Microsoft LINQ, Microsoft Press, 2007 [5 ] Raymond Yee, Pro Web 2.0 Mashups: Remixing Data and Web Services, Apress, 2008 [6] Victor Gaudioso, Foundation Expression Blend 2, Apress, 2008 ... tài tập trung vào việc nghiên cứu phát triển game trình duyệt web với Silverlight Silverlight công nghệ Microsoft giới thiệu vào năm 2007 cho phép xây dựng ứng dụng chạy trình duyệt hỗ trợ multimedia... sản xuất chơi thơng qua trình duyệt web Ưu điểm game chơi thơng qua trình duyệt web chơi đâu miễn có trình duyệt kết nối internet Vì vậy, game chơi thơng qua trình duyệt web trở nên phổ biến Nội... luận & hướng phát triển xiii Mở đầu Nội dung chương trình bày tổng quan q trình phát triển game nói chung phát triển game trình duyệt, qua giới thiệu cơng nghệ RIA sử dụng để xây dựng game đồng