コード日進月歩

プログラミングの技術的なメモなど

プログラマのためのUnity勉強会に行ってきたよメモ

前に同じような勉強会があり めっちゃよかったので最近Unity書けてないけど聞きに行きたくて参加しました。のでそのメモ。 (そのため感想は普段書いていない感が出てしまっております。。)

各発表の感想

Unityで使えるC# 6.0〜と.NET 4.6

感想

  • C#周りが新しくなることで一気に便利なるんだなという印象
  • async/awaitとコルーチンの使い分けがすごいわかりやすい。フレームごとの処理みたいな部分は納得。
  • DLL化はレイヤー分けちゃんとできてれば結構有効なんだろうなぁとか思うなど。

関連リンク

Unity開発で使える設計の話 + Zenjectの紹介

感想

  • Unity開発でつかえるオブジェクト指向の基礎とDIツール、みたいなお話
  • デザインパターンは認識としてあるが、実例が伴ってないと身にしみないのでゼロで布教するには結構大変そう
  • 「設計は作って失敗しないと覚えない」というのは真理でGoFのパターンとかは実際に書かないとメリットの恩恵が受けられないなぁという気持ち

関連リンク

今、Unityプログラマに教えてあげたいC#のあれやこれや

感想

  • C#にフィーチャーした気をつけたほうが良い書き方&便利な関数のご紹介
  • 防御的コピーとかは割とやるパターンだとは思うけど、周知してないと ClearとかAddされても反映されない! みたいな混乱の種になるんだなー…とか全然違う学びがあった
  • 違う言語を日頃書かれている人ならではの発表だった

関連リンク

Unityリアルタイムネットワーク通信の基盤である「RPC」についてとハマりどころ

(すいませんタイトルを正確に控えておりませんでした。。)

スライドが無さそうなので内容メモ書き

  • 昨今のネットワークゲームのプランニングの方式に関して
    • Server / ClientモデルとP2Pモデルが存在し、通信もTCPを使う場合とUDPが使う場合がスタンダードでありました
  • それを踏まえたRPC(RemoteProcedureCall)に関して
  • RPCをUnity上で使ったときのハマりどころについて
    • シリアライズ/デシリアライズが重いので最終的な形であるbyte型を意識する
    • コールバックの受け口が多いと重くなるので、共通化などをしてなるべく減らす

感想

  • 今の御時世UDPじゃなくてもTCPでも全然いけるとのこと、差が20msec差しかでないこともあるらしい。確かにそれだとTCPでいいっすねという気持ち
  • 結構Unity特有のボトルネックがあったりするというお話でした。

関連リンク

全体を通しての感想

  • UnityがC# 6ベースになったことでやれることが増える反面、挙動の振る舞いが変わったので色々と気にするところ増えそうという印象でした。
  • ゲーム開発ってオブジェクト指向の定石が取り込まれていなかったり、逆にゲーム開発以外はUIでのイベント管理の考え方が違ったりと、それぞれの界隈の開発のトレンドを知ることで作るものに応じてより良い選択肢を考える事ができるので、ゲームをメインでやってるわけじゃないけど引き続きこういう機会があれば参加したいなーと思いました。

流石に懇親会で喋るネタもないので早々に退散しましたが、来年は個人でなんか作りたい。。