僕はここだ!

読書記録とか、ポエムとか、メモとか、コードスニペットとか。まとまったのはQiitaにも書きます。(http://qiita.com/RyotaMurohoshi) 掲載内容は個人の見解であり、所属する企業を代表するものではありません。

「【プチLT】Unityの新機能で遊ぶ会【もくもく】」を開催しました

【プチLT】Unityの新機能で遊ぶ会【もくもく】を開催しました。 その開催レポートです。

f:id:MRStar:20160321150731j:plain

概要

 2016/03/20(日)にStudio Geeks様にて、Unity部主催の【プチLT】Unityの新機能で遊ぶ会【もくもく】を開催しました。

 2015年の年末に多くの機能を伴ってリリースされたUnity5.3、そしてつい最近2016年3月に発表されたUnity5.4 public preview。Unity5.0リリース以降も、Unityはバージョンアップを重ねるごとに多くの機能が加わっています。しかし、なかなかそれらに触れない人も多いのではないでしょうか。私もその一人です。

 そこでUnity部では

  • Unity5.x系で加わった新機能を参加者みんなでもくもくする
  • もくもくして学んだ知見・成果をLTで発表する

 という趣旨で、「【プチLT】Unityの新機能で遊ぶ会【もくもく】」という勉強会を開催しました。

 ちなみに大体1年くらい前に同様のイベントをUnity部で開催しています。

 Studio Geeks様の素敵な会場で、お菓子を食べながら、ジュースを飲みながらのもくもく会、参加者の皆さまは集中してもくもくできたのでしたらうれしいです。

LTコーナー

計6(+1)名の方にLTや知見の共有をしていただきました。

f:id:MRStar:20160321150637j:plain

y.ikwd(@ivoryfunc)さん

 いけてるスマホアプリのUIをUnityでつくること、そして引力・斥力を表現するコンポーネントのLTをしてくださいました。

 UniteのUIハンズオンもとても楽しみです。

殺意駆動開発(@toru_inoue)さん

 AssetGraphとShaderKitchenのLTをしてくださいました。実際に動くunityPackageをDLできるのは素敵ですね。

 ブログ:UnityMokuMoku 行った

時村良平(@rodostw)さん

 「プロジェクトを開く際に、Unityのバージョンが違うと確認ダイアログがでる」ということ、そしてコルーチンの入れ子でStartCorotutineメソッドなしでも子コルーチンの処理が実行できるようになったことをLTされました。MonoBehaviourクラスでなくても子コルーチン処理が記述できるのでとても便利になりましたね。

 ブログ:Unity5.3から、コルーチン内でコルーチンを呼び出しやすくなった

とりすーぷ(@toRisouP)さん

 GGJでの制作方法や設計・指針についてLTしてくださいました。LTでは試しプレイも行われました!

Ichijo #NotGDC(@Takaaki_Ichijo)さん

 ご自身の今後のエバンジェリスト活動に向けUnity関連のアンケートLTを行われました。次回その結果を受けてのLTや発表をしてくださるそうなので、とても楽しみです。

 またUniteでの登壇もされるそうでこちらもとても楽しみです。

けーご(@kyusyukeigo)さん

 UnityにまつわるキュレーションサービスについてLTしていただきました。非常に便利そうです。とても楽しみです。

むろほし(@RyotaMurohoshi)

 自分です。クロージングトークもかねてLTをしました。後述します。

ザバ(ザバイオーネ)@z_zabaglioneさん

 新たに加わったUNITY_5_3_OR_NEWERシンボルについて共有してくださいました。ありがとうございます!

自分のLT

 Unity4.x系では次のようなコードをよく書いていたと思います。

public class CharacterBehaviour : MonoBehaviour
{
    [SerializeField] HpBar hpBarPrefab;

    HpBar hpBar;

    void Awake()
    {
        hpBar = Instantiate(hpBarPrefab) as HpBar;
    }
}

 Unity5.0とそれ以降では次のように書けます。

public class CharacterBehaviour : MonoBehaviour
{
    [SerializeField] HpBar hpBarPrefab;

    HpBar hpBar;

    void Awake()
    {
        hpBar = Instantiate(hpBarPrefab);
    }
}

 違うところに気が付きましたか?asが無くなりましたね。毎度プレファブからゲームオブジェクトを作成した際の面倒だったasやキャストがUnity5.0からは不要になりました!これはInstantiateメソッドジェネリックオーバーロードが加わったためです。

 また、

   hpBar = Instantiate(hpBarPrefab);

 は

   hpBar = Instantiate<HpBar>(hpBarPrefab);

 とも書けますが、冗長ですね。

 (っていう話は実はQiitaにもう書いてありました。Unity5.0からInstantiateメソッドにジェネリックなオーバーロードが加わった)

 意外と知らない方がいてLTしてよかったなって思いました。ここらへん、気づきにくいですよね。とくにUnity5.0とか5.3って多くの機能がでたからリリースノート読むの大変だったし。

 JSONや分析、アプリ内課金とか主要な目立つ機能以外にも

  • Vector2.downとかVector2.left
  • NUnitがUnityビルドインに
  • コルーチンの入れ子、StartCoroutine不要でIEnumerator
  • ログ周り強化
  • UnityEngine.Assertions名前空間

 などような機能も実は、変更・パワーアップしていましたね!

まとめ

 もくもく会参加者のみなさんが普段試せていない新機能に触り、知見を貯めることができたのであればうれしいです。

 Studio Geeks様、会場提供ありがとうございました。

 また、次回!

おまけ

ごめんなさい(1)

もくもく会は作業に集中するから、LT大会とか懇親会に比べてジュースはあまり飲まない。 あと、自分は人よりめっちゃ水分を飲む。 覚えた。

ごめんなさい(2)

カレンダー!!!!

各位

俺のもくもく会は終わった! 各位、もう一度張っておきますね。 一言感想でもいいですよ。

f:id:MRStar:20160321150731j:plain