本書はUnityアプリケーションのパフォーマンスチューニングで困った時にリファレンスとして活用されることを目指して作成しました。
パフォーマンスチューニングは過去のノウハウが活用できるため、属人化が進みやすい分野であると感じています。未経験の方からするとなんとなく難しそうという印象を持ってしまうかもしれません。それは性能低下の原因が多岐に渡ることが理由の1つでしょう。
しかしパフォーマンスチューニングのワークフローは型にはめることができます。そのフローに従うことで原因の特定は容易になり、その事象にあった解決策を探すだけになります。解決策を模索するときには知識や経験が手助けになるでしょう。そこで本書は「ワークフロー」や「経験からくる知識」を主に学習できるように設計しました。
社内向けドキュメントとして制作予定でしたが、せっかくならたくさんの方に見て頂き、よりブラッシュアップできればと考えています。手に取って頂いた方にとって、少しでも開発の手助けになれば幸いです。
本書はスマートフォン向けアプリを前提とした内容になります。一部の解説は他プラットフォームに当てはまらないものもあるかもしれませんがご留意ください。また本書内で利用するUnityのバージョンは、とくに断りがない場合Unity 2020.3.24f1とします。
本書は大きく分けて3部構成となっています。第2章まではチューニングを行うまでの基礎知識、第3章では各種計測ツールの使い方、そして第4章以降はさまざまなチューニングプラクティスを取り上げます。それぞれの章は独立しているため、自身のレベルに合わせて必要な箇所のみ読み進めていくのもよいでしょう。次に各章の概要について説明します。
第1章「パフォーマンスチューニングを始めよう」では、パフォーマンスチューニングのワークフローに関して説明します。まずは取りかかるまでの事前準備について解説し、次に原因を切り分けて調査を進めていく方法について解説します。この章を読むことでパフォーマンスチューニングに着手できる状態を目指します。
第2章「基礎知識」では、ハードウェア、描画の流れ、Unityの仕組みなど、パフォーマンスチューニングを行う上で知っておくとよい基礎知識について解説します。第2章以降を読み進めていく中で、知識が不足していると感じたときに読み返すのもよいでしょう。
第3章「プロファイリングツール」では、原因調査に使用するさまざまなツールの使い方を学ぶ事ができます。計測ツールをはじめて利用する際にリファレンスとして活用することを推奨します。
第4章以降の「Tuning Practice」ではアセットからスクリプトまで、さまざまなプラクティスを詰め込んだ内容になります。ここに記載されている内容は現場ですぐに使えるものが多いので、ぜひ一読してみてください。
本書のリポジトリ*1を公開します。随時、加筆修正を行う予定です。またPRやIssueを用いて修正点の指摘や追記の提案が可能です。よろしければご利用ください。
本書に記載された内容は情報の提供のみを目的としています。したがって、本書を用いた開発、製作、運用は必ずご自身の責任と判断によって行ってください。これらの情報による開発、製作、運用の結果について当社はいかなる責任も負いません。