見出し画像

合宿でUnityをアップデートしてみた REALITY Advent Calendar 2023

この記事は REALITY AdventCalendar 2023 の 23日目の記事です。

こんにちは、REALITY の Unity チームの虹ゴリラです。
今年の 3月ぐらいに Unity 2022.2 にアップデートした話を書かせて頂きましたが、現行版で発生している不具合諸々の都合などにより「そろそろアップデートしたいよね」と言う声が上がっていました。

そこで今回は合宿期間中に Unity 2022 LTS (今回上げたのは 2022.3.13f1 ) にアップデート出来ないか?検証を進めてみることにしました。
とは言え合宿期間は限られているため、今回は手早く検証を進めるための Tips についていくつか紹介していければと思います。

バージョン選定と更新内容の把握

アップデートを行うに当たっては「どのバージョンに上げるのか?」を選定し、更に更新内容を把握する必要があります。

とりあえずは IssueTracker や Release Notes などから「特定の不具合修正が入っているか?」「他に影響がありそうな変更が入っていないか?」と言う観点で確認していくことになりますが、バージョン差が開いてしまっていると Release Notes 全てに目を通して把握していくのは大変です。

RELEASE NOTES (ALPHA) を利用

そこで今回は社内 Slack で知った RELEASE NOTES (ALPHA) を活用しました。

こちらを用いれば Release Notes にあるバージョン間の更新差分を列挙しつつ、カテゴリごとにフィルタリングすることが可能となるので、1つ 1つに目を通さずとも全体把握が容易となりました。

名前からも分かる通り `Alpha` と付いているので、機能自体は α版に当たるのかと思われます。
ただ、特に挙動不安定な点も見受けられなかった上に、いくつかのバージョン間で結果と Release Notes を確認して抜け漏れ等も無さそうだったので、そのまま採用してみてます。

前回の知見をフル活用

前回のアプデ時には記事でも紹介した通り、「"機械的に発生する変更差分を管理するブランチ" と "コード修正差分などを管理するブランチ" で分ける」「次のアップデートに備えてドキュメントを残しておく」と言った対応を行いました。

詳細については前回記事の「作業中のブランチ運用」「次のアップデートに備えてドキュメントを残しておく」の章を御覧ください。

主に自分が仕込んだ物ではありましたが、これにより、前回アプデ時に入れたワークアラウンドの消去やプロジェクト特有のアプデに必要なコード / ツール修正作業と言ったタスクを高速で終えることが可能となりました。

特にアプデ作業は特別な事情が無い限り、基本的には期間が長く空いた状態で作業に入る形となるかと思われるので、こういった形に情報をわかり易く残しておくことは次のアプデの大きな助けになることを実感しました。

やってみて

とりあえず合宿の成果としては「 iOS / Android ともにローカルビルドを完了させ全体的に動作する」ところまで持っていくことが出来ました。

合宿期間もあってエージングテストと言った時間を要する物までは検証できていませんが、アプデ時の問題の先行調査という観点では精度の高いフィジビリティまでは確認できたかなと思います。

おわりに

前回に引き続き、2回連続で Unity アプデについて書いてしまうことになりました。
なので次こそは別の話題について書けたらと考えています。

明日はチュイさんの「字幕&翻訳機能を作って世界中の配信を聞いてみよう」です!お楽しみに!