Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 69 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
69
Dung lượng
878,76 KB
Nội dung
ĈҤ,+Ӑ&Ĉ¬1Ҹ1* 75ѬӠ1*ĈҤ,+Ӑ&6Ѭ3+Ҥ0 KHOA TIN +Ӑ& Tel (84-511)3841323 - 3841513, Fax (84-511) 3842953 Website: www.ued.edu.vn E-mail: Education@dng.vnn.vn +Ï$/8Ұ 17Ӕ71*+,ӊ3 NGÀNH CӰ NHN CễNG NGHTHễNG TIN TI: 1*+,ầ1&89ơ3+ẩ775,1*$ 11$1'52,' Sinh viờn 7UQJ7K7kP /ӟS : 08CNTT2 *LiRYLrQKѭӟQJGүQ 7K61JX\ӉQ7K Ĉj1 ̽QJWKiQJQăP 012 LӠI CҦ0Ѫ1 Ĉҫ u tiên em xin chân thành cҧ PѫQFiFWK ҫ \F{WUѭ ӡQJĈ ҥ i hӑF6ѭSK ҥ m Ĉj1 ҹ QJÿmWUX\ Ӆ Qÿ ҥ t nhӳng kinh nghiӋ m quý báu cho chúng em nhӳng QăPK ӑc vӯa qua Ĉһ c biӋ t xin chúng em xin chân thành cҧ PѫQWK ҫ y NguyӉ n Thanh Tuҩ n ÿm nhiӋ WWuQKKѭ ӟng dү n HPKRjQWKjQKÿ Ӆtài luұ QYăQW ӕt nghiӋ p ĈӇFyÿѭ ӧc kӃ t quҧQKѭQJj\K{PQD\[LQFKkQ ҧ PѫQ Ban lãnh ÿҥ RFNJQJQKѭFiFDQKFK ӏCông ty TNHH TH-TM AsNet, QѫL em thӵc tұ Sÿm tұ QWuQKJL~Sÿ ӥ, tҥ o mӑLÿL Ӆ u kiӋ n tӕ t nhҩ WFKRHPKRjQWKjQK Ӆtài cӫa 7X\QKLrQWURQJTXiWUuQKKRjQWK Ӆtài khơng thӇtránh khӓ i nhӳng thiӃ u sót Em mong nhұ n ÿѭ ӧc nhiӅ XÿyQJJySF ӫa quý thҫ \F{FNJQJQ anh chӏWURQJF{QJW\ÿ Ӈÿ ӅWjLÿѭ ӧc hoàn thiӋ QKѫQ Em xin chân thành cҧ PѫQ Ĉj1 ҹ ng, tháng 5/2012 Sinh viên thc hi͏ n: 7U˱˯QJ7K ͓Tân LӠ,&$0Ĉ2$1 T{L[LQFDPÿRDQ : Nhͷng n͡i dung lu̵ QYăQQj\OjGRW{LW c hi͏ QG˱ ͣi s K˱ ͣng d̳ n trc ti͇ p cͯa th̯y th̯y Nguy͍ n Thanh Tṷ n M͕i chép không hͫp l͏ , vi ph̩m quy ch͇ÿjRW ̩ o, hay gian trá, xin ch͓ u hoàn toàn trách nhi͏ m Sinh viên thc hi͏ n 7U˱˯QJ7K ͓Tâm MӨC LӨC DANH MӨC CÁC TӮVIӂT TҲT .9 MӢĈҪU .10 Lý chӑ Qÿ Ӆtài 10 MөFÿtFKQJKLrQF ӭu 10 Ĉӕ LWѭ ӧng phҥ m vi nghiên cӭu 10 3.1 ĈӕLWѭ ӧng nghiên cӭu 10 3.2 Phҥ m vi nghiên cӭu 11 3KѭѫQJSKiSQJKLrQF ӭu 11 4.1 &ѫV ӣlý thuyӃ t 11 4.2 Công cөthiӃ t kӃFKѭѫQJWUu nh 11 4.3 DӵkiӃ n kӃ t quҧÿ ҥ Wÿѭ ӧc 12 éQJKƭDNKRDK ӑ c thӵc tiӉ Qÿ Ӆtài 12 Cҩ u trúc cӫ a luұ QYăQ 12 Phân công công viӋ c: 13 &KѭѫQJ7 ӘNG QUAN VӄANDROID .15 1.1 Giӟi thiӋ u Android 15 1.1.1 Android gì? 15 1.1.2 Lӏ ch sӱAndroid .15 1.1.3 NhӳQJWtQKQăQJF ӫa Android 16 1.1.4 Mơ hình Android .16 1.1.5 9zQJÿ ӡi Android .18 1.1.6 Mӝ t sӕJyLFѫE ҧ n cӫ a Android 21 &jLÿ һ t SDK 22 1.2.1 Giӟi thiӋ u SDK 22 &jLÿ һ t Plugin cho Eclipse 23 &KѭѫQJ&È&.Ƭ7+8 Ұ7&Ѫ% ҦN XÂY DӴNG GAME 2D 26 2.1 Các thành phҫ n vӅÿӗhӑa 26 2.1.1 Các dҥ ng file ҧ nh .26 2.1.2 Các hӋmàu 26 2.1.2.1.HӋmàu RGB 26 +ӋPjX&0< 28 2.2 Các khái niӋ m 30 2.2.1 Sprite 30 2.2.2 Frame 30 2.2.3 Frame rate 31 Ĉ ӗng bӝFrame 31 2.2.5 Animation 32 2.2.6 Tile 33 2.2.7 Map 33 2.2.8 Layer 34 .ƭWKX ұ t xây dӵQJÿ ӗhӑ a Game 2D 35 .ƭWKX ұ Wÿ ӗhӑa .35 .ƭWKX ұ t chuyӇ n tiӃ Sÿ ӏ a hình 37 .ƭWKX ұ t thiӃ t kӃmap 37 2.3.3.1 Dùng tile 37 2.3.3.2 Dùng background 38 2.3.4 XӱOêÿ өQJÿ ӝ(Collision Detection) .39 .ƭWKX ұ t thiӃ t kӃGame .40 2.4.1 Game Loop 40 2.4.2 Game AI gì? 41 2.4.3 Game Physics 41 2.4.4 Sound 42 &KQJ7+, T K9ơ&ơ, 7&+1*75ẻ1+ 43 3.1 Phân tích Game 43 Ĉ һ c tҧgame Plant vs Zombies 43 3.1.1.1 Giӟi thiӋ u vӅgame 43 3.1.1.2 Mô tҧluұ WFKѫL 43 3.1.2 Cách quҧ QOêÿ ӕi Wѭ ӧng game 44 3.1.3.ThiӃ t kӃGame 45 &iFKÿL Ӆ u khiӇ n game .46 3.1.5 Cách tҥ o âm game 47 3.1.6 Cách xӱlý va chҥ m game 47 3.2 Phân tích thiӃ t kӃhӋthӕng 50 3.2.1 Phân tích yêu cҫ u .50 3.2.2.ThiӃ t kӃhӋthӕ ng 50 3.2.2.1 6ѫÿ ӗUse Case 50 6ѫÿ ӗlӟp (class) 55 3.2.2.3 6ѫÿ ӗtuҫ n tӵ 63 3.2.2.4 6ѫÿ ӗhoҥ Wÿ ӝ ng 65 3.2.1 Giao diӋ n menu 66 KӃ t quҧÿ ҥ Wÿѭ ӧc 67 1.1 VӅlý thuyӃ t 67 1.2.VӅthӵc nghiӋ m .67 +ѭ ӟng phát triӇ n cӫDÿ Ӆtài 68 TÀI LIӊU THAM KHҦO 69 DANH MӨC CÁC HÌNH &KѭѫQJ Hình 1 BiӇ XWѭ ӧng hӋÿL Ӆ u hành Android 15 Hình Mơ hình Android 17 +uQK0{KuQKYzQJÿ ӡi Android 18 Hình Hình ҧ nh mӝ t device emulator 23 Hình BiӇ u diӉ QEѭ ӟFÿ ҫ XWLrQFjLÿ һ t plugin .24 Hình Hình biӇ u diӉ Qÿ ӏ a chӍtranJZHEFjLÿ һ t plugin 24 Hình Hình biӇ u diӉ QTXDWUuQKFjLÿ һ t tӵÿ ӝ ng cӫ a plugin 25 &KѭѫQJ Hinh File ҧ nh vector bitmap 26 Hinh 2 HӋmàu RGB 27 Hinh HӋmàu CMYK 29 Hinh Sprite 30 +LQK4XiWUuQKÿ ӗng bӝframe 32 Hinh Tile 33 Hinh Thӭtӵsҳ p xӃ p layer 34 Hinh Isometric tile .35 Hinh Các Kѭ ӟng di chuyӇ n cӫa Isometric tile 35 Hinh 10 6ѫ ÿӗIsometric tile map 36 Hinh 11 Hexagon tile .36 Hinh 12 Các Kѭ ӟng di chuyӇ n cӫ a Hexagon tile 36 Hinh 13 6ѫ ÿӗHexagon tile map 36 +LQK&KѭD chuyӇ n tiӃ p 37 Hinh 15 Sau chuyӇ n tiӃ p 37 Hinh 16 Map dùng tile 38 Hinh 17 Dùng background .39 Hinh 18 Xҧ y va chҥ m .39 Hinh 19 &KѭD[ ҧ y va chҥ m 40 &KѭѫQJ Hình Mơ hình tәng qt cӫ a BrainStorm 45 Hình ThiӃ t kӃchi tiӃ t cho mӝ tÿ ӕLWѭ ӧng plants game 46 Hình 3 Mơ hình thiӃ t kӃnhân vұ t Zombie 46 Hình Va chҥ m giӳa plants zombies 48 Hình Hình ҧ nh Zombies tiӃ n vào nhà 49 Hình Plants phát hiӋ n zombies bҳ Qÿ ҥ n 49 Hình Va chҥ m giӳDÿ ҥ n zombies 50 Hình KiӇ m tra va chҥ m giӳDÿ ҥ n zombies 50 Hình Mơ hình Use Case Menu 51 Hình 10 Mơ hình Use Case Game Play 53 +uQK6ѫÿ ӗlӟp 55 Hình 12 Lӟp Zombies_Activity 56 Hình 13 Lӟp ZombiesView 57 Hình 14 Lӟp LinkList 58 Hình 15 Lӟp Animation 59 Hình 16 Lӟp Zombie 60 Hình 17 Lӟp Plant 61 Hình 18 Lӟp Bullet 62 +uQK6ѫÿ ӗtuҫ n tӵhiӇ n thӏmenu 63 +uQK6ѫÿ ӗtuҫ n tӵTXiWUuQKFKѫLJDPH 64 +uQK6ѫÿ ӗhoҥ Wÿ ӝng 65 Hình 22 Giao diӋ n menu cӫDFKѭѫQJWUuQK 66 Hình 23 Giao diӋ n playing game 66 '$1+0Ө&&È&7Ӯ9,ӂ77 UML: Unified Modeling Language SDK : Software Development Kit ADT: Android Development Tools AI: Artificial Intelligence 1JKLrQFӭXYjSKiWWULӇQJDPH'WUrQ$QGURLG 0ӢĈҪ8 Lý chӑQÿ Ӆtài Ngày nhu cҫ Xÿ ӡi sӕ QJFRQQJѭ ӡLQJj\FjQJÿѭ ӧc nâng cao, có sӵ hiӇ u biӃ t rӝ QJUmLKѫQ công nghӋvà nhӳQJWtQKQăQJP ӟLWUrQÿL Ӌ n thoҥ i ÿѭ ӧFFRQQJѭ ӡi ý Yjÿ һ t mӕi qua tâm 7KrPYjRÿyQKXF ҫ u giҧ i trí cӫa QJѭ ӡLFNJQJÿѭ ӧc quan tâm, xuҩ t phát tӯnhӳng nhu cҫ XÿyJDPHWUrQ ӝng trӣ thành công cөkhông thӇthiӃ u cuӝc sӕ ng cӫa FRQQJѭ ӡi thӡi hiӋ n ÿҥ i TӯWKѭFW ӃÿyY ӟi kiӃ n thӭFÿmK ӑc kӃ t hӧp vӟi nӅ n tҧ ng Android di ÿӝ ng chúng em chӑ Qÿ Ӆtài tӕ t nghiӋ p cho là: Nghiên cͱu phát tri͋ n game 2D n͉ QÿL ͏ n tho̩LGLÿ ͡ ng Android Xây dng ͱng dͭng game Plants vs Zombies MөFÿtFKQJKLrQF ӭu Vӟi sӵphát triӇ n công nghӋQKѭ hiên nay, thӃgiӟi ÿѭ ӧc ví thӃgiӟi cӫ a cơng nghӋthơng WLQ7KrPYjRÿyQKXF ҫ u giҧ i trí cӫDFRQQJѭ ӡi ngày cao, QJѭ ӡi ta chӑn mӝt giҧ i pháp hoàn hҧ o cho sӵxҧstress sau mӛi ngày làm viӋ c mӋ t mӓi game thӃmà thӏWUѭ ӡQJJDPHQJj\FjQJV{L ӝ ng nóng bӓng, ÿһ c biӋ WOjJDPHWUrQGLÿ ӝ ng, thiӃ t bӏdi ÿӝ ng trӣthành mӝt trӧthӫkhông thӇ thiӃ u cӫD FRQ ӡi Vӟ QJѭ i nhӳQJOê GR FKtQKÿiQJÿy cӭu tìm hiӇ u vӅcơng nghӋvà nӅ n tҧ QJ $QGURLG ұ t làmYjNƭ game 2D, WKX JL~SQJѭ ӡLÿ ӑc cҧbҧ n thân chúng em có mӝt nhìn tә ng qt vӅAndroid nhӳng lӧi ích mà mang lҥ i ĈӕLWѭ ӧng phҥm vi nghiên cӭu 3.1 ĈӕLWѭ ӧng nghiên cӭu Android mӝt hӋÿL Ӆ u hành mӣcho nӅ n tҧ QJGLÿ ӝng mӝt sӵchӑ n lӵD ÿ~QJ ҳ n cӫD ÿQJѭ ӡi tiêu dùng VӟL Ӆtài ÿ chúng em sӁÿLQJKLrQ ӭu công nghӋ , nӅ n tҧ ng ӭng dө ng cӫa Android thiӃ t bӏGLÿ ӝ ng nhӳQJNƭ thuұ WFѫE ҧ n làm game 2D 697+7UѭѫQJ7Kӏ7kP ±/ӟS&177 Trang 10 1JKLrQFӭXYjSKiWWULӇQJDPH'WUrQ$QGURLG Hình Va ch̩ m giͷDÿ ̩n zombies Hình Ki͋ m tra va ch̩ m giͷDÿ ̩n zombies 7UrQÿѭ ӡQJÿL ÿ ҥ n sӁkiӇ m tra chӭa NӃ XFyWKuWKD\ ә i trҥ ng thái x TrӯHP: Mӛi lҫ n bӏÿ ҥ n bҳ n trúng zombies sӁbӏtrӯmӝt HP NӃ u hӃ t HP zombies sӁbӏchӃ t 3.2 Phân tích thiӃ t kӃhӋthӕng 3.2.1 Phân tích yêu cҫu x Game yêu cҫ u phҧ i có hӋthӕ ng meQXÿ Ӈtùy chӑn chӭc QăQJFKtQKF ӫa game x Có hӋthӕ ng trӧJL~SQJѭ ӡLFKѫL x Có sӱdө ng nhҥ c nӅ n nhҥ c hiӋ u ӭng x Xây dӵng hӋthӕng xét thҳ ng, thua mӛi phҫ QFKѫL 3.2.2.ThiӃ t kӃhӋthӕng 3.2.2.1 6ѫÿ ӗUse Case 697+7UѭѫQJ7Kӏ7kP ±/ӟS&177 Trang 50 1JKLrQFӭXYjSKiWWULӇQJDPH'WUrQ$QGURLG a Mơ hình Use Case Menu game Hình Mơ hình Use Case Menu ¾ Ĉһc tҧUse Case chӑn phҫQFKѫLP ӟi Tên Use Case: Select new game (chӑn phҫ QFKѫLP ӟi) Tác nhân: 3OD\HUQJѭ ӡLFKѫL Mô tҧ: 1Jѭ ӡLFKѫLFK ӑ n chӃÿ ӝFKѫLP ӟi ¾ Ĉһc tҧUse Case hiӇ n thӏtùy chӑn: Tên Use Case: View game Option (hiӇ n thӏtùy chon game) Tác nhân: 3OD\HUQJѭ ӡLFKѫL Mô tҧ: x 1Jѭ ӡLFKѫLFK ӑ n chӃÿӝtùy chӑ n cho game x Chӑn bұ t tҳ t âm cho game ¾ Ĉһc tҧUse Case hiӇ n thӏtrӧgiúp game Tên Use Case: View Help game (hiӇ n thӏtrӧgiúp game) 697+7UѭѫQJ7Kӏ7kP ±/ӟS&177 Trang 51 1JKLrQFӭXYjSKiWWULӇQJDPH'WUrQ$QGURLG Tác nhân: PlD\HUQJѭ ӡLFKѫL Mô tҧ: x 1Jѭ ӡi FKѫLFK ӑ n chӃÿӝtrӧJL~SNKLFKѭDKL Ӈ u rõ luұ WFKѫL cӫa game x HiӇ n thӏchi tiӃ t vӅluұ WFKѫLYjFiFKFKѫL 697+7UѭѫQJ7Kӏ7kP ±/ӟS&177 Trang 52 1JKLrQFӭXYjSKiWWULӇQJDPH'WUrQ$QGURLG b Mơ hình Use Case Game Play Hình 10 Mơ hình Use Case Game Play ¾ Ĉһc tҧUse Case quay lҥi menu game Tên Use Case: Go to menu (quay lҥ LPHQXFKѫLJDPH Tác nhân: 3OD\HUQJѭ ӡLFKѫL Mô tҧ: x 1Jѭ ӡLFKѫLÿDQJFKѫLPX ӕn quay lҥ i menu cӫ a game x Trӣlҥ i giao diӋ n menu ¾ Ĉһc tҧUse Case dӯng game: Tên Use Case: Pause game (dӯng game) Tác nhân: 3OD\HUQJѭ ӡLFKѫL Mô tҧ: x1Jѭ ӡLFKѫLFK ӑ n chӃÿӝdӯng game xGame dӯng lҥ i 697+7UѭѫQJ7Kӏ7kP ±/ӟS&177 Trang 53 1JKLrQFӭXYjSKiWWULӇQJDPH'WUrQ$QGURLG ¾ Ĉһc tҧUse Case Play: Tên Use Case: Play &KѫLJDPH Tác nhân: 3OD\HUQJѭ ӡLFKѫL Mô tҧ: x 1Jѭ ӡLFKѫLWU ӗ ng tҥ i vӏtrí bҩ t kì, bҵ ng cách chӑn muӕn trӗ ng bҧ ng chӑ n kích chҥ m vào hình tҥ i vӏ trí muӕn trӗng x Cây tӵÿӝQJVLQKÿ ҥ n bҳ n tiêu diӋ t Zombies 697+7UѭѫQJ7Kӏ7kP ±/ӟS&177 Trang 54 1JKLrQFӭXYjSKiWWULӇQJDPH'WUrQ$QGURLG 3.2.2.2 6ѫÿ ӗlӟp (class) Hình 11 6˯ÿ ͛lͣp 697+7UѭѫQJ7Kӏ7kP ±/ӟS&177 Trang 55 ... kӃ t hӧp vӟi nӅ n tҧ ng Android di ÿӝ ng chúng em chӑ Qÿ Ӆtài tӕ t nghiӋ p cho là: Nghiên cͱu phát tri͋ n game 2D n͉ QÿL ͏ n tho̩LGLÿ ͡ ng Android Xây dng ͱng dͭng game Plants vs Zombies... trӗng game cách quҧ n lý FiFÿ ӕLWѭ ӧng game 3KѭѫQJSKiSQJKLrQ cӭu 4.1 &ѫV ӣlý thuyӃ t Tìm hiӇ u cơng ngh? ?và nӅ n tҧ QJӝ GL ng mӣÿ Android cӫ a Google, quy trình phát triӇ n game 2D, nhҵ... quҧÿҥWÿѭ ӧc Nҳ m rõ lý thuyӃ t thiӃ t k? ?game 2D nói chung game 2D nӅ n tҧ ng Android nói riêng Xây dӵng ӭng dө ng game Plants vs Zombies thõa mãn yêu cҫ XVDXÿk x Game phҧ i hiӇ n thӏrõ phҫ Q FKѫL