Lập trình game trên thiết bị di động (Đồ án tốt nghiệp)Lập trình game trên thiết bị di động (Đồ án tốt nghiệp)Lập trình game trên thiết bị di động (Đồ án tốt nghiệp)Lập trình game trên thiết bị di động (Đồ án tốt nghiệp)Lập trình game trên thiết bị di động (Đồ án tốt nghiệp)Lập trình game trên thiết bị di động (Đồ án tốt nghiệp)Lập trình game trên thiết bị di động (Đồ án tốt nghiệp)Lập trình game trên thiết bị di động (Đồ án tốt nghiệp)Lập trình game trên thiết bị di động (Đồ án tốt nghiệp)Lập trình game trên thiết bị di động (Đồ án tốt nghiệp)Lập trình game trên thiết bị di động (Đồ án tốt nghiệp)Lập trình game trên thiết bị di động (Đồ án tốt nghiệp)Lập trình game trên thiết bị di động (Đồ án tốt nghiệp)
M CL C LÝ THUY T 1.1 KI N C A THI T B NG THÔNG MINH 1.1.1 Gi i thi u 1.1.2 Vi x lý 1.1.3 B nh RAM 14 1.1.4 B nh ROM 15 1.1.5 Màn hình .15 1.1.6 B x h a 16 1.2 CÁC THI T B NG 17 1.2.1 Gia t c k 17 1.2.2 Con quay h i chuy n 18 nh v v tinh 19 1.2.4 C m bi n dung 20 1.3 KI N TRÚC C A N N T NG ANDROID 21 1.3.1 Nhân c a h 1.3 u hành 21 n 22 1.3.3 Khung ng d ng Android 24 1.3.4 T ng ng d ng 25 1.3.5 Các thành ph n m t ng d ng Android 25 1.4 CƠNG C VÀ NGƠN NG L P TRÌNH .29 1.4.1 Ngơn ng l p trình 29 1.4.2 Cơng c cho l p trình 29 1.4.3 M t s Game engine 31 1.5 QUY TRÌNH XÂY D NG PH N M M TRÊN ANDROID 32 L N THO I THÔNG MINH 33 2.1 Gi i thi u 33 2.2 KI N TRÚC C A .33 2.2.1 Ki n trúc chung 33 án t t nghi i Phòng 2.2.2 K thu t âm .35 2.2.3 K thu h a 36 2.2.4 H th ng mô ph ng 41 2.2.5 K thu t x lý va ch m game 42 2.3 CÔNG C X LÝ ÂM THANH .43 2.4 CÔNG C X LÝ HÌNH NH 44 2.5 CÔNG C PHÁT TRI N PH N M M 46 TRI N KHAI NG D NG 50 3.1 CHU N B TÀI NGUYÊN CHO ng c NG D NG 50 .50 h a .50 3.1.3 Âm 51 3.2 TH C NGHI M 51 Sinh v CT1401 án t t nghi i Phòng DANH SÁCH CÁC HÌNH Hình 1-1:Ki n c a FPGA Hình 1-2:Ki n trúc Snapdragon S4 s d ng b vi x lý Krait .10 Hình 1-3: kh i SoC OMAP36xx c a Texas Instruments 10 Hình 1-4: Bi Hình 1-5: OMAP4470 c a Texas Instruments 11 kh i Exynos 4210 c a Samsung 11 Hình 1-6: Hình minh h a v m ch Samsung Galaxy S 4G 12 Hình 1-7: kh i c a Tegra .13 Hình 1-8: Hình nh c lý (lõi th n m cùng) 13 Hình 1-9: Hình minh h a v m ch Motorola Droid Razr .14 Hình 1- n c a m t t m n n LCD TFT .15 Hình 1- t m hi n th AMOLED 16 Hình 1-12: Ki n trúc bên GPU Mali c a ARM 16 Hình 1-13: Hình minh h a gia t c k dùng máy bay 17 Hình 1-14: C u t n c a gia t c k .17 Hình 1-15: Minh h a ho ng c a gia t c k n t 18 Hình 1-16: Hình nh minh h a quay h i chuy n 18 Hình 1-17: Hình nh minh h a MEMS 19 Hình 1-18: M t s a GPS: .19 Hình 1-19: Hình minh h Hình 1-20: Ki ho nc ah ng c a hình c m n dung 20 u hành Android .21 Hình 1-21: S so sánh Java VM Dalvik VMs 23 Hình 1-22: Hình 1-23: i c a m t ho ng 27 chuy n tr ng thái c a d ch v 28 Hình 1-24: Ki n trúc c a b cung c p n i dung Android 29 Hình 2-1: Ki nc am Hình 2-2: Hình minh h a ngón tay ch 33 u n User Input 34 Hình 2-3: Hình minh h a phép d ch chuy n, phép quay 36 Hình 2-4: Minh h a phép chi u ph i c nh 3D 2D 37 Sinh v CT1401 án t t nghi i Phòng Hình 2-5: Minh h a phép chi u song song 37 Hình 2-6: Minh h a góc nhìn h p .37 Hình 2-7: Minh h a góc nhìn r ng .38 t Hình 2-8: Minh h a phép chi u hình nh vào thi t b , hình bên trái chuy n g c vào thi t b hình bên ph i d ch chuy n thi t b v phía hình nh 38 Hình 2-9: Hình minh h a h tr c t -Các chi u .39 Hình 2-10: Giao di n Android Virtual Device Manager 41 Hình 2-11: T o thi t b o Android Virtual Device Manager .42 Hình 2-12: Giao di 43 Hình 2-13: Giao di 44 Hình 2-14: Giao di .44 Hình 2-15: Giao di 45 Hình 2-16: Giao di on Hình 2-17: Giao di 45 46 Hình 2-18: Giao di n Eclipse .46 Hình 2-19: Ch t o d án 47 Hình 2-20: Nh p thơng tin cho d án 48 Hình 2-21: Thi t l p thêm thơng s cho ng d ng .48 Hình 2-22: Ch n ch hi n th 49 Hình 2-23: Hồn thành t o d án 49 Hình 3-1: Hình nh máy bay b u tr i 51 Hình 3-2: Màn hình làm vi c c u Unity3D 51 Hình 3-3: Màn hình làm vi c c a MonoDevelop 52 Hình 3-4: Hình Hình 3-5: Máy bay b ch t n công 53 n 53 Hình 3-6: Hình nh v a r sang trái v a b n 54 Sinh v CT1401 án t t nghi i Phòng DANH SÁCH CÁC T Stt T vi t t t VI T T T Mô t FPGA Field programmable Gate Array SoC System on a Chip GPU Graphics Processing Unit Sinh v CT1401 án t t nghi i Phòng L IC c h t, em xin chân thành c gi ng viên Khoa Công ngh thông tin dành cho em r t nhi u th i gian quý báu, tr c ti em su án t t nghi p y giáo - Ths Nguy n Tr i h c Dân L p H ng d n t , ch b o Em xin chân thành c t c th y cô giáo khoa Công ngh thông tin i h c Dân L p H i Phòng, chân thành c y giáo, cô giáo tham gia gi ng d y truy t nh ng ki n th c quý báu su t th i gian em h c t pt c ph n bi án c a em giúp em hi nghiên c em có th án Em xin chân thành c n H u Ngh , Hi ng i h c Dân L p H i Phòng, ban giám hi ng, khoa Cơng ngh thơng tin, u ki n t t nh t su t th i gian em h c t p làm t t nghi p Tuy có nhi u c g ng q trình h c t khơng th tránh kh i nh ng thi u sót nh nh, em r c a t t c th t c b thi án t t nghi c s góp ý quý báu án c a em ngày hồn Em xin chân thành c H i Phòng, ngày tháng 07 Sinh viên Sinh v CT1401 án t t nghi i Phòng GI I THI U L p trình thi t b ng phát tri n ngày c a ngành truy n thông công ngh kinh t i nhi u l i nhu n cho n n kinh t Th nh t, m m ng m i c n nhi u lao ng k thu t cao, gi i quy t nhi u công vi ng Th 2, ngành u ngành công nghi p khác phát tri i n t , giáo d c m t s ngành d ch v khác Th 3, m c a ngành ngành cơng nghi p khơng khói, ngun li u tri th c bi i l i ích to l n cho c ng T Khóa lu n cho em m n thêm v k Khóa lu tài: L p trình game thi t b i vi ng ngh nghi p trình phát tri n h th ng ng th c hi n c trình bày theo c u trúc sau: Gi i thi u lý thuy n th n v thi t b ki n trúc ph n c ng, vi x lý, b nh , thi t b ng n n t ng c a h u hành Android L n m t ng d Gi i thi u v n thành ph n liên c p ng d ng trò K t lu n Tài li u tham kh o Sinh v CT1401 án t t nghi i Phòng LÝ THUY T Gi i thi u L p trình m c quan tr ng ngành cơng ngh thơng tin, l p trình cho thi t b i m t s yêu c u riêng khác v i l p trình cho máy tính L p trình cho máy tính nói c phát tri n nh m t th i gian dài có i v ki n trúc h th ng n t ng công ngh t b di ng dù r t ph bi n hi i gian phát tri i ng n, cơng ngh i, khơng có chu n th ng nh t, ph n c ng ph thu c nhi u vào hãng khác nhau, h u hành r ng v y ngôn ng l ng Tuy nhiên s n ph m v thi t b u có m t s ch nh RA l n, th nh , c c bi t có m t s thi t b mà h th c k , Con quay h i chuy n, nh v v ng, m t s sensor khác T phân tích trên, n t p trung vào trình bày n n t ng ph n c ng c a thi t b ng m t s ngôn ng l n hình cho thi t b ng 1.1 KI 1.1.1 Gi i thi u N C A THI T B NG THƠNG MINH Hi n có r t nhi u hãng s n xu t thi t b ph n c n tho i thông nhiên n n t ng công ngh ng d ng SoC (System on a chip).Cơng ngh tích h p nhi u b ph n khác vào m t vi m ch tích h lý (CPU), chip x h a u n USB vi m ch WIFI nhi u th khác n a.Các h th u d a n n t ng công ngh FPGA (field-programmable gate array) Hình 1-1:Ki n c a FPGA H u h t ki n trúc chung c a FPGA bao g m m t m ng kh i logic, dãy c ng nh n nh r ng (v m t v t lý), dãy c ng vào phù h p v i chi u cao ho r ng c a m ng [WikiFPGA] Sinh v CT1401 án t t nghi i Phòng S d ng FPGA m t gi i pháp khác nh m kh c ph c m t s h n ch c a ASIC (Application-Specific Integrated Circuit), ASIC m t vi m c thi t k dành cho m t ng d ng c th , v v ph c t p tri n khai.FPGA m t lo i vi m ch bán d n chuyên d u so sánh FPGA v i ASIC cm t có h n ch vi c th c hi n nh ng tác v c bi t ph c t p, nhiên tri ó th tái l p trình l i, thi t k n n chi phí gi m, rút ng n th n ph m vào th c t Ngoài có m t s vi m ch bán d n l dùng c u trúc m ng ph n t logic c L p trình c a FPGA th c hi Cho phép n p l Các nhà thi t k s d ng ngôn ng mô t ph n c ng thi t k l p trình cho FPGA Các gói ph n m m thi t b ph tr cho trình thi t k hãng s n xu t FPGA l p Ngoài t s hãng khác cung c p gói ph n m m ki Synopsys, Synplify 1.1.2 Vi x lý Vi x n tho c nhi u hãng s n xu t theo nhi u chu n khác Trong ph n khóa lu n gi i thi u m t s n tho i thông minh 1.1.2.1 ARM Chip ARM (Advance RISC Machine) c a hãng ARM Holding c nâng c p qua nhi u phiên b n Hi n có nhi u phiên b n c a ARM ARM 11, Cortex-M, Cortex-R,Cortex-A Th c ch t ARM Holdings không s n xu t chip mà h thi t k lo i chip r i c Qualcomm, Texas Instruments, Apple, ARM cung c p thi t k IP-Core cho lo i 32 bit 64 bit 1.1.2.2 SoC Snapdragon SoC Snapdragonc a hãng Qualcomm l a ch n m t gi i pháp khác m c dù h d ng b n quy n c s n xu khơng s d ng hồn tồn thi t k c a ARM Hãng d a vào thi t k ARM r i c i ti n thi t k phát tri n thành vi x lý Scorpion Krait riêng c a h , vi x lý c a Qualcomm có t x nt n hi u qu v i b vi x lý u.Các vi x lý Scorpion Krait SoC Snapdragon c a Qualcomm Mã Snapdragon có nhi u lo Sx (x 1, 2, , n) S x l n t x lý m nh Hi n t i có m t s s n ph m d ki n s Sinh v CT1401 án t t nghi i Phòng s d ng Snapdragon S4 c a Qualcomm One XL, HTC One S, HTC EVO 4G LTE, HTC Hình 1-2:Ki n trúc Snapdragon S4 s d ng b vi x lý Krait 1.1.2.3 OMAP SoC OMAP (Open Media Application Platform) c a Texas Instruments d ng r ng rãi n ph n tho i c a Motorola u s OMAP OMAP có nhi u dòng s n ph m OMAP1, 2, ph m OMAP c dùng ph bi n hi n Hình 1-3: cs d ng n kh i SoC OMAP36xx c a Texas Instruments Do m o nhi u s n ph m v i tùy ch n nên SoC OMAP khơng tích h p b ph n Wifi, Bluetoothvà m t s thành ph n cho t ng dòng s n ph m có s ng l i c c a v m ch Sinh v CT1401 10 án t t nghi i Phòng Hình 2-11: T o thi t b o Android Virtual Device Manager Các thông s thi t b c thi t l p nh m tao n n t ng ph n c ng phù h p v i yêu c u phát tri n h th ng Thông tin c th tài li u [10] 2.2.5 K thu t x lý va ch m game X lý va ch ng game m t ph n không th thi i v i h th c bi iv lý va ch m t ngh thu t b thơng minh có kh i dùng r t cao Nh có c m bi n, nhân v t trò ph n ng l ng c nghiêng, l p, quay, u cho th tb ng r t thông minh X lý va ch cl t game engine.Các tình hu ng va ch m c a v t th c phân thành t ng , ng th ng, m t ph v t th , m i, nú c c th c, t p trình viên ch vi c g i s d ng g n v t th mu n x lý vào Sinh v CT1401 42 án t t nghi m i Phòng Ví d : Trong game engineAndEngine nhà phát tri ng Box2D t xây d ng m t v t th n 2.3 CÔNG C X c m i v t th u cx i c x lý LÝ ÂM THANH Các lo nh d ng âm s d tb lo nh d ng dùng thi t b cách bi t liên n âm thi t b ng Khi xây d thi t b ng Các nhà phát tri ng d ng m t s công c mã ngu n m n hình ph n m m Audacity Hình 2-12: Giao di Audacity Ph n m m cho phép biên t p âm tùy yêu c u c u ch Ph n m m MuseScore cho phép biên t p âm theo d ng b n nh c r d ng có th chuy n thành t p âm s d Sinh v CT1401 43 án t t nghi i Phòng Hình 2-13: Giao di 2.4 CƠNG C X d LÝ HÌNH NH Các cơng c biên t p hình nh r t quan tr ng trình xây d ng ng Tùy vào m p h c ch n iv cho ch Inkscape h ng t t Hình 2-14: Giao di Khi c n ghi hình ng, s d giúp t o ho t hình 3D ph n m i) Sinh v CT1401 c s d ng biên t p hình, nh InkSpcace GIMP,ngồi m t s 44 án t t nghi i Phòng Hình 2-15: Giao di Tiled ph n m ng cho nhân v Hình 2-16: Giao di ng th c s h u ích ng on a phông ch , FontStruct cho phép nhà phát tri n t o nh ng font m i cho ng d ng c a h Sinh v CT1401 45 án t t nghi i Phòng Hình 2-17: Giao di 2.5 CÔNG C PHÁT TRI N PH N M M Công c phát tri n ph n m m Android nói chung ph bi n: Eclipse, c n công c chu n Google phát b cơng c Eclipse c tích h p ADT (Android Development Tool) v i Android SDK Manager Google phát hành Hình 2-18: Giao di n Eclipse Sinh v CT1401 46 án t t nghi i Phòng Trong ph n khóa lu n mơ t m t s ng c 1: ct om td t b di t Google cung c p công c phát tri n ph n m m cho Android Các nhà phát tri n vào a ch l y v gi i nén có th c c 2: T o d án Hình 2-19: Ch Sinh v CT1401 t o d án 47 án t t nghi i Phòng Hình 2-20: Nh p thơng tin cho d án Hình 2-21: Thi t l p thêm thông s cho ng d ng Sinh v CT1401 48 án t t nghi i Phòng Hình 2-22: Ch n ch hi n th Hình 2-23: Hoàn thành t o d án Sinh v CT1401 49 án t t nghi i Phòng TRI N KHAI NG D NG khóa lu n minh h a m t ng d ng u hành Android 3.1 CHU N B TÀI NGUYÊN CHO 3.1.1 ng c b n máy bay h NG D NG y b i c nh có m t máy bay b o v b u tr i, n u có máy bay c a k thù bay vào vùng tr i máy bay s b n, n u trúng m c tiêu máy bay s b cháy (bi n m t) Các ch Phím cách tr u n g m: b ng 3.1.2 u n máy bay di chuy n b nh c n n su t q c b n có âm c n b n h a n có m t s hình Hình nh máy bay canh gi b u tr i Hình ch Hình n Hình nh b u tr i n ch Hình v n Hình nh máy bay canh gi b u tr i Sinh v CT1401 50 Hình 3-1: Hình nh máy bay b u tr i 3.1.3 Âm Âm m t ph n khơng th thi c nh báo tình hu ng, t o c Âm n n mô t ho ng c hu ng máy bay b n ng d ng có hai âm hai mơ t tinh 3.2 TH C NGHI M Hi xây d ph n m m Game Engine lu AndEngine xây d tb ng, hãng dùng Trong th c nghi m khóa Hình 3-2: Màn hình làm vi c c u Unity3D án t t nghi i Phòng Unity3D tích h p cơng c l p trình tên MonoDevelop cho phép l p trình viên l p trình b ng ngôn ng thu c h d vi n NET Mono(m , cho phép ch y Linux, MacOS X, Windows) Hình 3-3: Màn hình làm vi c c a MonoDevelop Mu n l p trình cho s ki componentcho s ki Studio Sinh v CT1401 o p trình viên l 52 án t t nghi i Phòng t s hình nh c Hình 3-4: Hình Hình 3-5: Máy bay b Sinh v CT1401 ch t n cơng n 53 án t t nghi i Phòng Hình 3-6: Hình nh v a r sang trái v a b n Sinh v CT1401 54 án t t nghi i Phòng K T LU N Khóa lu n t t nghi ây ch m i, m t nh c cơng ngh thơng tin Khóa lu n tài l p trình trò tb ng ng phát tri i nhi u thành qu c m t s k t qu T c ki n nguyên lý ho ng c a b ph n thi t b ng Trình bày k thu t áp d ng l p trình thi t b ng, t ki n nc am nh n công c h tr l Ph n cu nghi m v b n máy bay Sinh v CT1401 55 án t t nghi i Phòng TÀI LI U THAM KH O [1] http://www.neowin.net/news/guide-to-smartphone-hardware-17-processors [2] http://vnreview.vn [3] http://www.ibm.com/developerworks/vn/library/os-android-devel/ [4] http://en.wikipedia.org/wiki/Android_software_development#Android_SDK [5] http://obviam.net/index.php/table-of-contents/ [6] http://developer.android.com/reference/android/graphics/package-summary.html [7] Prateek Mehta, Learn OpenGL ES For Mobile Game and Graphics Development, Apress, 2013, 209p [8] Mike Smithwick, Mayank Verma, Pro OpenGL ES for Android,Apress, 2012, 309p [9] Rick Rogers, Learning Android Game Programming, Addison-Wesley, 2012, 476p [10] Mario Zechner, Robert Green, Beginning Android Games Development, Apress, 2011, 685p [11] Marko Gargenta, Learning Android, Oreilly Pub, 2011, 268 p Sinh v CT1401 56 ... 2-15: Giao di 45 Hình 2-16: Giao di on Hình 2-17: Giao di 45 46 Hình 2-18: Giao di n Eclipse .46 Hình 2-19: Ch t o d án 47 Hình 2-20: Nh p thơng tin cho d án ... u c g ng q trình h c t khơng th tránh kh i nh ng thi u sót nh nh, em r c a t t c th t c b thi án t t nghi c s góp ý quý báu án c a em ngày hồn Em xin chân thành c H i Phòng, ngày tháng 07 Sinh... v CT1401 án t t nghi i Phòng LÝ THUY T Gi i thi u L p trình m c quan tr ng ngành cơng ngh thơng tin, l p trình cho thi t b i m t s yêu c u riêng khác v i l p trình cho máy tính L p trình cho