YAMADA TAISHI’s diary

ゲームについてとか私の日記とか。このブログのあらゆるコードは好きにどうぞ。利用規約があるものは記事内のGitHubのRepositoryのリンクで貼られていると思うので、そちらを参照ください。

【勉強会】「Unity.Avengers UIエンジニアリング勉強会」に行ってきました

こんにちは、やまだ たいし(やまだ たいし@ソシャゲプログラマ (@OrotiYamatano) | Twitter)です。

アズマゴロー@デジゲー博B-03a (@azumagoro) | Twitter さん主催でUnityのUIの勉強として開催された「Unity.Avengers UIエンジニアリング勉強会」に行ってきました!
会場はNIFcLoungeさん。ちなみにTwitterで(富士通クラウドテクノロジーズ株式会社 (@Fujitsu_FJCT) | Twitterさんに)リプライを送ったりしたら勉強会などの会場貸し出しとか、お問い合わせ出来るらしいです。

今回は、その概要と感想です。

イベントページ

unity-ui-avengers-outgame.peatix.com


目次


講演


もしあなたがアウトゲームをつくるときになったらやること


Masataka Kohagura/ぴーすけ (@masakoha523) | Twitter さんによる「もしあなたがアウトゲームをつくるときになったらやること」です。

アウトゲームをイチから作っていった話がメインでした。
Vライバー視聴アプリ、IRIAMでUI周りを一人でやったらしいです。
それをするのにあたって、まず基盤を固めるところから始めたそうです。

特に用語やコード構成をしっかりしていないとUIの造り手が増員したときに思ったように開発スピードを上げることが出来ないからだそうです。
共通パーツやMVPの基礎コード自動生成などを行ったらしいです。

共通パーツの生成などはGithubにライブラリ化しているそうです。
一見の価値ありそう。

一言
最初から興味深い内容ばかりで勉強になりました。
私はゲームを作る上でUIを作る場合、個人でゲームを作る場合は特に画面ごとの差異が出ないですし、
チームでも画面もデザイナーが作ってくれたものを実装するだけで、特に意識していない箇所だったので
ああそうだな、と勉強になりました。
ちなみに話の途中に出てきたMVPは私も好きです。
↓の記事は私も以前読みました。おすすめです。

developers.cyberagent.co.jp

↓各ライブラリ github.com github.com github.com

スライド

speakerdeck.com

UnityのUIでやってはいけないこと


Unity触る人なら大好きテラシュールブログの中の人 椿 (@tsubaki_t1) | Twitter さんによる「UnityのUIでやってはいけないこと」です。

UnityのUI最適化の話です。
UIを作る上でのアンチパターンをいくつか語ってくれました。
UIのマスクをすることでDraw Callが増えることは何となく想像が出来ましたが、マスクがかぶっている場合は更にDrawCallが増えるのは知りませんでした。
驚き。

後、なにげにLayoutGroup内のUIは動かしては行けないというのも知りませんでした。
ポリゴン数を増えるとしても、動かさなければ、透明部分の描画をへらすために透明な枠の内側をくり抜いたりした方が負荷が下がるのも知りませんでした。
キリキリチューニングする時に役立ちそうなので覚えておきたいです。
色々知ることが出来ましたが、Unityのバージョンごとに挙動が違うらしいので、すべてを鵜呑みにせずにProfilerを信じて実装したほうが良いとのこと。

一言
知っていることもあったのですが、今後気をつけたい内容がたっぷりつまっていて良かったです。 UIの最適化については以前にも、お話をしているらしく、もう一つスライドがあります。
Profilerの見方とかが知りたい方はコチラ(Unityでパフォーマンスの良いUIを作る為のTips)のスライドを見てみると良いかも知れないです。

docs.google.com

LT.ちょっとしたUIの変更を楽にする手法


やまだ (@tty_yamada) | Twitter さんによる「ちょっとしたUIの変更を楽にする手法」です。

ソリティアを年に10本も作ったという やまださんによるUIの変更を楽にする方法です。
実体験がこもった小ネタ溢れたLTでした。
RemoteSettingsは使ったことが無かったので使ってみようかなと思わせるLTでした。

一言
個人的にはフォントの差し替え(uGUI)でエディター外でフォント名を変えて置換させる方法は衝撃的でした。
なにかゴミ情報が残って上手く出来ないとばかり思ってました。
懇親会のときに聞いたのですが他の開発者によるとテクスチャについても同じような手段で変更が効く場合があるそうです。
Unityのバージョンによっても変わることがありそうな箇所なのでオススメ出来ないそうですが、面白い手段だなと思いました。
良い子の皆は素直にエディター拡張作ってソレでやりましょう。

docs.google.com

LT.Presetでちょっぴり楽するUI組み立て


青木とと(ˊᗜˋ*) (@lycoris102) | Twitter さんによる「Presetでちょっぴり楽するUI組み立て」です。

Presetの使い方についてのLTでした。
私はPresetを使ったことも存在も知らなかったので、興味深く聞くことが出来ました。(業務では最近になってUnity2018に上げたので知らなかったです)

デザインガイドラインとしてPresetを利用したり、AssetPostprocesserにPresetを適用するものを入れたりと、こういう使い方便利そうだなと思えるものが多くて良かったです。
ローカルのテクスチャの設定をどうしたか、連携するときにも使えそうで良いなと思いました。
デザインのガイドラインを定めておくという話が「もしあなたがアウトゲームをつくるときになったらやること」にもありましたが、
その連携手段としてPresetを利用するのは、とても有用かも!と感じました。

一言
個人的には話の途中に出てきたEventSystemのビューから前回クリックしたオブジェクトを取得出来るのは知らなかったので、自分のUnityへの理解の甘さを痛感。
イベントシステムだけではなく、他にも知らないことが多そうだなと個人的に反省。
Preset以外にも、新たなアセットばかりに目を向けるのではなく、Unity標準としてどんな機能があるのか、しっかり調べようと思いました。
後、そういえば時間がなくてプレゼン資料を用意するのがギリギリだったとトトさん言ってた割には、とても見やすいスライドで良かったです。

speakerdeck.com

LT.ScrollViewアセットマスター


今回の主催者、アズマゴロー@デジゲー博B-03a (@azumagoro) | Twitter さんによる「ScrollViewアセットマスター」です。

ScrollViewのアセットについての発表でした。
今回は「UGUI Super ScrollView」と「Enhanced Scroller」の比較。
私個人としてはスクロールビューは自前でゴリゴリ実装していたので、そういうアセット自体の存在を知りませんでした。
確かに個人で実装するとスクロールジャンプや、無限スクロールがとても実装しづらい。
(懇親会の時に、やまださんや他の方にスクロールの話を聞きましたが、無限スクロールは何処も苦労してるみたい)
実装時間を考えると、お金を払ったほうが安いと思いました。

一言
スクロールで苦労したことは少ないけれど、今後困ったら、このようなアセットがあることを覚えていても良さそうだなと思いました。
サンプルも豊富だし一考の余地ありだなと思いました。UIを実装する上でこういったアセットもいくつかあると思うので、今度時間があるときにゆっくり見てみようと思いました。

docs.google.com

まとめとか


今回の勉強会はUIメインのお話で業務にも活かせる内容が多く、とても勉強になりました。

また、題材がUIのエンジニアリングのお話だったお陰で、UIについて皆ある程度理解がある前提で懇親会に挑めました。御社ではどのように実装してますか?とか質問しやすかったのが良かったです。
プレゼンも良かったのですが、早めにプレゼンなどが終わったお陰(?)で懇親会の時間が伸びて色んな方に話を聞けたのが面白かったです。
いつも勉強会に行くと、どういう話をすれば良いのか分からないことが多かったのですが、今回は何人かの方々に話を聞くことが出来ました。
おおっぴらには言えないことだと思うので、話に上がった題材だけいうと、

とかでした。

大体の勉強会は後日にyoutubeにて配信されることがあり、行く意味もなくなってしまいますが、小規模の勉強会なら登壇者と話がしやすく面白い話も聞けるというのが分かったので、
少し小規模な勉強会も今後は参加するのも良いかも知れないと思えた勉強会でした。