513 Views
May 10, 17
スライド概要
講演者:片田 厚志(株式会社スクウェア・エニックス)
こんな人におすすめ
・コンソールゲーム開発現場でのUI開発事例に興味がある方
受講者が得られる知見
・UnityやUI開発でハマりやすい問題点と解決方法
リアルタイム3Dコンテンツを制作・運用するための世界的にリードするプラットフォームである「Unity」の日本国内における販売、サポート、コミュニティ活動、研究開発、教育支援を行っています。ゲーム開発者からアーティスト、建築家、自動車デザイナー、映画製作者など、さまざまなクリエイターがUnityを使い想像力を発揮しています。
պأ؎ؚٖ زحٖؕ٦أ ؖ؟չ UI涪✲⢽ֶֽח
荈䊹稱➜ • • • • 晙歊 ⾨䘊 吳䒭⠓爡ؙؑؐأ،٥ؒأؙحص وؚٓٗف չؿ؋؎ؿٕش؋ٝآة٦XIV: 倜欰ٕؒؔئ،պ չؕأ ؖ؟٦ٖأ؎ؚٖ زحպ UI涪䬐䔲
أ؎ؚٖ زحٖؕ٦أ ؖ؟ • 2016䎃12剢15傈涪㡰 PlayStation Vitaيؓ٦ؿزحٓف• 㼎䘔 剑倜⡲ךؤٔ٦ءؖ؟ • ؔٔشءזꅾ㾴涸״חⰕ➂⚺ך• 醱侧 ׁ넝ך荈歋䏝״חؔٔشءٔ٦ؿ ٕزغְ넝ך䨌殛䚍״חוזꤏ䕎װֹמ يذأء䧭ꞿך杝暴׃䱖ꤐٕ䚍كٖ
嚊銲 כהUIךأ؎ؚٖ زحٖؕ٦أ ؖ؟ UI涪ךדأ؎ؚٖ زحٖؕ٦أ ؖ؟ 㼎䘔ה㉏겗׃涪欰 铬겗ך➙䖓 • • • •
כהUIךأ؎ؚٖ زحٖؕ٦أ ؖ؟
ٕUIزغ ⻉鋔鋙⹛遤ךגץׅ侯倯דٓ؎ٝي؎ة • 盖椚زأ؝״ח• BP #1 ٓ؎ٝي؎ة
ٕUIزغ ַע麊חⵃ剣䨌屣ח㥴⡦ח⚥䗰UI ג甧穈䨌殛הֻׄ يذأءٕزغ
䨌ꡙ彊⪒UI • חٕزغ遤ֲػ٦؍ذ箟䧭 • 鄲⪒װꤏ䕎㢌刿ֹד
䨌ꡙ彊⪒UI דהִֿ罋箟䧭ׇさחٕزغ הׇֿׁ♳ぢ䨌殛䚍ךٕزغ UI׃ה湡涸
UIسٕٙ٦ 朐屣ךسٕ٦؍ؿָ鼅䫛ךٖ؎َ٦ف • ְֻג׃ר⿹䕦갟ח暟铂װ պيذأءسٕٔ٦ٙ٦ؿչ
UIسٕٙ٦ ֲַ遤ٕزغ׃爙ٕ䞔㜠زغ • ְהַׅ㔐鼘ה կׅר⿹䕦갟פ暟铂鼅䫛
כהUIךأ؎ؚٖ زحٖؕ٦أ ؖ؟ կְג׃湫穠חׁծUIָ涯׃䕦갟ח䨌殛圓眠ךٕزغָUIךֻ㢳
ךדأ؎ؚٖ زحٖؕ٦أ ؖ؟ UI涪
UI涪ח実הְֿג • ث٦ךيֹ稆傍ֻ㹋植׃鑐遤ꐪ铎遤ִ✲կ • 㼰➂侧⸬ד桦ⴓֻ״䬐׃㢌⻉ח䓼ְUI⡲הֿׅ⳿կ ֿ麦䧭ֹד橆㞮ָֻב䗳銲׃דկ
כהֻב䓼ְUIח⻉㢌 ֽⴓⴖז僇然ך٦⡲噟وؚٓٗفה٦ش؎ؠر • ⻉葺ְ害欽ך⸬桦ךأ٦أ • ִ䫇ח剑㼭ꣲ䕦갟ך• 㢌刿 圓眠ךيذأءUI׃䠐陎⇒MVC
MVCכה ٥MVCModel View Controller UI㹋鄲؎ؠرךٝةػ٦ٝ Model Game System Controller View
Model • UI圓䧭ׅ呌֮ד鋅湡װ乼⡲חꟼ⟃ך㢩גץׅך遤ֲկ • ٦הيذأءي湫䱸䞔㜠ֽ「ך床׃遤ֲկ • UIך鋅湡װ乼⡲倯岀ծ鼂獳ָ㢌⻉ג׃Modelכ㛇劤㢌ְזկ Model Game System Controller View
ⶴ䕵ךדٕزغModel ⴽכٓ؎ٝي؎ةה)1邌爙כⴱ䔲
Modelךדٕزغ䕵ⶴ 侯ַ余䷼ֽ「 )1غ٦ فحه،فح邌爙⡘縧然钠 (BNF4ZTUFN فحه،فح )1幾ׇ 7JFX )1幾㼰怴⳿ ًت٦فحهآ،فح邌爙 )1㢌刿ًسحا .PEFM )1غ٦刿倜 邌爙欽ٍٓؗ ر٦ة刿倜 $POUSPMMFS ًت٦فحهآ ،رفح٦ة欰䧭 ًت٦فحهآ،فح邌爙⣛걾
Modelךדٕزغ䕵ⶴ 侯ַ؎ٓي؎ةٝך遤⹛갫ָ鹼ֻז余䷼ֽ「 )1غ٦ فحه،فح邌爙⡘縧然钠 (BNF4ZTUFN فحه،فح 侯ך䪮ח䔉ַג獳⹛ )1幾ׇ )1㢌刿ًسحا ؎ٓي؎ةٝ꽓獳 ⹛ًسحا .PEFM ؎ٓي؎ةٝ6* ر٦ة刿倜 ًت٦فحهآ،فح邌爙 ،رفح٦ة欰䧭 ؎ٓي؎ةַׅٝ⹛ ؎ٓي؎ةٝ䞔㜠刿倜 $POUSPMMFS )1غ٦刿倜 ًت٦فحهآ ؎ٓي؎ةٝ )1幾㼰怴⳿ ⰻ鿇䞔㜠刿倜 邌爙欽ٍٓؗ 7JFX ًت٦فحهآ،فح邌爙⣛걾
ⶴ䕵ךדٕزغModel ֲ״׃חא♧ٓ؎ٝي؎ةה٦غ٦)1ةؙٖ؍ر ֽ「䷼余זֻ遤⹛갫ָ鹼ךٓ؎ٝي؎ةַ侯 Ⱟٓ؎ٝي؎ة ٦غ)1 7JFX ⹛獳ٓ؎ٝي؎ةג׃幾)1 邌爙⡘縧然钠فح،فحه فح،فحه (BNF4ZTUFN ⹛獳גַ䔉ח䪮ך侯 邌爙فح،فحهآً٦ت ׇ幾)1 ٓ؎ٝ꽓獳ي؎ة سحاً⹛ سحاً)1㢌刿 ְזָ䗳銲ך㢌刿 ٓ؎ٝ䞔㜠刿倜ي؎ة *ٓ؎ٝ6ي؎ة ⰻ鿇䞔㜠刿倜 $POUSPMMFS .PEFM ٦刿倜غ)1 邌爙⣛걾فح،فحهآً٦ت ٍٓؗ邌爙欽 فحهآً٦ت 欰䧭ة٦رفح، 刿倜ة٦ر
Controller • َ؎ٖف٦⩎ַך乼⡲ViewװModelח⠗ִկ • ָوؚٓٗف䪔ֲ乼⡲װ鋅湡חꟼⳢ椚ך㹋鄲կ • 銲劄דוז㢌⻉ׅ걼䏝ָ넝ְկ Model Game System Controller View
Controllerךדٕزغ䕵ⶴ $POUSPMMFS 倯ぢؗ٦ד鼅䫛䪮ָ㢌 Game System Model 䪮ⴖ剏ִ 7JFX 植㖈ך鼅䫛䪮כӧӧ
Controllerךדٕزغ䕵ⶴ $POUSPMMFS 㼎韋ך꽓殢湡ח獳⹛ׇׁ怴⳿ך䭷爙կ ⯋ղ꽓ָ֮⡘縧ח然钠欽ؕ٦ٕا鷄⸇ 6*ח邌爙ׅ꽓ך갫殢刿倜 ✳ךא꽓؎ּٓٝזאד Game System Model ַيؚٓٗف7JFX圓鸡ך㢌刿⹛涸ח遤ֲ 䪮ָ㢌ַ 遤⹛갫ָ㢌 7JFX
View • ָش؎ؠر䪔ֲ秪磏رז٦ة鿇ⴓخד٦ٕג״ח⡲䧭ׁկ • ٖ؎،ؐزծ،ًص٦ّءٝծ歗ةػ٦ٝ • UIד⚥ך剑㢌刿걼䏝ָ넝ְկ Model Game System Controller View
ⶴ䕵ךדٕزغView ꂁ縧ך6*銲稆 زأٔ鼅䫛سٝو؝ أة٦ذأך٦ةٍؙٓؗ زأٔ#1 آ胜兝؎ً٦ 꽓ךٓ؎ٝي؎ة
Viewךדٕزغ䕵ⶴ 歗ةػך٦ٝ⡲䧭 コマンド選 ターン開始 択 $POUSPMMFSַך䭷爙ד ⴖ剏ִָ遤 #1ٔ؎ٓي؎ةהزأָٝ⳿ְג و؝ٝذأהزأٔس٦أة䞔㜠ָ邌爙
ⶴ䕵ךדٕزغView ؎ٝسؑ٦ؿָزأٔسٝو؝ ֻגⰅאא׃ ⡲䧭ّٝءً٦ص، コマンド選 ターン開始 択 ָ䞔㜠أة٦ذأ ׁ邌爙 ؎ٝسؑ٦ؿָزأٔ#1 ַָׇ֮♴ָٓ؎ٝي؎ة
㹋鄲ךView ָٓٔ䗳銲ـ؎ֲٓ遤邌爙הة؍رׅؒ箟꧊ة٦رכח• View ז׃ָ㶷㖈ة؍رׅؒ⼧ⴓ弫⟝銲ךش؎ؠرדزحإGUI،ך• 傀㶷 կַ ֶג׃弫⟝ָ銲ة؍رؒUI׃⡲䧭דزؙؑآٗفך⟃ կזחהֿׅ⢪欽׃⥜何ַزأ؝
Viewך㹋鄲UIؒة؍ر
Viewך㹋鄲UIؒךة؍ر堣腉 • UIٖ؎،ؐךز⡲䧭
Viewך㹋鄲UIؒךة؍ر堣腉 • ؎شٝسحؚٔծ،ٝؕ٦؎ٖוז،ؐךز酡⸔堣腉
Viewך㹋鄲UIؒךة؍ر堣腉 • ،ךأٓز⡲䧭ծػ٦ךخ盖椚
Viewך㹋鄲UIؒךة؍ر堣腉 • ظ٦س圓鸡؛حػ٦׃⻉آ害欽⻉➬ׅ穈
堣腉ךة؍رؒ㹋鄲UIךView ّٝءً٦صٓ؎ٝ،ي؎ة • ⡲䧭ך٦ٝةػ歗⢪ٓ؎ٝي؎ة • ָ邌爙زأٔ鼅䫛سٝو؝ ֻגⰅָزأٍٔٓؗ ⳿#1㔐䗁怴 ٕٗ٦زٝ؝ّٝءً٦ص،װ邌爙ךس٦ظחה׀朐䡾ך歗
Viewך㹋鄲UIؒךة؍ر堣腉 • 俑㶵ر٦كة٦ךהأ鸬䵿
Viewך㹋鄲UIؒךة؍ر堣腉 • ؓؿך⸂Ⰵسحػ٦ؕأ갫鏣㹀
Viewך㹋鄲ٓٝي؎ة • ؒرךة؍ر٦כةXMLك٦ךأ暟⢪ְג捀ծ Unityד铣鴥GameObjectظך٦س圓鸡פ㢌䳔׃ prefab⥂ג׃ה㶷؝ׅٝغ٦ة⡲䧭կ • 邌爙כ傀㶷ךGUI،׃ؤ؎وةأؕزحإ⢪欽կ コンバータ
穠卓 ַ䱦דהֻֿׁׅ㼭ꣲז〳腉ָזאךծ׃ⶴⴓח• MVC ְ䓼חֻ㢌刿ׅװ׃ծⴓ䬐זחֲ״ת חָ剑㼭ꣲؙأٔך㢌刿 կ׃תֹד麦䧭ֻב橆㞮 ֹծדָהֿׅ鵤粸ֻ鑐遤ꐪ铎ז䫺䫑דהְָֿׁ㼭ؙأٔך• 㢌刿 կׅתְ䙼הֹד鷄実UIז椚䟝涸
涪欰㉏׃겗ה㼎䘔
ⰻ㺁ך㉏겗 ֲկת׃גַַ♳⟃5猱דֽ儗ָUIس• ٗ٦ ָծ䖞勻ְג׃䪾䳢כהֿזָֻꞿسٗ٦ךדPSVitaַⴱ• 涪䔲 ⯓ִ罋ה眔㔲ֹד锃侭ַず圫ծ䖓زؙؑآٗفְז⢪Unityך կְג׃ח鷏 知ח⡲噟儗ؚٔٝةؙ؋ؿٔךתծ劤ⵖ⡲ָ㨣׃ָ㸣䧭ف؎ةزٗف կֹגַⴓָהְֿזֹד鍑嶊כח⽃
㉏겗⾱ך㔓 • Prefabٗך٦חس儗ְַַָגկ • 铣鴥䖓ծًٌٔךפ㾜הGameObjectךInstantiateָ넝頾蚚 • ֿ؎ًכٝسحٖأꞿ儗ֲת׃ג׃ؙحٗـկ ٗ٦س ًٌٔؕ٦ַس ٔءر،ٓ؎ؤ *OTUBOUPBUF ٗ٦س 㨣 铣鴥 ًٌٔפ㾜 ء٦ٝפꂁ縧 㸣✪ 넝頾蚚ً؎ؙٝحٗـָسحٖأ
㉏겗ךפ㼎Ⳣ • • • • Prefabהず瘝ך䞔㜠ꆀכדScriptableObjectٗך٦ָس瀉ְ 剑㼭ꣲ؎ٖך،ؐز圓鸡ך呓秛 铣鴥䖓ծ杝荈פأؙٓך㾜 醱꧟זUIכScriptableObjectך饯⹛儗ח䌢꽎 UIٗך٦س儗כꞿְ⦐䨽ד0.5猱⟃♴ח䫇ִկ
ⴽ㉏ך겗涪欰 ٗ٦س儗ך瀉簭㼎䘔״חGameObjectך⢪欽 〳腉זꣲ鼘ֽ倯ꆙ׃ה捀傀㶷ךGUI،زحإ ⢪ֲָֿהꨇת׃גזֻ׃կ ך捀ViewⳢך椚杝荈ח㹋鄲ׅ䗳銲ָ涪欰׃կ
ⴽ㉏ך겗㼎Ⳣ • ؒة؍ر荈⡤C#ד⡲䧭ְג׃捀ծؒⳢךة؍ر椚ח⯋嫰鯰涸㺁僒 ٓחٝך⩎ي؎ة㹋鄲כ㸣✪׃կ • GameObject⢪ְז鏣鎘״חהֿ׃ה䲽歗⟃㢩سحٖأثٕو Ⳣ椚ח獳ֹדָהֿׅ穠卓涸״⟃ח넝鸞⹛ח⡲זחֲ״ׅկ .BJO 4VC .PEFM $POUSPMMFS (BNF4ZTUFN 7JFXך刿倜 7JFXך䲽歗
➙䖓ך铬겗
铬겗ך➙䖓 הֿ鋅ד歗ي٦⽯ָծ׃⢪欽ة؍رؒUIךⴽכהUnityכ• ➙㔐 鴥穈פUnityة؍رؒUIכկ如㔐زحًٔرכְ挿זֹדָ ְկ כךךָծ歗鼂獳⳿勻כ✲⡲דة؍رؒUI٦ٝةػך• 歗 לֽזד⹛⚺وؚٓٗفתתկְג׃⣛㶷חس٦؝يؚٓٗف ծ傍׃װ㟓銲稆ֹד㸣穠דة؍رؒUIהָ㢳ְկהְֿזֹד ְկ⡲橆㞮זֲ״ֹד嗚鏾فح،ؙحٌדְ媮ꥡ
Thank you!