モバイルゲームの開発を支える基盤の歩み ~再現性のある開発ラインを量産する秘訣~
by
QualiArts
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
2025/7/23 株式会社QualiArts 田村 和範 モバイルゲームの開発を支える基盤 の歩み ~再現性のある開発ラインを量産する秘訣~
Slide 2
Slide 2 text
• 株式会社QualiArts • 2015年入社 • 開発推進室 室長 • 過去の登壇 CEDEC 2020「大規模モバイルゲーム開発を高速化するAdobe XD 活用術 〜企画立案からUnityと連携した実装まで〜」 CEDEC 2023「エンジニアとクリエイターで作る!モバイルゲーム 開発における理想的なUIアニメーション開発フロー」 田村 和範
Slide 3
Slide 3 text
ゲーム・エンターテイメント事業部(SGE) 子会社制をとっており、 ゲーム・エンターテイメント事業に携わる 8社の子会社が所属しています。 ぜひ技術広報Xアカウントの フォローをお願いします。 ゲーム・エンターテイメント事業部(SGE) @ca_ge_tech
Slide 4
Slide 4 text
「ずっとおもしろいセカイをつくる」をビジョンに、Unityを用いたスマートフォン 向けゲームの企画・開発・運営やIPの企画・開発・プロデュースを行っている 株式会社QualiArtsとは
Slide 5
Slide 5 text
基盤、ツール、環境の提供を通してエンジニアの開発力の強化を実現する 開発推進室 基盤 CI/CD 自動テスト AI ※7/24 第5会場 11:10-12:10 モバイルゲームで自動テストが効果を発揮するまで~自動テストを「運用」するまでの組織のアプローチ~
Slide 6
Slide 6 text
開発推進室とTA室とプロジェクト プロジェクトA 開発推進室 TA室 プロジェクトB … グラフィックスなどを担当するTA室とともにプロジェクト横断で開発を支える
Slide 7
Slide 7 text
基盤開発の光と闇、それにどう立ち向かうか セッションの概要
Slide 8
Slide 8 text
本講演における「基盤」とは 基盤 = Unityエンジン 基盤 ゲーム固有 の実装 Unity製ゲームの開発においてプロジェクトを またいで活用可能な社内で開発された仕組み 主にはUnityのパッケージの形で提供 システム領域やUI領域の基盤の話が中心
Slide 9
Slide 9 text
Contents • QualiArtsにおける基盤 • 基盤開発・活用の効果と課題 • 基盤開発・活用における課題にどのように向き合って きたか • まとめ
Slide 10
Slide 10 text
1 QualiArtsにおける基盤
Slide 11
Slide 11 text
QualiArtsのUnity製ゲーム サイバーエージェント本社からAmebaのゲーム部門が分割され子会社化 子会社化前を含め多数のUnity製ゲームをリリースしてきた
Slide 12
Slide 12 text
QualiArtsにおける基盤の歴史 2015年頃まで 2015年頃 2017年頃 現在
Slide 13
Slide 13 text
黎明期 2015年頃まで 2015年頃 2017年頃 現在 独自実装による開発が主流 ちょっとした便利機能をコピペしつつ共通で使う動きはあり
Slide 14
Slide 14 text
基盤のはじまり 2015年頃まで 2015年頃 2017年頃 現在 当時の基盤組織によりいくつかの基盤が開発 特にアセットバンドル配信基盤「Octo」が広く浸透 ※CEDEC2017「複雑化するAssetBundleの配信からロードまでを基盤化した話」
Slide 15
Slide 15 text
汎用機能の基盤化 2015年頃まで 2015年頃 2017年頃 現在 プロジェクト内で開発された汎用機能を基盤化しようという 動きが始まる 特にUI実装のための共通機能を集めた「quaunity-ui」が 開発され、新規開発のプロジェクトに導入される 基盤化
Slide 16
Slide 16 text
基盤の普及 2015年頃まで 2015年頃 2017年頃 現在 規模の小さいものから大きいものまで多くの基盤が開発 開発推進室やTA室やプロジェクト所属のメンバーが開発、運用 例えば「quaunity」でGitHub Organization内を検索すると 87リポジトリがヒット
Slide 17
Slide 17 text
基盤の例:Titan • UIアニメーション実装における課題を解決するため、 プロジェクト所属のメンバーと共同で開発 • QualiArtsだけでなくグループ内でも利用される基盤に CEDEC 2023での発表の様子
Slide 18
Slide 18 text
基盤の例:API/マスター/ユーザー • ゲームAPIの呼び出し、マスターデータ管理、ユーザーデータ管理、それに必要な クラスの自動生成などの機能を持つ • アイプラの新規開発時、これからのQualiArtsの標準にしようという思いを込めな がら、バックエンドと共にプロジェクト内で開発 • アイプラリリース後に基盤化 基盤化
Slide 19
Slide 19 text
その他の基盤の例 汎用エディタ拡張 雑多ツール集 実機デバッグ用ツール Figmaインポーター ベクターUI ADVエディタ ロガー アセット確認用ビューワー ローカルセーブ アカウント連携 課金 ビルド 静的解析
Slide 20
Slide 20 text
Unipack 基盤の配信 • 社内のUnityパッケージレジストリ(Unipack)を運用 • Unipack経由で簡単に導入可能 • 100以上のパッケージが存在 基盤開発者 publish Unityプロジェクト から指定して利用
Slide 21
Slide 21 text
2 基盤開発・活用の効果と課題
Slide 22
Slide 22 text
基盤の効果 • 開発コストの削減 • 品質の向上 • 学習コストの削減
Slide 23
Slide 23 text
• ゼロから仕組みを開発する必要がなくなる • 便利ツールを利用できる 開発コストの削減 • ユニークな面白さに関わる部分を追求できる • プロトタイピングが迅速になる
Slide 24
Slide 24 text
品質の向上 • 他のプロジェクトで踏んだ罠を踏まずに済む • 基盤により組織として最低限の品質を担保
Slide 25
Slide 25 text
プロジェクトA プロジェクト間の異動や短期間のヘルプの際の学習コストが少なく済む 学習コストの削減 プロジェクトB 基盤α 基盤α
Slide 26
Slide 26 text
基盤の課題 基盤をうまく開発し、うまく活用される状態にするのは簡単な話ではない • 課題① クオリティの問題 • 課題② 使い方の問題 • 課題③ 需要の把握の問題 • 課題④ 開発スタイルの問題 • 課題⑤ 属人化の問題
Slide 27
Slide 27 text
課題① クオリティの問題 基盤には高いクオリティが求められる
Slide 28
Slide 28 text
課題② 使い方の問題 基盤に熟練しなければ基盤をうまく利用できない
Slide 29
Slide 29 text
課題③ 需要の把握の問題 基盤開発者が正確に需要を理解しなければいけない
Slide 30
Slide 30 text
課題④ 開発スタイルの問題 開発スタイルが異なると踏み込んだ基盤を作れない
Slide 31
Slide 31 text
課題⑤ 属人化の問題 基盤の開発・運用が属人化しがち
Slide 32
Slide 32 text
3 基盤開発・活用における課題に どのように向き合ってきたか
Slide 33
Slide 33 text
課題への向き合い方 • 前セクションで紹介した課題は、普遍的な解決策があるようなものではなく、 組織の状況に合わせた対応が必要 • QualiArtsではどのように課題に向き合ってきたかを紹介する
Slide 34
Slide 34 text
課題①への対応 基盤には高いクオリティが求められる
Slide 35
Slide 35 text
基盤には高いクオリティが求められる 一度プロジェクトで開発され、既に実績のある機能を基盤として独立させる 課題①への対応 プロジェクトA プロジェクトB 基盤の卵 基盤 基盤化
Slide 36
Slide 36 text
プロジェクト内の実装を基盤化した例 UI関連の基盤化 (quaunity-ui) API/マスター/ユーザー 関連の基盤化 他社IPゲーム
Slide 37
Slide 37 text
基盤に熟練しなければ基盤をうまく利用できない 課題②への対応
Slide 38
Slide 38 text
基盤に熟練しなければ基盤をうまく利用できない 基盤開発者がプロジェクトに入り込んで導入のサポートをする 課題②への対応 プロジェクト 基盤 基盤開発者
Slide 39
Slide 39 text
Figmaインポーターの例 • Figmaのデザインをインポートするための基盤 • 導入したら終わりというわけにはいかない 設定の調整 プロジェクト独自のカスタマイズ Figmaデザインのルール決め ワークフローの整備 メンバーへの布教 レイアウト情報 + 画像 プラグインで出力 プレハブ構築
Slide 40
Slide 40 text
• 導入の中での気づき プラグイン公開フローが煩雑 特定の条件でのバグや機能不足 動作が遅くてストレス • 多くの機能追加や改善を実施! • 導入経験を踏まえてドキュメントを整備 Figmaインポーターの例
Slide 41
Slide 41 text
基盤開発者が正確に需要を理解しなければいけない 課題③への対応
Slide 42
Slide 42 text
基盤開発者が正確に需要を理解しなければいけない 基盤開発者がプロジェクトに密接に関わり続ける 課題③への対応 • 定例への参加 • 座席でのコミュニケーション • 徹底的なドッグフーディング • たまに機能開発のタスクを持っても良い プロジェクト プロジェクト メンバー 基盤開発者
Slide 43
Slide 43 text
Titanの例 基盤開発者+プロジェクト側+デザイナー 定例を行い、実際の利用者から要望を受け、開発した機能の紹介、フィードバック → 基盤に必要な機能を随時すり合わせる
Slide 44
Slide 44 text
開発スタイルが異なると踏み込んだ基盤を作れない 課題④への対応
Slide 45
Slide 45 text
開発スタイルが異なると踏み込んだ基盤を作れない 課題④への対応 プロジェクト内での開発スタイルの統一 プロジェクトを跨いだ開発スタイルの統一 組織の文化へ…
Slide 46
Slide 46 text
プロジェクト内での統一 IDEのフォーマット統一 静的解析の整備 プルリクエスト時のテスト
Slide 47
Slide 47 text
複数のプロジェクトの経験を経て、開発スタイルを洗練・収束させる プロジェクトを跨いだ統一 プロジェクトA プロジェクトB プロジェクトC プロジェクトD
Slide 48
Slide 48 text
重要なポイント • 今までの流れに沿った進化を心がける • 横断組織が各プロジェクトを見守る • プロジェクト間での技術共有をあらゆる手段で行う Unity共有会 Unity勉強会 • 組織内でのコンセンサスを取る プロジェクトを跨いだ統一
Slide 49
Slide 49 text
組織の文化へ… • 基盤と文化の循環 • 基盤の市民権をいかに得るか 基盤を活用することが開発にとってプラスになるという認識を 職種問わず作る 基盤・基盤開発者に対する信頼を積み重ねていく • 「他のプロジェクトのために」という発想を当たり前にする 持ちつ持たれつの関係を作る 基盤 文化
Slide 50
Slide 50 text
課題⑤への対応 基盤の開発・運用が属人化しがち
Slide 51
Slide 51 text
課題⑤への対応 基盤の開発・運用が属人化しがち • 作った基盤が安定するまでしっかり面倒を見る • プロジェクト側にも基盤の思想や実装を理解したメンバーを作る • 基盤を開発できるメンバーを増やす
Slide 52
Slide 52 text
テックリレー グループごとに技術を伝承しつつ、基盤に機能追加したり新たな基盤の開発を行う テーマA テーマB テーマC … 元々の基盤のメンテナー or 基盤開発に慣れている人 その基盤に興味がある人 or 基盤開発に慣れていない人
Slide 53
Slide 53 text
基盤作りのハードルを下げる • 命名で悩まない quaunityというprefix • 提供方法で悩まない Unipackの存在とpublishの簡略化 • コミットを歓迎する 特に製品に乗らない機能は多少完成度が低くても良い 細かな便利ツールを集めたquaunity-toolsは特にハードルを緩くしている
Slide 54
Slide 54 text
4 まとめ
Slide 55
Slide 55 text
5つの課題とその対応 色々な対応をしてきたが、基盤のドキュメンテーションなど、まだまだ課題も… クオリティ 使い方 需要の把握 開発スタイル 属人化
Slide 56
Slide 56 text
基盤開発の面白さ 1つの基盤が大きな成果に繋がることも ゲーム・エンターテイメント事業部
Slide 57
Slide 57 text
基盤を利用する皆さんへ こんな声がもらえると嬉しい ちょっと 使ってみたよ! このあたりで つまづいた… この機能を よく使ってる!
Slide 58
Slide 58 text
千里の道も一歩から • 今できることから始める 技術共有会 プロジェクト内のルール整備 • 積み重ねることで、組織の当たり前へ
Slide 59
Slide 59 text
ありがとうございました