Đăng ký Đăng nhập
Trang chủ Nghiên cứu engine đa nền tảng cocos2d-x và phát triển ứng dụng luyện thi toeic t...

Tài liệu Nghiên cứu engine đa nền tảng cocos2d-x và phát triển ứng dụng luyện thi toeic trên thiết bị smart phone.pdf

.PDF
84
783
118

Mô tả:

CHUDNG 1. GIOI THICU DV AN 1.1. VII net vi smartphone tai Viet Nam Cac chuyen gia cola Google cho rang smartphone da trey thanh mOt plan Icheong the thieu trong cuOc song vi hien tai ding dam ra mOt "cuOc cach mpg smartphone". Theo khao sat cola Google, so ngubi dimg smartphone di chiem den 20% din s6 COB Viet Nam 6 thbi diem Ichio sat, tic quf I nam 2013. Nghien dm cola Google cho they 70% s6 ngubi duqc hOi tra lbi h9 si dung smartphone de truy cop Internet, 50% se kung bao gib reri khOi nhi mi khong ceo smartphone trong tay. Dieu thy cho thay neu cac doanh nghiep hitt cic sir dung smartphone thich mOt phan cot lOi trong chi& Itrqc cis minh thi sa ket n6i vi tiep cAn duqc vii ngubi tieu ding mei. Simon Kahn, Tting giam d6c Marketing Google chau A Thii Binh Ducmg (Chief Marketing Officer, Asia Pacific) cho bi& smartphone di thay d6i hanh vi ngubi tieu dung. Theo khao sat cis Google, ceo den 92% ngubi dimg smartphone ce the lim nhieu viec cling lice Tai Dien din nap thi Truyen thong CMO Viet Nam nam 2013, doanh nhan cong nghe Bryan Pelz di khimg djnh, sox djch chuyen cia deri sting xi hOi vio Internet vi Mobile II tat yen. Nam 2014, ngubi Viet Nam bit du e6 nhing buoy tien hon trong cong nghe khi tS, , le din se sir dung smartphone toi Viet Nam di lesirdungmatpho &gIce.TS tang len Iron 36%, gin gap dei so yea 20% cilia nam 2013, trong de gi6i tre to 16-24 tu6i chiem hon phan nth (58%), nhOm tu6i trung nien 35-44 tang 14% so v6i nam ngoitili 17%. Trong khi tSr le ding may tinh bin (desktop PC) chi tang gin 5%, (fat 44% din so. Una theo bing khao sat, Viet Nam dimg thit 2 tong khu Arc Thing Nam A ve t6c dO dip con tilling cong nghe mOi theo thj truing, chi sau Philippines. Trong do, 59% ngubi Viet Nam chi ra ring cong nghe mOi mang den nhieu co hOi cho h9 hon rui ro. Nhing con so tang throng lac quan nay den to nhieu yeu t6, trong d6 chi yeu li thai dO lac quan, thich nghi nhanh vii cong nghe mai vi dO phi rung cola smartphone. Ben earth de gia thrInh smartphone new cang re. Phan khuc smartphone binh din hien rat da clang, gii 2-3 trieu &gig, um cc hOi cho m9i ngubi, bao gem h9c sinh sinh vier, ser hitu mOt chiec dien thotti thong minh. tang mang t4i Viet Nam cG dO phi rOng [dip ngubi ding len inimg de ding. a Dien Din Hiep HOi Mobile Marketing toi Viet Nam 2014 ngiy 30 thing 10 nam 2014 di dua ra nhUng con s6 thong k8 An urgng vi smartphone tai Viet Nam. Trong do: Viet Nam li thi truing smartphone c6 tec go phat thin I6n thir 2 Chau A vi deng thbi ding la thj truing cry mirc dO ph6 bien smartphone I6n thin 2 6 khu we Bong Nam A; 3 Hinh 1.1: Mc do phat trien thi Irwin smartphone tai Viet Nam Vietnam is the second most populated smartphone market in SA 34.3 tam a 0 alb .sae' n e. Afikvst.. Hinh 1.2: 7:9 le sti dung smartphone plan theo khu virc thanh thi vet ?Ong then tai Viet Nam 48.6% smartphone dimg hg dieu hi nh Android vi 19.7% dung hg dieu hanh IOS. 4 Hinh 1.3: Ty 1e smartphone phiin he cli& hanh tai Viet Nam O mOi lira tu6i, tS/ I sir dung smartphone co str khac biet Ian. Trong do cao nhAt la nh6m tu6i tir 15 den 29 tu6i. Co 56,5% ngtrai trong dO Mei 20 — 24 tu6i dang so hftu smartphone. Ty 'e se hut Smartphone trong moi Kra to Viet Nam tad 60.0 50.0 40.0 30.0 20.0 10.0 6.9 0.0 15-19 20-24 25-29 30-34 35-39 40-44 45-49 50-54 Hinh 1.4: TS, le so hail Smartphone o mai hia tudi tai Viet Nam Dan vi: Qua nhcmg con s6 va th6ng ke tren day, co the thAy thi traang smartphone tai Viet Nam dang co stir tang truemg an Ming. Nh(tng ngutri tre tu6i chiem cao nhat trong s6 5 nhOng ngtrai se hau smartphone. Day cOng la Whom dal ttrqng c6 nhu c.Au 16n nhat lie hqc t#p va tich lily Icien that phoc vo cho cong viec, cho cic nhu au a nhan. Doa tren nhttng ca se d6, hoan toan c,6 tient &Mg de phit then de ling dung hqc top tren smartphone. 1.2. Tim quan trong cost TOEIC Trong nOi dung Inc tieng Anh ce the tom chia lim hai loci• Anh ngft hqc thu$t (dung de xin hoc bang, du hqc...) va Anh net giao tikp (sir dung thtrimg ngay, phoc vo cho nhu au tong viec...). NM ming hqc thutt la din truing cim hai loci chimg chi TOEFL (colt Vien Kiem djnh giio doc Hoa Kjr) va IELTS (cart DH Cambridge — Anh), thi ming giao tiep chimg chi TOEIC dang dOc chiem so cOng thin cim tin throng sir (long lao dung the gi6i. TOEIC (cOng cart Vien Kiem djnh giio doc Hoa K5' cep) kh8ng yeu ciu qui cao lie cic kien thin, ma chi can ngutri hqc dat duce muc dick sir dung tiling Anh. TOEIC da tra thanh *it trong nhttng chuong trinh kiem tra Anh net quick to duqc nhieu nguai biet din. Han 70 tong cOng ty, c8ng ty, cic to chirc trong nuOc va nuOc ngoiti hoot &Ong t in Viet Nam di sir clung TOEIC nhu mOt lieu chart bat buOc trong cOng tic lieu chain hea vi tuyen dung cin 1)0 nhu: Samsung, LG, FPT, Nein hang Sii Gen Thuong tin, Vietnam Airlines... Rieng trong linh voc cloy nghe, TOEIC Viet Nam phai hqp vai Ttmg coc Dor nghe )(ay dtmg thi diem lieu chain ye trinh dO sfr dung tieng Anh cho sinh vien nit nghiep hai nginh tin hoc va then dr 6 twang cao ding Icy thurit. Ngorli ra, mOt do an turn to gifts TOEIC Viet Nam phei hqp voi BO GD-DT vi Tang clic Du ljch nhim dinh gii vi xly thing tieu chuin trinh dO sir dung tieng Anh thong qua chuong trinh chuttn TOEIC cling ducat trien khai. Diem TOEIC duqc tit ca cic ca quan nhi nuac, t6 chin queic te, doanh nghiep nuOc ngoai va cic Sp doin kinh to curt Viet Nam Gang nh#n nhim &nit gii trinh do ding Anh cim than so vai to cich la mOt thtrac do chain va ding tin coy nhat. 1.3. GM thiln ling dung luyin thi TOEIC train smartphone 1.3.1. Gidi Mien an dyng "Luyen thi TOEIC tren smartphone" II ling dung luyen thi ding Anh tren dies thooi c6 bao g6m day dit cic bai on tip vi de thi min theo ciu trac mOt de thi TOEIC tieu chat Ong cluing duqc thiet Ice veri lieu chi nho gcm, sir dung. a Ng clung duqc 18p trinh bang engine Cocos2d-X, li 1 engine ha trq lip trinh Game da nen tang: Mobile (I05, ANDROID, Blackberry, TIZEN, WP) Window, MacOS, HTML5... la 1 engine duqc dinh gii khi moth, da phit triers nhieu Game nam TOP cart 6 Appstore, CHPlay. Uu diem chi tiet ciut Cocos2d-X duqc trinh bay tai chuung 2 tea Ithea 14n. Cocos2d-X la m0 engine mien phi, von Cocos2d-X tic gia c6 the )(ay dyng mOt img dyng luyen thi TOEIC WA uu diem vuqt trOi: —Dung lucmg thip (thip nhit c6 the la 1.5MB), khong drai hOi phien ban phin mem di dOng qua cao. Dieu nay se giep ngubi sir dyng c6 the cii at ung dyng ma thong can qua lo ling ve hi) nhe hay du hinh cea dien thoai. —Ong dung chay da nen tang, vier code mOt lin, chay duqc cho nhieu h'e thin khic nhau. NM de, tac gia till kiem &gm thin gian, chi phi va tang hien qua sir dyng vi twang thich von nhieu he dieu hanh khic nhau, c6 the chay tren nhieu ding smartphone. Tir d6, tac gia mong muOn se dui ra sin phim luyen thi TOEIC tat nhit tren smartphone v6i chi phi va nguOn lyc thip nhit. L3.2. Lai tech cda sing dyng luyen thi TOEIC trim smartphone Huang dao to thyc dyng nhu TOEIC c6 thin gian tnmg birth de c6 the thi lay chimg chi la khoitng 18 twin cho den 2 nilm, phi thuOc vac fling lyc ngubi lye, mac diem muc tieu vi 300400 diem di duqc xem la "pass — dat" cho den 990 diem. Ong dung luyen thi TOEIC tren smartphone se la Ong cu hem fch cho ngubi hoc vi nheng uu diem sau day: —De se' dung, tiet kiem then gian va chi phi Vi qua tranh luyen thi duqc thyc hien qua dien thoai, nen tiet kiem duqc nhUng khans; thin gian ma ngubi hqc phii lieu ten khi di chuyen den trung Ulm va di vi. Nhiiu ngubi can mat nhieu thin gian hcm de di den cac trtmg tam nim 6 xa. Nguiri sir dung c6 the chit dOng sip xep hoc tranh the thing khoang thei gian ninh n6i trong ngiy de hqc t$p. Ong dung duqc cii chit tren dien thoai, lien dung va kherng did Uri qua nhieu ve mot khong gian vi thin gian deti von ngubi sir dyng. —Tinh ling dung va linh hot Luyen thi TOEIC chi bao gem do ky Wing nghe hien vi dqc hieu, rat phi hqp tan khai tren smartphone. Thyc to ngubi hoe thubng copy cite bai nghe Tieng Anh vac dien thoai de c6 the sir dung 6 mqi ncri, thong phi thuOc vito may tinh hay internet, sach v6... Vin (mg dyng luyen thi TOEIC, ngubi hqc holm town cit the chi can sir dung chiic dien thogi nhu mOt giao tranh he top hien qua. 7 Ngoii ra, tinh img dung vi linh host con the hien 6 mi diem khi nguiri dung co the Wen thi ma khong can mang quit nhieu Si lieu theo nguei. CM vii chiec dien thoai nhe gqn, ngtrei sir dung co the bit dill bid hgc 6 mgi dja diem vi thin gian, khong bj phu thuOc theo met then khoa bieu cg the. Tinh linh hog con the hien 6 fir djnh hues% vi fir dieu chinh. — Txr djnh hueng vi dieu chinh Trong qui trinh luyen tip, nimbi dung co the fir djnh huUng cho minh, Ming cich chgn khea bee ph4 hqp nhit d6i viii trinh dO, so thich, mix tieu cua bin than, dieu ray khic phuc dugc cic han the khi luyen thi 6 the lap hgc vi thing tam khi trinh dO hgc vien khong ding deu. Nprei hgc cOng chi dOng fir dieu chinh nhjp dieu khea hgc cho minh, ngbia li co the hgc chin hay nhanh do thin gian minh ty sip xep hay do khi thing tiep thu Iden thirc ala mirth. 8 CHUCING 2. COCOS2D-X ENGINE 2.1. Gild thilu ve Cocos2d-X 2.1.1. Sir ra 141 cda Cocos2d-X vd lick sir ph& trim Thing 2 nlim 2008, tai thj tan "Los Cocos" gin Cordoba ar Argentina, Ricardo Quesada, met nha phit trien trO chai da tao ra met ding cu tr6 chai 2D cong vei nhom coa mInh. Ho at ten cho no la "Los Cocos". MOt thing sau, thorn phit hanh phien ban 0.1 va dOi ten thanh "Cocos2d". Thing 11 Sim 2010, mot nhOm nha phit trien tfr Trung ()MSc la Walzer Wang, Minggo Zhang, James Chen va cOng su tfr ChuKong Technologies da phit trien Cocos2dX din teen Cocos2d. ChuKong Technologies la tong ty hang diu ve nen tang, giai tri di dOng, vOi dei ngii hon 800 nhan vien, ngculi tru sir chinh tai Bic Kinh, Chu Kong cling c6 van pheng tai Menlo Park (USA), Tokyo (Japan), Seoul (Korea), va Taipei (Taiwan). Cocos2d-X la mot cong cu ma nguen m6 theo gay pile') MIT. MIT la loci gay ph6p sir dung cho ctic phtm mem, cic ma ngu6n mer dirqc phit trien dtra ten'met loci gitty phop co ngtilin &tic tai Vien Ding nghe Massachusetts (Mn'). Minh 2.1: Mo hinh phdt trier Cocos2d X - 9 Cocos2d-X xuit xir to g6c li Cocos2d, engine game 2D viet tren Python, tuy nhien da duqc vOn chuyen sang rat nhilu neon nip khk, thu het nhieu ngtrai sir dung tren the gi6i, nhieu nhit li ban Cocos2d-X danh cho iOS. Cocos2d-X 11 ban port duqc vier bing C-FE, thay vi Objective-C nhu bin g6c, nut de ma nguei lop trinh c6 the xay dung game tren nhieu he may chi bling 1 lin code, cic he may bao gam Windows, Linux, Mac, iOS va Android. Cocos2d-X di chiem duqc su ling hO 16n trong giai game developer to khi phat hanh. Cocos2d-X c6 the ducrc sir dung di xay dung the Ire chai, ling dung vi c.ac chuang trinh tuang tic dtra tren nen tang giao dies khic nhau. Cocos2d-X la engine duqc se dung rung rai tren town the gi6i, v6i hart 400.000 nhi phit trien, bao gam cit cac nhit phat tan ctia the tr6 chai ding Top 10 ten the store 16n Whit the giai nhu AppStore, GooglePlay Store. Ngay nay, nhieu nguai Cocos2d-X trong cac tr6 chcri thong tri bang xep hang Top doanh thu eta AppStore vi Google Play, &lc biet la 6 Trung Quec, Han Quec vi Nhot Bin. Ck Icy su to Chukong, Google, Microsoft, ARM, Intel vi BlackBerry dang tich cue them gia xay dung along ding Cocos2d-X Nhitng ten Si 16n nhu Zynga, Wooga, Glu, IGG, Big Fish Games, Fingersoft, Gamevil, GREE, DeNA, Konami, CT E & M, MIN, LINE, Square Enix,... a sir dung Cocos2d-X de phat trien tr6 chai cult hq. Tom tit Lich sty ph& thin cim Cocos2d-X: —Nam 2010: Thing 7 nam 2010, du an Cocos2d-X duqc din ra vi den thing 11 duqc phit birth phien ban 0.7.0. —Nam 2011: + Thing 1 nam 2011, Cocos2d-X phien bin chinh thirc du tien duqc ph& hanh. + Thing 2 nam 2011, tro chai FishingJoy duqc ported tren Android. + Thing 10 nam 2011, thiet lop plan mem Coco, du to bOi Chukong. + Thing 11 nam 2011, chiem vi tri thin 1 va thir 2 tr6 chai Appstore. —Nam 2012: + Thing 3 nam 2012, ra mit Cocos2d-html5 + Thing 5 nam 2012, phat hanh v2.0 Cocos2d-X + Than 6 nam 2012, Ichai dung Cocos Studio + Than 9 nam 2012, Cocos2d-X chiem 6 trong se 10 tr6 chai hang dAu co doanh thu cao nhAt a Trung Quec 10 —Nim 2013: + Thing 1 nim 2013, Cocos2d-X chiem 7 trong s610 tr6 chai hang dau c6 doanh thu cao !that Trung Quec, 5 vi tri himg diu cho ci iPhone vi Wad. + Thin 3 ram 2013, sich Cocos2d-X duct mat bin. + Thing 4 nim 2013, game c6 doanh thu cao nhat tai Him Queic Google Play Store phit trier tir Cocos2d-X. + Thing 10 nim 2013, tic gii cua Cocos2d-iphone gia nhop Chukong. + Thing 11 nim 2013, Cocos2d-X chiem 9 tren 10 vi tri hang diu trip chai ce doanh thu cao nit& tai Hin Qua& Google Play Store. —Nim 2014: + Thing 3 nam 2014, Cocos2d-X chi& 4 trong 11 vi tri hang du. trong de trip chai c6 doanh thu cao nhit WeChat 2.1.2. Tgi sao igi ding Cocos2d-X 2.1.2.1. Liu diim cua Cocos2d-X —Cocos2d-X la mOt engine da nen tang Day li mOt lqi the rat len cos Cocos2d-X khi mi game lim ra az.) the chay tren cic nen Ling !chic nhau nhu Linux, Mac, Windows 8, Android, iOS, Windows Phone 8, BlackBerry hay ci HTML5. biet, t$p trung vio ba nen tang di dOng ph6 bien da to nen sat hap din cua engine nay khi ma thi phin tic thiet bi di dOng dan dang chiem linh may tinh ci nhan. Hien tai, Cocos2d-X ha trq tic nhi phit trien game tren tic nem nga nhu C++, Javascript vi Lua tren tic Ong cu 1#p trinh ph6 Bien vi dy nhu Xcode, Visual Studio, ho#c Eclipse. Deng thbi no cho phip tic nhi phit tan game tren tic he dieu hanh khic nhau vi chuyin sang tic nen tang khic khOng may kW. khan. Chinh viec h6 trq the nen ting cho PC phuc At qui trinh xiy citing game, vsl khi Wing build cho 3 nen ling di dOng ph6 bien 'that dA to nen sot hip din c6a Cocos2d-X. —Chi tiet cic nen tin h6 trq: + iOS 5.0 trh len cho tic trip chai iPhone / iPad + Android 2.3 tra len cho tic fro chai Android + Windows Phone 8 fro len cho tic fro chili WP + OS X v10.6 tra len cho tic trip chili Mac 11 + Windows 7 tro len cho cac tr6 chai may tinh Windows —La met enine ma nguan ma Cocos2d-X hoan toan open source, ngutri sfr ding co the lam bit IcY dieu gi yeti code tha no, vi cling co the deng gop vao framework neu de giup Cocos2d-X phat trien hem. Cocos2d-X dugc xay dung hoan town bai cong deng phat then game, hoan Wan mien phi, luen luon duce chinh sfra, phat trien, tom be ma nguan caa Cocos2d-X c6 the tai tren trang chu cita Cocos2d-X. —Cocos2d-X la met engine c6 hieu suit cao Vai nen tang chit yeu huang den cac thiet bj di deng, day la yeu t6 hang dan ma met Engine di deng can phai dam boo, vi thiet bj di dOng co rat nhieu can hinh khac nhau. Duce xay dung tren nen tang d6 hoa OpenGL va ngon ngft lap trinh Javascript, Lua, nen Cocos2d-X co hieu suit kha cao, chay dirge tren ca nhCmg thiet bj ciu hinh rat thap cua Android. Dac biet dung lugng khi xuit file cai dot cho cac nen tang kha gen nhg so veri mat bang chung cua cac Engine khk. Tren the nen tang di deng, Cocos2d-X td r3 lqi the cult minh von de ttrcmg thich cao cho: Android, iOs, Windows Phone 8. Val cac nen tang nay, hoa don trung birth, chay tren ciu hinh di dOng tam game, ling dung yeti khoi hrgng trung hien nay, c6 the dot dirge 60FPS — met con se kha cao ma nhieu engine khic kh6 c6 the dot &we. a —Da dirge kiem thing ben cOng dong Tinh den thtri diem hien tai, co hang tram nghln game da dirge phat trien doa tren nen tang Cocos2d-X trong de c6 nhung game n6i bat nhu Diamond Dash, Fishing Joy. 25% game 2D tren store ctia AppStore va Google Play Store sir dung Cocos2d-X... Hien tai, Viet Nam, kha nhieu thong ty cling dang sir dung engine nay trong do c6 nhieu ding ty nhu GSN, Egame, Afoli... —Nhieu cong co h6 trq + Engine vat ly: hai Engine thuong sir ding trong Cocos2d-X de me pheng cac quy the vat ly trong game la Chipmunk va Box2D. Khi nhac den Box2D chung to Idiong the nito kh8ng nhic den Angry Brids, Box2D cling deng thei cung cap cac ham vat IY lien quan den gia t6c, t6c dO, trcong loc coa tn& d6i tugng de ngtrei chai c6 cam giac giOng vii thus to nhit co the. Con Chipmunk mac dit mei dirge phat trien Al day nhung ve tinh 'tang cling khong thua kern gi so voi Box2D. 12 + Texture Packer: c8ng co gifip gom nhieu Anti thanh min anti gOp phan lam tAng hieu nang cho game vi thief 131 khong an xir 19 nhieu anh. + Sprite Helper: to cac animation (chuyen dOng) cho Sprite, tit dOng sinh code cluing to chi can lam viec tren giao dien troc quan. + Titled Map Editor: Too ban do (man chap cho game. 2.1.2.2. So sanh Cocos2d X yeti cac engine khcic - CO nhieu engineer lap trinh game di (long thong dung nhu Cocos2d-X, Libgdx, Unity 3D, Andengine... Ta co bang so sanh dac diem dm cac engine nhu sau: STT Tlnh nang Unity 3D Libgda Cocos2d-X Andengine 1 Mien phi, ma ngulin met x x Full version phai tra phi x 2 Dung luqng game 1.5MB Khong co thong tin 8MB Khong co thong tin 3 HO trq 2D va 3D nhung chit yeu la 2D 2D, 3D 2D va 3D nhung chi yeu la 3D 2D Da nen tang x x x Android Nem ngO. C ++, Lua, Javascript, Java C #, Javascript va Boo Khong co thong tin Day dit nhung Rat day du v6i Javadoc Day del, co video huang (fan, co litI trq Kh8ng co tai lieu co the x x TM Rat tat chin TM lieu h6 trt7 khong co h6 trq Tich hop ding co dO hoa 4 COng ding danh gid Tlit Bang 2.1: So sanh gifra Cocos2d X vet cac engine khcic - 13 TM Dpa tren bang so sanh cho thay, Cocos2d-X kh8ng phai la cong cu duy [that va tot nhat, tuy nhien day la cong cp phi) hqp nhat veri dp an dm tac gia a thOri diem hien tai. Cocos2d-X c6 lqi the ve chi phi, neon nga lip trinh, dung luqng xuat file thap va tang th&i ho trq da nen tang. Mac do khong c6 ho trq tir phia nha cung cap nhung nhiing thong tin ve Cocos2d-X duqc cong clang chia se kha day dir, c6 nhieu tai lieu tieng Anh de tham khao. Vi vay tac gia quyet dinh kra chqn Cocos2d-X la engine de thpc hien dp an. 2.2. Kiel' frac tang quan vi m8i trterng lim vi4c 2.2.1. Ca cJu ti char this- mite Date modified Type cocos2dx 11/211/201.3 1011 ... File folder CocosDenshion 11/28/2013 10:11 -. File folder Name I jc document 11/28/2013 1011 ... File folder k &tensions 11/28/2013 1012 ... File folder k eternal 11/28/20131012 ... File folder la licenses 11/28/20131012 ... File folder ji 11/28/20131012 ... File folder Plu9in ja samples 11/28/20131012 ... File folder saiPtift9 11/28/20131012 ... File folder 5 template 11/28/2013 1012 ... File folder Size 11/28/20131012 ... File folder •Riciftre 9/26/7913 913 AM Text Document 3 KB .gitmodules 9/26/2013 913 AM Ted Document 1KB LJ •travis.yr1 9/23/2013 1918 AM 'ML File AUTHORS 9/23/2013 1918 AM File build-nadsh 9/23/20131018 AM SH File 5 tools LJ 210 17 KB 1KB build-win32.bat 9/23/2013 1018 AM Windows Batch File CHANGELOG 9/26/201310:41 AM File 73 KB cocos2d•win32.vc2010.sln 9/26/20131041 AM Microsoft Visual S... 13 KB cocos2d-win32.vc2012.sln 9/26/201310:41 AM Microsoft Visual S... 13 KB cocos2d-wind.vc2012.sln 9/26/2013 913 AM Microsoft Visual S... 18 KB cocos2d-wp8.vc2012-sln 9/26/2013 9.13 AM Microsoft Visual S... 16 KB Hinh 2.2: NO1 dung tep tin IDE sau khi gidi nen 14 3 KB Nai chira toan be dc ther vien chinh ma Cocos2d-X cung Cocos2d-X cap Cocos6reeshiorC:c: tep tin da phuomg Hen nh Chose this Wen, am thanh va ill Cung cep cac this vien Oat trign ve GUI, cac this vien kgt Extensions naafi mang then 2 kigu chinh la HttpRequest va socket. Cho dc thv vi A (a5 2 thirvien Vat l chtnh -X la Box2d va Chipmunk), cac this sus dung trona vien ha trot 3D Chita cac dv an miu. Sample Bang 2.2: Co clu to chirc this myc trong Cocos2d-X 2.2.2. Kiln tree Cocos2d-X engine \pplicoion S, Platform Laker 1r. Platform Lacer III IIIII Hinh 2.3: Kiln frac Cocos2d-X Cocos2d-X dirge chia thanh 3 tang chInh: Ting ting dung, tang this vien va tang he dieu hAnh. a. TAng img dung: la tang china cac (mg dung dirqc phat trien bed IAp trinh vien, cac nhi phit trien phAn mem. Ngoli met s6 (mg dung duqc Android tich hqp sin nhu email, 15 SMS, trinh duyet web, danh be... thi ngutri dimg ci the dung tit Google Play hay cac chq (mg dung khk. a ding cli dat them cac 1mg b. Tang thu vien: Day la not chin cac 1)0 cac thu vien xay dung nen cac chile nAng chinh cia Cocos2d-X. Trong tang nay duqc chia thanh 4 nh6m chinh: —Graphics: chin thu vin do hoa. M6i mat khung hinh, Cocos2d-X se ve lai anh len man hinh bang OpenGL (d6i v6i windows) hok OpenGLSurface — phien ban thu nh6 cua OpenGL giip giam mirc dO tieu hao ning Itrong va tang hieu nang cho thiat bi smartphone (tren thiet 1)1 smartphone). — Audio: Thu vien ma rang ding de thuc thi cac rep tin am thanh c6 djnh clang *.mp3 — Physic: chin thu vien vat ly. Cocos2d-X sir dung 2 thu vien vat ly chinh la box2D(dtrot phat trim ben Erin Catto — Tien si Toan hoc IY thuyet vi img dung — Dai hoc Cornell New York) va Chipmunk (duqc phat trim beri Scott Lembcke). — Scripting: Thu vien ding de bien djch cac tap tin javascript c. Tang ha dieu hinh: la tang ducx viet rieng cho mai h0 dieu hanh nhu iOS, Android, WindowPhone 8... 2.2.3. Midi truing lam vile i=br> WinS2 Application '.exe Visual Studlo 2012 Window E ega ci> Android*.apk Applicaiton lOS Applicaiton '.ipa tac Hinh 2.4: Moi twang lam viec 16 2.2.3.1. Ngon ngu lap trinh Tuy nhien de chay dugc tren Ng& nga lap trinh chinh thirc cua Cocos2d-X la cac he dieu hanh khac nhau, lap trinh vien phai bien dich Lai ma ngut‘in ting yeti nen tang ttrcmg img. Cu the nhu sau: — De img dung c6 the chay dirge tren he dieu hinh Android, sau khi xay dung ma ngu6n lap trinh vien sir dung trinh bien dich G++ phien ban dac biet do Google phat trien dinh cho Android NDK (Android NDK la ding cu cho phdp Iap trinh vien phat trien mOt phan img dung cda minh th8ng qua native code) de bien dich chay rieng cho nen tang Android. Do G++ bien dich ten mid twang nao se xay dung tap tin tucmg *fig cho nen tang dO, vay nen de xay dirng tep tin *.APK cho cac may chay Android lap trinh vien phai sir dung mid truerng Cywin gia lap Linux tren Window. — Doi vai cac thiet bi chay tren he dieu hanh LOS, sau !chi xay dung ma ngu6n, lap trinh vien sir dung mai trutmg phat trien Xcode tren MacOX bien dich sinh ra tap tin *.IPA cho may chay he dieu hanh IOS. 2.2.3.2. Java Native Interface a. Dinh nghia: JNI (Java Native Interface) la mOt framework cho phip ggi cac Mm Java trong Java Virtural Machine (JVM) tir cac nem ngt1cAp thap nhu C, C++ hay assembly. Do Cocos2d-X sir dung C++, nen de ggi cac ham native dm Java (cu the la Android) to can phai gqi thong qua JNI. b. Cach thirc host &Ong: — Trong JNI, cac ham a tang native dugc djnh nghia trong tep tin *.c hoac*.cpp rieng brat. Dac biet, did tied nen ngt/ C++ thi JNI cung cap mOt giao dien Wang diM don gian. Khi may ao Java (NM) ggi ham, JNI se girl mOt con to JNIEnv va mOt d6i tugng jobject, va bAt ki doi so nio nhung phai theo chuAn cita Java. Vi du: JNIEXPORT void JNICALL Java ClassName MethodName (JNIEnv *env, jobject obj) /*Implement Native Method Here*/ + Trong da ClassName vi MethodName la ten lap va ten phuong tittle ttrcmg img dugc khai bac) a ten tin *.c ho4c *.cpp. 17 + Con tr6 *env li met con tr6 struct JNIEnv c6 china cac giao dien tai may ao Java (JVM). N6 bao gem cac chirc nang can thiet de tucmg tic vai JVM vi lim viec veri the dei hrgng trong Java. Vi du nhu the ham truyen gia tri kieu mang trong Native sang gia trj kieu ming trong Java hoic truyen gia trj kieu chuoi, del Wang cling nhu thong bao the ngoai le (exceptions). ye ca bin Java co the thuc hien mei ma ngutm tin tang Native thong qua viec sir dung JNEnv. + Doi se obj la met tham chieu den cac dei tueng trong Java ma da duce khai bio trong tang Native. + Vi du truyen met gii trj kieu chulii (string) tir Java sang tang Native (C++) //C++ code extern "C" JNIEXPORT void JNICALL Java ClassName MethodName (JNIEnv *env, jobject obj, jstring javaString) //Get the native string from javaString const char *nativeString = env -> GetStringUTFChars(javaString, 0); //Do something with the nativeString //DON'T FORGET THIS LINE!!! env->ReleaseStringUTFChars(javaString, nativeString); — De bien dich ma nguen da viet bang C++ sang Java sinh ra file *.APK dung cho thief bj chay hg lieu hinh Android, lap trinh vien can viet lui duang dan tai cac tep tin ma ngutm (*.h) trong tep tin "Android.mk". Sau do sir dung trinh bien djch V* ten mei twang Linux de bien dich lai town be ma nguen co trong tep ten "Android.mk". 18 c. Anh xa kieu du Ru glita Java va Native unsign cher signed char signed 8 bits short"`, unsign qnsigned 16 bits jshort short signed 16 bits S signed 32 bits long long int64 jlong signed 64 bits J float double void jfloat jdouble 32 bits 64 bits F D Bang 2.3 . Bang anh xa kieu diet lieu eta Java va Native code Ngoii ra, signature "L fully-qualified-class ;" c6 nghia cac 16p xac dinh duy nhAt bai ten dm 16p do. Vi di: "Ljava/lang/String;" tham chieu trti lop java.lang.String. amg nhukY to "[" duqc ding de xac dinh cho kieu ming. Luu Anh xa kieu du lieu String vi ming trong Java sang kieu der lieu String vi ming trong Native code li khac nhau. Neu nhu khong kiem soat tot, chuong With se bi 16i nghiem thing (CRASH). 2.2.4. Mit si lap dii tuvng thitang duvc mi. dung 2.2.4.1. CCDirector —Dinh nghia: la Singerton quin ly Scene, viec chuyen d6i giaa cac scene thong qua viec pop hoic push. Ngoii ra CCDirector can chiu trach nhiem khoi tao OpenGL ES. —Cac phucmg thirc chinh: + CCSize getWinSize(): 19 Tra ve kich that man hinh that id + CCSize getVisibleSize(): Tra ve kich that hiln thj thgc d tren thilt bj + CCPoint getVisibleOriginO: Tra ve tpa dO diem gac tpa dp hien thi tren man hinh that bt. + void popSceneO: Lay ra Scene mai cling trong stack + void pushScene(CCScene *scene): flea mot Scene vao stack + void replaceScene(CCScene *scene): Thay Scene hien tat bang mot Scene Vick Dtra vao 3 phuong [hire tren: to c6 the giii quyet duqc bai town da man hinh tren ck thiet bj smartphone. 20 2.2.4.2. CCNode CCAtlasNode CCTIeMspAtIss COlentaltenAtinFont Coietwitemlabel CalentstwiFent CCMenultem CO4enultemSpnle cosenunemirnage CCTNaitianFaMBL Ca4o1ion4reak CCMonultemiogglo Catanitionfado CaransitionFadellown catansmonFod•lt CCParalazNode CCPorticloSystern CCTransitionJurnpZeam CCParticle9/st•nillusd I Celtan bonFadeup CaransitionMovelne CCProgressTimm CCTransitionMovalnL CCRenderTexture I CCTransitionPageum CCTransitionMovelnT CarrantationRadisICCW CCIrsnsitionRadmICV/ CCRibbon CatansibonRotoZoom CC5con• CClionsitionScene CCSprite CCLaboITTF CCSprit•atchNode CCUthelBMFant CCTransibonShrinkGrow CCM/ailedMap CCTMXisyer Canons:bonShda Hinh 2.5: Ccic del tuvng duvc ket thica tic CCNode —Dinh nghia: CCNode la mOt d6i tucmg c6 cac yeu to chink. Bet ke mot d6i ttnyng nao dirqc kheri tao deu c6 kieu di lieu la CCNode. CCNode Muting la: CCScene, CCLayer, CCMenu, CCSprite, CCLabel... —Cac phucmg that chinh: + static CCNode * create(void); nghia: Kheri tgo mot dal tuvng CCNode + virtual void addChild(CCNode* child); Y nghia: them mot del tuvng CCNode Mute vim trong doi tuimg CCNode nay. + virtual void removeChild(CCNode* child); Y nghia: xon mat dal &Ting CCNode ni m trong CCNode nay. + virtual void onEnter(); 21 nghia: Ham nil)", en; kien khi no &cc addChild + virtual void onExit(); nghia: Ham nib', sit kien khi no hi removeChild + virtual CCNode * getChildByTag(int tag); nghia: Trci ve mat CCNode có tag bcing vol tham so truyEn vao. + virtual CCArray* getChildren(); nghia: Tra ve wan bo CCNode cluvc addChild tren CCNode nay. + void schedule(SEL_SCHEDULE selector, float interval, unsigned int repeat, float delay); t nghra: Tao ra mot lich o Tham selector: him xir ly lich o Interval: thai gian 1Rp lai lich o Repeat: s6 lan lop lich. Sir dung kCCRepeatForever neu mulm lich chay mAi mai o Delay: thbi gian tee + void unschedule(SEL_SCHEDULE selector); nglita: Hay lich 2.2.4.3. CCScene trong chu trinh img dung. MOt — Dinh nghia: La mOt doi tirang hoat dOng dOc ang dung c6 the c6 ?At nhieu Scene nhung trong mOt thei diem nhit djnh chi c6 mOt Scene dugc hoat dOng. MRc du la d6i tugng dirge ke thira tir CCNode thy nhien CCScene la mOt doi twang dRc biet. CCScene chi nap cheing lai duy nhAt phuang thac create() ngoli ra kh8ng nap ching lai bit ke phucmg thirc nao. 2.2.4.4. CCSprite — Dinh nglaa: CCSprite trong Cocos2d-X cling gitmg nhu Sprite trong cac engine khac. NO la mOt hinh anh 2D co the xoay, di chuyen, thay dOi kich thu6c, tao cac animation vi thuc hien cac phep Bien deti khac. Do CCSprite dirge ke thira tir CCNode nen n6 dirqc thira huang toan b0 tinh chit ma CCNode cho phip nhu addChild, removeChild, scheduler... — Cac phucmg that chinh static CCSprite* create(); 22
- Xem thêm -

Tài liệu liên quan