Upgrade to Pro — share decks privately, control downloads, hide ads and more …

アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜

gree_tech
November 11, 2021

アナザーエデンPC版リリースへの道のり 〜WFSにおけるマルチプラットフォーム対応の取り組み〜

GREE Tech Conference 2021 で発表された資料です。
https://techcon.gree.jp/2021/session/Session-7

gree_tech

November 11, 2021
Tweet

More Decks by gree_tech

Other Decks in Technology

Transcript

  1. • 氏名 • 梅木 隼 • 経歴 • 2014年から Wright

    Flyer Studios にて ネイティブゲームの開発運営を担当。 • アナザーエデンでは、クライアント開発、 ビルドパイプライン開発などに従事。 (過去エンジニアマネージャー、 メインプログラマーなども担当) 自己紹介(1/2) 2
  2. • 氏名 • 森 雅希 • 経歴 • 2019年にグリー株式会社に新卒入社しアナ ザーエデンチームに配属。

    • クライアントエンジニアとしてクライアン ト開発から運用効率化まで幅広く担当。 現在はビルドパイプラインを担当。 自己紹介(2/2) 3
  3. アナザーエデンの紹介 6 ゲームジャンル シングルプレイ専用RPG リリース 2017/04/12正式公開 配信エリア 日本, アジア(※), 北米,

    欧州 配信言語 日本語, 英語, 韓国語, 中国語(繁体字, 簡体字) 配信端末 iOS, Android, Windows/Steam(海外), Windows/自社配信(国内・開発中) ※中国国内向けはX.D. Network Inc.より配信
  4. アナザーエデンPC版リリースの経緯 8 市場背景 • モバイル向けゲーム • グラフィックのリッチ化 • 開発の大規模化・開発費の高騰 •

    PCゲーム配信PFの盛り上がり 新たなユーザー獲得チャネルの開拓 • 国内市場からグローバル市場へ • モバイル以外のプラットフォームへ
  5. アナザーエデンのこれまでの歩み アナザーエデンPC版リリースの経緯 9 2017年4月 2021年3月 2021年4Q 2019年1月 国内モバイル版サービス開始 (iOS/Android) 海外PC版サービス開始

    (Windows/Steam) 海外モバイル版サービス開始 (iOS/Android, アジア※/北米/欧州) ※中国国内除く 国内PC版 サービス開始予定 (Windows/自社配信)
  6. • ゲームエンジン • Cocos2d-x + 独自拡張 • C++ • OpenGL

    • スクリプト • Lua アーキテクチャ・技術スタック/クライアント 11 • アニメーション • Spine • エフェクト • LWF(Lightweight SWF) ※GREE開発/オープンソースのアニメーションエンジン • ムービー • CRI Sofdec
  7. アーキテクチャ・技術スタック/サーバー 12 • 開発言語 • PHP • インフラ環境 • AWS

    • EC2 • S3 • Dynamo DB • 管理サイトフロントエンド • React
  8. アーキテクチャ・技術スタック/その他 13 ビルドパイプライン/CI • Jenkins • 開発言語 • Python •

    Golang その他 • セットアップ自動化 • Ansible • 定形業務自動化 • Google Apps Script
  9. ゲームエンジン/Cocos2d-x 16 • Cocos2d-x 対応OS • iOS, Android, Win32, …

    • OpenGL & GLFW • キーボード対応 • ウィンドウ管理 • フルスクリーン対応 • 必要なコードを最新バージョンからバックポート
  10. • Sentry • エラーログ集積サービス • 多くのプラットフォームに対応 • パフォーマンス情報の分析なども可能 • アプリビルド時にシンボル情報を

    Sentry へ送信 • クラッシュ時のメモリダンプ、サーバーへの送信処理 • Google Breakpad (Minidump) + 独自実装 クラッシュレポート収集 25
  11. 共通基盤Gamelibによる決済システム 26 • ネイティブゲーム向け共通基盤 Gamelib SDK • Game Platformチームにて開発 •

    主な機能 • ユーザー認証 / 課金 / SNS連携 / モデレーション etc... • 対応OS • iOS / Android / Windows • 対応ゲームエンジン • Cocos2d-x / Unity / Unreal Engine
  12. 共通基盤Gamelibによる決済システム 27 • 対応PF(課金) • App Store (Apple) / Google

    Play / Amazon Store • DMM GAMES / Steam ポケラボ DMM GAMES 対応プロダクト
  13. • Inno Setup を使用 • 各コンポーネントのインストール • ランチャー(後述) • ランタイムライブラリ

    • アンチチートカーネルドライバ • exe ファイルとしてパッケージ化 • S3へアップロード • 公式サイトから配布 自社配信/インストーラー 29
  14. • ランチャーの役割 • 初回のゲーム本体インストール • 自動アップデート • ゲーム本体 • ランチャー自身

    • ゲーム本体とは別アプリ • .NET5 + WPF を使用 自社配信/ランチャー 30
  15. 自社配信/ランチャー 31 ランチャー起動 アップデート 要否 ランチャー/ゲーム本体 アップデート ゲーム本体起動 必要 不要

    • 自動アップデート • ユーザーにはできる限りランチャーの存在を意識させない
  16. 33

  17. 34

  18. 35

  19. 36