ドラゴンスマッシュのクライアント開発環境のご紹介

はじめまして!ゲーム事業にてUnityエンジニアをしている半沢です。 ゲーム事業では複数のタイトルの開発・運用が行われているのですが 今回は、現在運用中のタイトルであるドラゴンスマッシュについて、 主にクライアント周りの開発環境をご紹介させていただきます。

開発ツール

まずは、開発ツールの全般を紹介させていただきます。

開発エンジン

ドラゴンスマッシュにおいてはUnityを使用して開発しております。

IDE

基本的には各自好きなものを使用してOKですが、 だいたいの方が以下の2つを使用しております。

CI

CIにはJenkinsを使用しております。

コード管理

サーバーエンジニアやデザイナーも含む全員がGitHubを利用しております。

Unityについて

クライアントはUnityを主要エンジンとして開発を行っているのですが こちらで使用している機能やアセットを紹介させていただきます

主要機能
  • バージョン:2019.4.23f1
  • uGUI
  • Addressable Asset System
主要アセット
PlayMaker

主に画面単位で全体のシーケンス管理に使用しております。
PlayMaker - Visual Scripting for Unity

SRDebugger

実機時のログ確認やデバッグ機能など主にデバッグの用途に使用しております。 QAや開発用のデバッグ機能の追加がかなり容易です。
SRDebugger | Stompy Robot

SparkGear

ゲーム内の主にバトル内でのエフェクトを リッチに軽量に再生するために使用しております。
SPARK Inc.

Spine

ゲーム内のキャラクターSDに使用しております。 ボーンアニメーションアセットとして機能が豊富で実績も多いためこちらを選択しました。
Spine:ゲーム用2Dアニメーションソフトウェア

EnhancedScroller

様々な画面のスクローラーとして使用しており、 こちらのアセットを使用することで要素が多い場合も、 オブジェクトを使いまわされるようになり負荷軽減されるようにしています。
EnhancedScroller | Echo17

Vivox

リアルタイムギルドバトル時のボイスチャットに使用しております。 Unityのサービスの1つということでUnityとの親和性も高く基本的な事はSDKを導入するだけで使用する事ができました。
In-game voice and text chat from Vivox | Unity Multiplayer Services

Photon BOLT Pro

バトルのリアルタイムシステムの基盤ライブラリとして使用しております。
Photon BOLT EngineはSteamとPCに対応しています | Photon Engine

こちらの記事にて事例紹介がございますので是非ご覧ください。 techblog.reazon.jp

終わりに

今回はドラゴンスマッシュのクライアントの開発環境の全般についてご紹介させていただきました。 今回紹介させていただいた機能やアセットまた、プロジェクト独自の機能などもあるので 別の機会にそちらの紹介もさせていただきたいと思います。

ドラゴンスマッシュは日々運用・開発・改善を行っており 今後新しい機能やアセットなどを使用していくことにもなっていくと思います。 このような環境で一緒に作り上げてくれる仲間を募集中です! まずはカジュアルにお話を、という形でも結構ですので是非お気軽にご応募ください!

reazon.jp