・同梱SlimDX を January 2012 へ変更
・エフェクト描画機能追加 (制限有)
・不具合修正他
以上
残念ながら例の2周年には間に合いませんでしたが、遅ればせながら MikuMikuEffect(MME) でおなじみのエフェクト描画機能へ対応してみました。
といってもツールの性格上、複合モデル/エフェクトでの運用などは動かせませんので、いくつか制限のある対応となります。
●リドミより抜粋
================
■非対応項目
・オフスクリーンレンダリングターゲット(OFFSCREENRENDERTARGET) -> 依存するエフェクトは正常に動作しません。
・アニメーションテクスチャ(ANIMATEDTEXTURE) のアニメーション機能 -> 通常テクスチャとして扱われます。
・TEXTUREVALUE
・_INDEX(頂点シェーダ)
・変形状態での運用 -> TransformView は変形機構にGPUスキニングを利用しているので扱えません。
■独自拡張項目
[セマンティクス]
MATERIALTOONMAP : Toonマップテクスチャ
ZPLOT : Z値プロットテクスチャ(セルフシャドウ用) | s0レジスタもそのまま利用可能
[特殊パラメータ]
subtex (bool) : スフィアマップのサブテクスチャフラグ
■制限項目
・コントロールオブジェクト(CONTROLOBJECT) -> ボーン位置以外は初期状態として設定されます。
・同時に利用可能なエフェクトは1つまで
・地面影の透過率無効
・エッジ描画は標準シェーダを使用 -> 一応切り替え可能ですが、独自シェーダからの正常表示は難しいと思われます。
※他にも機構の違いなどから正常に動作しないものがあるかもしれません。
================
基本的には、モデル描画用シェーダでの運用を想定しています。
一応、標準のガウスぼかしなど一部のポストエフェクトも動作しますが、あくまで"たまたま動く"だけです(オフスクリーンを利用した大半のポスト系エフェクトは動作しません)
エディタに標準で搭載されているエフェクトシェーダは MMEの"full.fx"を改変したものです。
色の表示はオリジナルと変わりないので(ハズ)、これまで材質の色調整などで MMDと行ったり来たりしていた方は、作業が楽になるかもしれません。
また PMX2.0の仕様策定時などにも話に出ていましたが、バンプマップやノーマルマップといった個別のマッピング処理に対応したモデルなども、専用エフェクトを含めた編集が容易になるかと思います。
※PMXの仕様では、これらのエフェクト側での対応を補助するために、頂点毎に float4 x4 の追加データ(追加UV1-4)を任意に配置できるようになっています。マッピング系の描画は自由度や拡張性の面からいっても、エフェクト側で対応する形の方が望ましいのは自明でしょう。
エフェクト描画機能は PmxViewでのみ使用可能です。
本来は TransformViewの方でも使えると色々捗りそうですが、残念ながら TransformViewでは GPUスキニングにより頂点変形を行っているので、MME用のエフェクトはそのままでは利用できません。
また同じ GPUスキニングを使っている MMMとも変形用の内部構造が異なるので、MMM用に改変されたエフェクトもそのまま利用することはできません。
専用の仕様を作ってエフェクトを改変すれば対応自体は可能ですが、あまり要改変エフェクトやエフェクトの仕様(派閥?)が増えるというのも望ましいことではありませんので、今回は変形機構には非対応としました。
以下はエフェクト描画とは関係ない話ですが、PMXエディタについていくつか誤解があるようなので書いておきたいと思います。
まず PMXエディタ は PMX2.1"専用" ではありません。MMDなどで利用可能な PMX2.0の編集にもそのまま利用できます。
2.1で拡張された QDEF/フリップモーフ/インパルスモーフ/標準(バネ付6DOF)以外のJoint/SoftBody を使わなければ、PMX2.0として保存されます(2.0指定で保存する場合、問題があれば警告が表示されます)
基本的に PMX2.0の取り扱いに関して、PMDエディタ(0139)と PMXエディタに違いはありません。
また PMDモデルに関しても保存をエクスポートから行う必要がある程度で、内部の挙動自体は同じものとなっています(PMDエディタ(0139)の PMD編集画面も、PMDとして編集できているように見えるだけで、実情は内部の PMXに対する編集を行っています)
プラグインもアセンブリが x86固定で作成されていなければ(標準はAnyCPU=両対応)、PMDエディタと共通のものをそのまま利用することが可能です。
要するに、PMXエディタが動く環境であれば、わざわざ PMDエディタ(0139)を使う理由は特にありません。
若干起動に時間がかかるのが問題ではありますが、細かい編集機能の改善などにより編集時の効率は明らかによくなります。
色々な理由から控えていた方も、動作可能環境であるなら PMXエディタの利用を考えてみることをオススメしておきます。
以上、今回の更新でした。
【関連する記事】
