Akatsuki Hackers Lab | 株式会社アカツキ(Akatsuki Inc.)

Akatsuki Hackers Labは株式会社アカツキが運営しています。

アカツキゲームスのサマーインターンシップ (Unity / C#) に参加しました

はじめまして。今回アカツキゲームスのサマーインターンシップに参加させていただきました、瀬戸と申します。Unityでゲームを作ったりしている大学3年生です。

 

期間は2021/9/6 (月)〜2021/9/30 (木)の約4週間、オンラインで参加しました。コースはUnity / C#で、普段から触っていて馴染みのある環境ではありましたが、実際のモバイルゲーム開発の現場に参加するのは初めての経験なので、初日は大層緊張していました。

 

取り組んだこと

今回私が参加したのは『八月のシンデレラナイン』(以下ハチナイ)プロジェクトで、新規機能開発やバグ修正を担当しました。それぞれのタスクについてご紹介したいと思います。

タイトルアニメーションのボイス再生機能

f:id:noboru_seto_aktsk:20210930155941p:plain

 

ハチナイのタイトル画面では、イベントの開催等に合わせて期間限定の特別なアニメーションが再生されます。その中には選手のボイスが再生されるものがあるのですが、実はこれまでボイスはBGMに埋め込まれており、一体化した音声ファイルとして再生されていました。これにより、タイトルアニメーションをスキップした後もボイスが再生され違和感を生じることがあったり、管理上の不都合が生じることがありました。

今回の修正ではタイトルBGMとボイスの音声データを分離し、別々に管理できるようにする改善を行っています。

 

実装そのものは比較的スムーズに進みました。しかし、この機能は今後のタイトルアニメーション制作のワークフローに関係してくるという点でちょっと大変です。新しいタイトルアニメーションにボイスを入れ込む際の手順はどうなるのか、その音声データはどうやって管理するのか……「実装しておしまい」というわけにはいかず、関係者との相談が不可欠です。「エンジニアにとって大切なのはコミュニケーション能力」とはよく聞く話ですが、なるほど、これが……と思いながら作業を進めていました。

 

現時点でワークフローの見通しが立っていないのでリリース時期は未定です。

 

タイトルアニメーションが更新されないことがある不具合の修正

二つ目は不具合修正です。これまたタイトルアニメーション関係で、特定の条件下で期間限定のアニメーションに切り替わらない不具合の調査と修正を行いました。

この不具合の修正には、Unityがサーバーからアセットを取得するシステムについての知識が必要でした。よくスマートフォンゲームを遊んでいると、アプリストアからアプリをダウンロードし、ゲームを起動した後に「データダウンロード」のような処理を目にすることがあると思います。ハチナイにおいてもそのような仕組みが使われています。しかし、こういった仕組みは個人規模の開発ではまず必要とされないもので、私はあまり使用した経験がありませんでした。これに関しては特に勉強することが多く、頭を悩ませるものでもありました。

 

アイテムの詳細表示機能

三つ目はアイテムの詳細表示機能です。アイテムアイコンを長押しすると、アイテムの名称・所持数・説明文が表示されるようになりました。

f:id:noboru_seto_aktsk:20210930181852p:plain

※画面は開発中のものであり、実際の仕様とは異なる場合があります

これまで、報酬や素材のアイテムが表示される箇所では、アイコンが表示されるのみで何のアイテムを指しているのかわかりにくいことがありました。

この機能ではアイテムの所持数などの詳細情報をその場で確認することができ、利便性が向上しています。おそらく今回担当したタスクの中では最もプレイヤーにとってのインパクトがあるものだと思います。

こちらのタスク、概ねの機能は完成したのですが、残念ながらインターン期間中に全てを実装し終えることはできず、残りの作業は引き継ぐ形となりました。今回のインターンで悔やまれるポイントです。

 

得たもの

既存のプロジェクトに参加する大変さと面白さ

ハチナイはサービス開始から4周年*1を迎えたプロジェクトであり、あらゆる作業が既存の巨大な実装を読み解くところから始まります。古いコードもあれば、新しいコードもあり、それらを読み解いた上で、どこに何を足せば目的を達成できるのかを把握する必要がありました。また、既存の動作を壊さないように注意する必要もあります。この作業は大変でしたが、パズルのような面白さもありました。

大規模なチーム開発の経験

私の普段の開発は単独か少人数チームでのものがほとんどで、GitHubはほとんどバックアップ用にしか使ったことがありませんでした。プルリクエスト、レビュー、マージ……これらの概念に触れることはほとんどなく、ドキドキしながらプルリクエストを送りました。幸運にもインターン期間中にマージされたものもあり、リリースを見届けることもできました。とても嬉しかったです。

 

最後に

スマートフォンゲームの開発の現場を初めて体験し、個人開発の経験に対して、現場のチームでのゲーム開発がどんなものかを知ることができました。

初めてのことばかりで、発見が多く、刺激的な4週間だったと思います。

受け入れてくださった皆様、本当にありがとうございました!

*1:※2021年現在