Created on | Updated on

プロジェクトファイルが大きくなりすぎる

参照 https://docs.substance3d.com/spdoc/projects-are-really-big-141524994.html

Substance Painterプロジェクトは非常に大きく、多くのディスクスペースを使用する可能性があります。 このページでは、それを緩和する理由と方法について説明します。

 

プロジェクトにはどのようなリソースが保存されますか?

テクスチャリング中に使用されるすべてのアセットまたはリソースは、プロジェクトファイルに保存されます。これには次のものが含まれます。

  • ソースメッシュ(元のファイルではなく、処理されたファイル)
  • ベイクしたメッシュマップ
  • マテリアル(Substance Materialsのようなもの)
  • レイヤー/プリセット/ブラシストロークで使用されるビットマップなどのリソース。

ベイク時に使用したハイポリメッシュはプロジェクトに含まれていません。 それらはプロジェクトにリンクされているだけです。

プロジェクトに多くのリソースが保存されるのはなぜですか?

使用されたすべてのリソースを保存することで、プロジェクトは完全に自律的になり、あるコンピューターから別のコンピューターに簡単に移動できます。 主な欠点は、ディスク上の潜在的に大きなファイルフットプリントです。

プロジェクトファイルにすべてを埋め込むという決定は、すべてが非破壊的であるという事実に基づいています。 これは、プロジェクトを再度開くと、プロジェクトが「再構築」されることを意味します。 単一のブラシまたはマテリアルがシェルフから欠落している場合、プロジェクトが破損し、正しく再生成できなくなる可能性があります。 リソースの複製を保存することで、プロジェクトが保存されたとおりに復元できるようになります。

プロジェクトのサイズを縮小する方法はありますか?

プロジェクトのサイズを小さくするには、いくつかの方法があります。

未使用のリソースを消去する

プロジェクトで多くのリソースを使用する場合、Substance Painterはそれらをコピーします。 たとえば、アルファを使用して何かをペイントした場合など。 アルファがペイントされたときに後でレイヤーを削除した場合、Substance Painterはリソースを自動的に削除しません。

使用されていないリソースを削除するには、「File」メニューの「Clean」アクションを使用します。 次に、プロジェクトを保存します(これにより、リソースが実際に削除されます)。

プロジェクトでまだ使用されているリソースは削除できません。 これは、無効なテクスチャセットが引き続きリソースを参照し、それらが削除されないようにすることを意味します。 これを回避するには、Texture Set reassignmentウィンドウで無効なTexture Setsを削除します。

テクスチャセットの解像度を下げる

プロジェクトを保存すると、テクスチャセットのレイヤースタックの最終結果がプロジェクトに保存されます。 これにより、テクスチャセットを再計算せずにプロジェクトを再度開いたときに、ビューポートでプレビューを保持できます。 ただし、テクスチャセットの解像度が大きいほど、プレビューキャッシュは大きくなります。

キャッシュのフットプリントを削減するには、解像度をたとえば512などの低い数値に変更するだけです。 Substance Painterは非破壊的であるため、この解像度は品質を損なうことなく後で変更できます。

プロジェクトを圧縮する

プロジェクトを段階的に(CTRL + Sを介して)保存すると、プロジェクトファイルのアーカイブが断片化する可能性があります。 重大な問題ではありませんが、これによりプロジェクトファイルに空き領域が生じ、サイズが大きくなる可能性があります。

[File]メニューの[Save and Compact]機能を使用して、プロジェクトを再保存し、無駄な空きスペースを削除します。 この保存アクションは、通常の保存よりも長くなりますが、ファイルのフットプリントを大幅に削減できます。

ベイク処理されたメッシュマップのサイズを小さくする

一般的に、プロジェクトがディスク上でこれほど多くのスペースを占有する最大の原因と理由は、ベイク処理されたメッシュマップが多く、それ自体が大きいためです。

メッシュマップのサイズを小さくするには、いくつかの方法があります。

  • より低いベーキング解像度を使用します。
    ノーマルマップは4Kでベイク処理するメリットがある場合がありますが、カラーグラデーションされたPositionマップ等は多くの場合、それほどメリットはありません。 2つの異なる解像度で2回にわけてベイクし、異なるファイルサイズを混合します。

  • テクスチャをエクスポートし、フットプリントを手動で削減します。
    デフォルトでは、Substance Painterはすべてのテクスチャを16ビットのRGBAイメージとしてベイク処理します。これには、アンビエントオクルージョンなどのグレースケールベイク処理が含まれます。

    ベイクテクスチャのフットプリントを削減するには、下記手順を段階的に使用します。
    1. Bakerウィンドウで「Apply Diffusion」設定を無効にします
    2. 「Dilation With」を適切な値に設定します(たとえば、2048解像度の場合は32ピクセル)
    3. すべてのテクスチャを同じ解像度でベイクします
    4. エクスポートプリセット「Mesh Maps」を使用して、Paddingを「No padding (passthrough)」に設定し16ビットPNGとしてベイク処理されたテクスチャをエクスポートします。
    5. 写真編集ソフトウェアまたはSubstance Designerで各マップを開きます
    6. 適合していると思われるテクスチャの解像度を下げます。 Ambient Occlusion、 Curvature、Thicknessをカラーからグレースケールに切り替えてください。
    7. 新しいテクスチャバージョンを16ビットPNGとして保存します。
    8. テクスチャを再インポートし、Texture Set sの設定で元のベイク処理テクスチャに置き換えます。
    9. [File ]メニューの[Clean]アクションを使用して、古いメッシュマップを削除します。
    10. [File]メニューの[Save and Compact a]アクションを使用して、プロジェクトファイルを圧縮します。

    これらすべてのステップの後、プロジェクトのフットプリントを大幅に削減される可能性があります。

メッシュマップが少なくとも16ビットテクスチャのままであることが重要です。 8ビットテクスチャはフットプリントが小さい場合がありますが、スマートマテリアルとマスクジェネレーターにアーティファクトが発生します。 PNGはロスレス圧縮形式であるため、アーティファクトを導入せずにテクスチャを圧縮し、16ビットもサポートするため、PNGをお勧めします。

 

問題が解決しない場合は、Born Digital サポートまでお問い合わせ下さい。

※ 問い合わせ対応はBorn Digitalより製品をご購入頂きましたお客様のみのサービスとなります。ご了承下さい。
サポート問い合わせ