プロジェクト設定ファイルは、Substance Designerの設定に使用される最も複雑で拡張性の高いファイルです。 これらは、複数のプロジェクト構成ファイルを使用できるという点で特別です。この場合、それぞれの次の "子"プロジェクトは前の "親"プロジェクトを展開またはオーバーライドします。 明示的に必要な場合を除き、設定を変更したりプロジェクトファイルに追加したりしないでください。Designerはその親設定、またはデフォルトに戻すことができます。
デフォルトでは、Designerには2つのプロジェクト設定がアクティブになっています。
- Default Project
すべてのデフォルト設定とフレッシュインストールに付属するDesignerライブラリが含まれます。
読み取り専用。変更や削除はできません。 - User Project
Defaultは読み取り専用なので、ユーザによる変更はデフォルトでこのプロジェクトに入ります。 削除できません。
この基本設定では、Default Libraryやその他の設定が破損したり変更されたりしないようにしながら、単一のアマチュアユーザーが複雑な設定に煩わされることなく独自の変更を加えることができます。
拡張または上書き
連続したプロジェクトのほとんどの設定は、前のプロジェクトの設定を上書きします。 たとえば、カスタムプロジェクトファイル内の別のTangent Spaceプラグインは、DefaultプロジェクトまたはUserプロジェクトで定義されているTSプラグインを上書きします。 つまり、明示的に必要とされていない限り、子プロジェクトの設定を上書きまたは変更しないことをお勧めします。
ただし、設定を上書きするのではなく、親設定を拡張する設定もあります。 最も注目すべきこれらの設定はライブラリのパスとフィルタであり、上書きするのではなく、常にライブラリにコンテンツを追加するというものです。 さらに、拡張するエイリアス(相対ファイルパスのパスキーワード)があり、複製が定義されている場合は上書きします。 これにより、コンテンツのファイルパスと参照を細かく制御できます。
Project File コンテンツ
プロジェクトファイルには次の設定を含めることができます。
- 3D View
デフォルトシェーダ、HDR、シーン状態の定義. - Aliases
相対パスのキーワードエイリアス。 - Baking
ベイクの命名規則設定 - General
グラフテンプレート、Tangent Spaceプラグイン、normalおよび画像フォーマットのデフォルト。 - Library
ライブラリに表示するパス、およびライブラリビューのフィルタとカテゴリ。 - MDL
MDL監視パス - Scripting
コールバックスクリプトとインタプリタ - Version Control
バージョン管理をDesignerに統合するための設定。
プロジェクトファイルの修正
プロジェクト設定は、他のすべてのタイプと同様に、構造化XMLファイルとして保存され( ".sbsprj"拡張子を使用して)、Designer UIまたは外部のテキストエディタを介して変更できます。
スタジオ用のプロジェクトファイルを作成する場合、推奨されるワークフローはuser_projectから開始することです。 UIでそれを修正を開始し最初の基本設定を行ってから、Notepad ++のようなテキストエディタで編集して、編集者がファイルの内容を完全に理解できるようにします。
(特に相対パスの場合、これは重要です)。
唯一の例外はライブラリフィルタの定義です。これはテキストエディタでは煩雑になるためです。 関連ページをご覧ください。
設定メニュー
通常のDesignerの[Preferences]メニューにアクセスします。 Edit > Preferences...を選択し、左側の[Projects]セクションをクリックします。
[Project Files]の下で、変更するプロジェクトファイルを選択します。下半分では、タブを使用して関連する設定セクションに移動し、値を変更します。
XMLを外部で編集する
Windowsの場合はNotepad ++をお勧めします。OSXの場合はSublime Text 2を選択してください。 ただし、適切なインデント、セクションの折りたたみ、および何らかの形式の構文強調表示を備えたエディタであれば、作業がずっと楽になります。
SBSPRJファイルをエディタで開くと、UIのタブに対応するセクションがあり、かなりわかりやすい構造化されたレイアウトが表示されます。 それはかなりわかりやすいため、すべての設定がここで文書化されるわけではありません。
相対パスとエイリアス
エイリアスと組み合わせた相対パスは、プロジェクト構成の中で最も複雑でありながら最も重要な部分の1つです。このセクションでは、それらを明確にします。
複数のユーザーのPCにまたがるシステム内の他のファイルを参照するファイルの大きな問題の1つは、絶対ファイルパスが機能しないことです。 ユーザーは自分のSVNリポジトリを全く異なる場所に定義することができます(例:C:/ John / Gamedev / SubstanceLibraryまたはD:/ Dev / SubstanceLibrary)。 エイリアスと相対パスは、この問題を解決するために連携して機能します。 それ以外の場合は、他のユーザーのファイルを開いて、ユーザーがローカルに持っていた特定の場所で使用されているカスタムノードを検索しようとします。おそらくこれは完全に同じ方法では定義できません。
エイリアスは、パス(の一部)を置き換えるキーワードです。 これは%TEMP%のようなWindows環境変数に似ています。ここでは、よく使われるパスを単一の単語で置き換え、それを中央で定義します。 利点はいたるところでパスが単純化され、このパスを移動することにしたときにすべての参照を一度に変更する方法です。
Alias サンプル
デフォルトライブラリはデフォルトでC:¥Program Files¥Allegorithmic¥Substance Designer¥resources¥packagesにあり、デフォルトのコンテンツを使用するすべてのグラフはこのディレクトリを参照します。 フルパスを参照する代わりに、 "SBS"のエイリアス(引用符なし)が定義されています。 デフォルトライブラリの場合、SBSパスの正確な値はインストール時にユーザーがSubstance Designer用に選択したディレクトリに設定されます。
エイリアス付きのパスが含まれている場合、内部的に参照は次のように修正されます。
C:\Program Files\Allegorithmic\Substance Designer\resources\packages\blur_hq.sbs => sbs://blur_hq.sbs
相対パスは、常にそれらが定義されているファイルからの相対パスです。 これは、設定ファイル(Config file)の現在の場所がパスの大部分を決定することを意味し、Aliasパスは、ほとんどサブフォルダを追加することによって、それに基づいて作成されます。つまり、sbsprjファイルを見たいフォルダの隣に置くことを強くお勧めします。
例えば、C:/Versioncontrol/Substance/ containingにCustomProject.sbsprj とノードを含む2つのフォルダ/Baseと/Tools を含むリポジトリを作成します。
BaseとToolsの2つの相対エイリアスを定義するには、SBSPRJファイル内で次のようにします。
この設定ファイルの結果は次のとおりです。
BaseAlias://はC:/ Versioncontrol / Substance / Base /になり、ToolsAlias://はC:/ Versioncontrol / Substance / Tools /になります。
C:/ Versioncontrol / Substance /だけを定義したい場合は、パスは "file :."としてリストされます。ドットはファイル自体の場所を表します。