web-dev-qa-db-ja.com

ユニティビルドのメリット/デメリットは?

新しい会社を始めて以来、私たちのソリューションの大部分でUnityのCPPファイルを使用していることに気づきました。なぜ、どのようにしてビルドプロセスを高速化するのかについて、明確な理由を誰かが私に与えることができるかどうか疑問に思っていましたか?ユニティファイルで1つのcppファイルを編集すると、それらすべての再コンパイルが強制されると思いました。

32
Stowelly

非常によく似た質問と良い回答がここにあります: #include all .cpp files into a single compilation unit?

要約すると、I/Oオーバーヘッドが少ないことが主な利点であるようです。

上記の質問でリンクされている The Magic Of Unity Builds も参照してください。

31
akent

Lee WinderがUnityビルドの体験を投稿しました- The Unity of Unity Unity Builds

彼の結論は:

Unityビルド。嫌いです。

8
mloskot

冗長な作業が省けるからです。依存関係の冗長な解析とコンパイル。リンクもはるかに複雑です。エクスポートをすべて1つのオブジェクト(またはいくつか)に含めるか、ターゲットのほとんどのオブジェクトファイルにまたがる個別の冗長エクスポートを使用します。オブジェクトが少ないほど、I/Oが少なくなり、リンク時間が短縮されます。設定によっては、インクルードが問題になる可能性があります。私が使用する「ユニティビルド」システムでは、ビルドは最終的にCPUやメモリにバインドされます。

2
justin