CA.unity

サイバーエージェントが主催する、Unityをテーマとした勉強会『CA.unity』の第一回が2021年2月19日に開催されました!

サイバーエージェントではゲームやXR等の事業でUnityを使用しています。特に、ゲーム事業では今やほとんどのプロダクトがUnityで開発されており、ゲーム事業に携わる私達にとってUnityはなくてはならない存在です。

Unityエンジニアコミュニティにサイバーエージェントとしてもっと貢献していきたいという思いの下、『サイバーエージェントの開発者と社外の開発者を交えたUnityに関する知見の共有』の場として、今回の『CA.unity』を開催することとなりました。

CA.unityとは
コロナ禍ということもあり、オンラインでの開催となりました。

開催にあたり、ユニティ・テクノロジーズ・ジャパン社様に全面的にご協力いただきました。一般公募のLT枠にも多数のご応募をいただき、募集を開始してからすぐに満枠となりました。準備に携わっていただいた皆様、登壇していただいた皆様には改めて感謝の意をお伝えしたいと思います。ありがとうございました。

また、当日は非常に多くの方々にご参加いただき、当初の予測を大幅に超える視聴者数となりました。ご視聴いただいた皆様、ありがとうございました。

運営体制(SGE Unity)

鈴木貴大(サムザップ)、住田直樹(QualiArts)
向かって左から鈴木貴大(サムザップ)、住田直樹(QualiArts)

今回のCA.unityはサイバーエージェントグループ、QualiArts所属の住田直樹と、サムザップ所属の鈴木貴大が中心となって開催しました。住田は2018年入社、鈴木は2020年入社の若手Unityエンジニアです。二人はUnityをテーマに様々な活動を行う『SGE Unity』という組織にも所属しています。SGE Unityはゲーム・エンターテイメント事業部(SGE)を横断する組織で、若手エンジニアが中心となって強いオーナーシップを発揮し、活動を牽引しています。本イベントはその活動の中から生まれました。

当日のLT内容

※敬称略
ー Cinemachineで見下ろし視点のカメラを作る
山村 達彦(ユニティ・テクノロジーズ・ジャパン)
ー Burstを使ってSHA-256のハッシュ計算を高速に行う話
名雪 通(ユニティ・テクノロジーズ・ジャパン)
ー Unity Package Manager と Addressable Assets System を用いたプロジェクト分割について
もんりぃ先生(@monry)
ー Unityにおける設計のパターン
とりすーぷ(@toRisouP
ー A quick tour of the Cysharp OSS
河合 宜文(Cysharp)
ー NieR Re[in]carnationの開発
杉浦 優介(アプリボット)
ー XR Interaction Toolkit 1.0.0-pre で VR 開発してみよう
Denik(@xrdnk
ー Unityでチャットに使えるモバイルキーボードの実現
Nakaji Kohki(@nkjzm

※今回のLT動画は一部の発表を除いてUnity Lerning Materialsで公開されております。
また、LT内容をテキストに書き起こしたイベントログがlogmi Techで後日公開予定です。LTの詳細な内容はそちらをご覧下さい。

Cinemachineで見下ろし視点のカメラを作る

山村 達彦 様(ユニティ・テクノロジーズ・ジャパン)
登壇資料:https://learning.unity3d.jp/6152/
カメラ制御機能としてよく知られているCinemachineと、元々2D向けであるFraming Transposerを使い、見下ろし型のカメラを実現する方法をご紹介いただきました。
Framing Transposerについては基本的な使い方に加え、プレイヤーが見たいものを見せるカメラの複数の作例とカメラを自然に切り替える方法が紹介され、視聴者からは感嘆のコメントが多く寄せられました。

Burstを使ってSHA-256のハッシュ計算を高速に行う話

名雪 通 様(ユニティ・テクノロジーズ・ジャパン)
登壇資料:https://learning.unity3d.jp/6155/
Burstを使う際に伴う色んな制限の中、『ファイル入力を可能にするには?』をテーマに、Burst1.5.0で導入されたDirect Callを使った方法や裏技的にメモリマップトファイルを使った方法をご紹介いただきました。Burstを有効にしない方法と比較して、実行速度はなんと10倍以上!視聴者からはたくさんの驚きの声が上がりました。

Unity Package Manager と Addressable Assets System を用いたプロジェクト分割について

もんりぃ先生 様(@monry)

ご自身が携わるプロダクトにおいて、Unity Package ManagerとAdressable Assets Systemを使ってプロジェクト分割をどう実現しているか?についてご説明いただきました。プロジェクトを分割している経緯やアプローチは、運用期間の長いゲームを開発している方にとっては非常に興味深いテーマではないでしょうか。視聴者の中にはgit submoduleを使った方法と比較されている方もいらっしゃいました。

Unityにおける設計のパターン

とりすーぷ 様(@toRisouP

Unityにおける設計のレベル分け、レベルを上げることでのメリット・デメリット、設計レベルを上げる方法、Unityでより良い設計を構築するために必要な考え方等について、非常に分かりやすくご説明いただきました。資料のボリュームは100枚超ということで、読み応え十分な内容となっております。設計に興味のある方に是非ご覧いただきたい内容です。

A quick tour of the Cysharp OSS

河合 宜文(Cysharp)

Cysharpでこれまでに作ってきた数々のOSSをご紹介いただきました。Cysharpと言えばMagicOnionやUniTask等が有名ですが、他にもたくさんのOSSを開発されています。弊グループのアプリボットが提供する『NieR Re[in]carnation』でも、多くのライブラリが使用されているとのこと。Unityエンジニアの方だけでなく、C#を使用しているサーバーサイドエンジニアの方も是非ご覧下さい。

NieR Re[in]carnationの開発

杉浦 優介(アプリボット)

CA.unityの前日(2月18日)にリリースされたばかりのタイトル『NieR Re[in]carnation』がどうやって開発されているのか、その一部をご紹介いただきました。コンテンツを効率良く開発する工夫によって、ゲーム各所の高いクオリティが実現されていることが分かります。プランナー、クリエイターとの連携が取りやすくなっているのが印象的です。弊グループ内のノウハウの活かし方も、少し垣間見ることが出来る内容となっております。

XR Interaction Toolkit 1.0.0-pre で VR 開発してみよう

Denik 様(@xrdnk

VR/ARのインタラクションシステムツールキットであるXR Interaction Toolkitによって提供される様々な機能と、それを使った応用例をご紹介いただきました。バージョンによる変更点、それに伴う注意点についても触れられており、使用を検討されている方にとって非常に役立つ内容かと思います。Oculus Integrationと比較してどうなのか気になっている方にも是非ご覧いただきたい内容です。

Unityでチャットに使えるモバイルキーボードの実現

Nakaji Kohki(@nkjzm

モバイルキーボードに関するノウハウを惜しみなく語っていただきました。ご自身が携わったゲームで実際に用いられている実装方法とのことで、非常に実用的な内容となっております。短い時間ながら多くのTIPSが紹介されています。苦労されたポイントについては視聴者からも共感の声がたくさん上がっていました。気持ち良いUXの実現に苦労されている方は是非ご覧下さい。

最後に

今回は初めての開催ながら、登壇者の皆様による魅力的なLTに助けられ、非常に注目度の高いイベントとなりました。視聴された皆様からもご好評をいただいており、第2回も是非開催したいと考えております。

ご興味を持たれた方は弊社のconnpassグループで次回の開催をチェックしていただければと思います。

次回もお楽しみに!!