MTの外部ファイル化


 通常、MTに限らず、フィギュアに関する設定は1つのキャラクタファイルに含まれます。
 しかし、'ReadScript'という非公開命令を使うことで、フィギュアの設定を複数のファイルに分散できます。
 つまり、VickyやMichelのようにキャラクタファイルの再配布が制限されているフィギュアでも、必要なカスタムMTの記述のみ外部読み込みさせることで、著作権上の問題を回避しつつカスタムフィギュアを再配布できると言うことです。

 ここでは例としてPOSER4標準女性(ヌード)用フィギュアを用います。
 作成するファイルは(最低)2つ。
 尚、作業が煩雑なため、kim99さんのCR2Builderの利用を前提とさせてもらいます。
※開発の関係でe系列とg系列、h系列が存在しますがg系列かh系列を使用してください。尚、この説明では、CR2Builder02g07を使用しています。

1.MT記述ファイル

(1)POSER上でフィギュアを作成、ライブラリに保存。
(2)POSERを終了、CR2Builderを起動。ターゲットとなるフィギュアを読み込む。
(3)メニューで[LeftTV][LeftTV->RightTV Plus]を選択。
(4)ダイアログを以下のようにする。
CR2Filter4.jpg
(5)必要なMTを除き全て削除する。
CR2_Edit3.jpg
(6)'targetGeo'のツリーを展開、さらに'keys'のツリーを展開。2行目の'k 0 ?'のところを'k 0 0'にする。
CR2_Edit4.jpg
(7)メニューで[RightTV][SaveAs(NotEval)]で拡張子を'pz2'にして保存。

完成はこのようになります。
名前を'ADD_Kazumi.pz2'にすると実際に使用できます。

2.フィギュア作成ファイル

(1)POSER上で作成したフィギュアのポーズをライブラリに登録。'ポーズ設定にモーフチャンネルを追加しますか'というダイアログで'はい'をクリック。
POSER_dialog1.jpg
(2)CR2Builderに読み込む。
(3)(やらなくても良いが)追加するMT以外の記述を全て消す。
CR2_Edit5.jpg
(4)'Version'と'actor 〜'の間に右クリックメニューで[ADD]を選択、1行追加する。
そして、'readScript ":Runtime:Libraries:character:人間:P4女性(ヌード).cr2"'と入力する。
CR2_Edit6.jpg
(5)同様にもう1行追加し、'readScript "ADD_Kazumi.pz2"'と入力。当然、ここは1.MT記述ファイルで作成したファイルを指定する。
[2003.8.1加筆]'readScript ":Runtime:Libraries:character:人間:ADD_Kazumi.pz2"'と入力して下さい。そうしないと、POSER4では動作しません。
CR2_Edit7.jpg
(6)'actor 〜'のツリーを展開、'channels''targetGeo 〜''keys'までの全てのツリーを展開。'keys'の1行目'k 0 ?'が希望の数値(多くの場合、'k 0 1'でよいと思う)になっていることを確認。メニューで[LeftTV][SaveAs(NotEval)]で拡張子を'cr2'にして保存。

完成はこのようになります。拡張子を'cr2'にすることで実際に使用できます。
ちなみに(4)と(5)はどちらが先でも問題ないようです。むしろ、(5)を先にするとMTが先頭に追加される(今回の方法ではMTは一番下に表示される)ので解りやすいかもしれません。

この1.2.で作成したファイルを:Runtime:Libraries:character:以下の任意のフォルダにコピーしてPOSER上から呼び出すとMTが追加された状態のフィギュアが作成されます。
[2003.8.1加筆]:Runtime:Libraries:character:人間:にコピーしてください。そうしないと、POSER4では動作しません。

 P4標準女性の場合、英語版と日本語版とでファイル名、フォルダ名が異なるので別々に設定する必要がありますが、VickyやMichelなどはインストールされる場所が常に同一なので特に問題は発生しないと思われます。(もし、ユーザーが変えていたら手も足も出ませんが.....)

 今回は説明のためかなり単純化しましたが、もっと多数のファイルを追加することも可能です。もちろんマテリアルの記述も含めることも出来ますし、MATポーズファイルとして外部ファイルからロードさせることも可能です。
ただ、MTを扱う上で重要なのは、1.の段階ではMTはロードだけをさせ、適用されていない状態にする。(1.の(6)の処理)そして、2.キャラクタファイル上で適用させる(2.の(6)の処理)点です。これは守ってください。

 この技法を究極的に応用したものの一つが、DAZのVictoria3です。
 外部プログラムと組み合わせることでMTの組込・切離しを行っています。Vicky3はかなりのポリゴン数なので、MTも当然肥大化しています。なので不要なMTを切り離すことでリソースの使用を抑え、ハイポリゴンと高速・安定動作を両立させようとしているようです。