最適化
この記事でのバージョン Unity 2021.3.4f1 ProjectAuditor 0.9.0-preview はじめに 今回はProjectAuditorというUnityプロジェクトを解析し、改善点を教えてくれるツールの紹介です!ちなみに無料(MITライセンス)で使えます……! Project Auditor is an experi…
はじめに ちょっと前にあのサイバーエージェントが『Unity Performance Tuning Bible』というUnity製ゲームのパフォーマンスを最適化する方法を体系的に学べる書籍(のPDF)をなんと無料公開&オープンソース化しました! ちなみにダウンロードはGitHubのリリー…
この記事でのバージョン Unity 2020.3.25f1 はじめに Unityにはオクルージョンカリング(Occlusion Culling)というカメラに映ってないオブジェクトは描画しない負荷削減のための機能があります。 イメージとしては以下のような感じで負荷削減の効果も高く、3D…
この記事でのバージョン Unity 2020.3.25f1 はじめに Unityである程度の規模の物を作っていると問題になってくるのが、コードを変更した後の待ち時間です。コンパイルやドメインリロードを行うため、ある程度の時間はしょうがないのですが、あまりに長くなる…
この記事でのバージョン Unity 2020.3.25f1 はじめに 今回はEditor Iteration Profilerというコンパイル後やUnity再生開始時のリロードで時間がかかっている所、いわゆるボトルネックを可視化するツールの紹介記事です!ちなみにUnity公式から提供されていて…
この記事でのバージョン Unity 2020.3.25f1 はじめに 今回はCompilation Time Visualizerというアセンブリごとのコンパイル時間を計測&可視化および依存関係の確認まで出来るツールの紹介記事です!ちなみにMITライセンスで公開されているので無料で使う事が…
この記事でのバージョン Unity 2018.4.6f1 はじめに 公式でUnityのお役立ち情報を配信しているUnity for Proというサイトがあるのですが、(ライセンスのProではなく、実務で使えるという意味でのPro) その中の「Unity UI の最適化に関するヒント」といういか…
この記事でのバージョン Unity 2018.3.4f1 はじめに GameObjectにはTagが設定でき、そのTagを比較して判別するという事はよくありますが、 var isPlayer = gameObject.tag == "Player"; 実はCompareTagというメソッドを使って比較する事も可能で、しかもComp…
この記事でのバージョン Unity 2018.2.17f1 はじめに UnityでUIを実装するための機能であるuGUIは、以下のような仕組みを持っています。 どうもCanvasは一度Canvas内のUI(CanvasRenderer)を収集しビルドする(一つのメッシュ化する)事でパフォーマンスの…
この記事でのバージョン Unity 2017.4.0f1 はじめに Unityで当たり判定を実装する時にはCollider(2D)を使いますが、Colliderを複数付けたい場合に、一つのGameObjectにColliderをまとめて付けた場合と ColliderごとにGameObjectを分けた場合とで、 負荷の差…
この記事でのバージョン Unity 2018.1.0b8 はじめに Unity2018からPackage Managerというツールが追加されました。 ようはUnity自体をアップデートせずに一部機能をアップデート出来たり、必要に応じて機能を追加出来たりするみたいです。 これを使うとAnima…
この記事でのバージョン Unity 2017.3.1f1 はじめに Unityには公式のチュートリアルがあるのですが、その中にResourcesフォルダのベストプラクティスなるものを発見し、気になったので勉強ついでに記事にしてみました! なお、ベストプラクティスとは最も効…
この記事でのバージョン Unity 2017.2.0f3 はじめに GameObjectの有効無効を切り替える時にはSetActiveを使いますが、 既に無効になっているGameObjectに対して、SetActive(false)を実行した場合にどの程度の負荷が発生するのかって気になりませんか?なんか…
この記事でのバージョン Unity 2017.1.0f3 はじめに 今回はTransformの最適化を行い、負荷を軽減しようというお話です。 なお、『Unite 2017 Tokyo』の「Unity最適化講座 ~スペシャリストが教えるメモリとCPU使用率の負担最小化テクニック~」の前半部分を…
この記事でのバージョン Unity 2017.1.0f3 はじめに 今回は『Unite 2017 Tokyo』の講演の動画を見て、要点をまとめたり、追加で調べたり、実際に手を動かしたりしながら、記事にもしちゃおうという感じの記事です。 そして、題材にする講演は、「最適化をす…
この記事でのバージョン Unity 2017.1.0f3 はじめに 今回は『Unite 2017 Tokyo』の講演の動画を見て、要点をまとめたり、追加で調べたり、実際に手を動かしたりしながら、記事にもしちゃおうという感じの記事です。 そして、題材にする講演は、「最適化をす…
拡張メソッドとは この記事でのバージョン Unity 5.6.1f1 はじめに enumのToStringは遅いという話を耳にしたので、気になって調べてみた系の記事です!ちなみに、以前にenumをkeyにしたDictionaryが遅いという話も記事にしてました。 そもそものenumのToStri…
この記事でのバージョン Unity 5.4.0f3 はじめに c#のenumは遅いという話を耳にしたので、気になって調べてみた系の記事です! そもそものc#のenumは遅いという由来は以下の通り。 enumは糖衣構文です。実態はclass Enumです。 糖衣構文……?知らぬ存ぜぬ。と…
この記事でのバージョン Unity 5.2.2f1 Personal Xcode 7.1 はじめに ある時、作ってるゲームのメモリ使用量を確認したらえらい事になっていました。 使用メモリ 331MB 主な原因はテクスチャで、単純に量も多いしサイズも大きかったのですが、色々と改善した…