「ユーザーブロマガ」サービスの終了(10月7日を予定)にあたり、残したいユーザーブロマガ記事への投票を受け付けています

【Tips】なんちゃって銅版画風表現について
閉じる
閉じる

【Tips】なんちゃって銅版画風表現について

2014-02-03 19:29

    残したいユーザーブロマガ記事への投票はこちらです




    ↓この動画の途中で、なんちゃって銅版画風の表現をしてみたので解説します。
     古い本の挿し絵っぽくなるかと思います。

    概要としては、
    MMEで輪郭線と影に横線ノイズの描画 → Aviutlで単色化と風合いの追加
    という手順です。

    まずはMMEの設定から。
    かなり重いエフェクトを使いますので、モーションやカメラは先につけておいた方が
    いいです。
    見え方がかなり変わるので、スペックに余裕がある場合、表情はエフェクトを入れた
    後でもいいかもしれません。
    ←元の状態


    ◆ScreenTex

    ・エフェクトフォルダの「sample.png」を白ベタ画像に置き換えます。
     →カメラ位置に関わらず画面に白ベタを描画するエフェクトになります。
    ・「ScreenTex.x」を読み込みます。
    ・描画順がモデルより後になるようにいじります。
     →画面が真っ白になります。
      ※描画順の調整方法についてはこちらのブロマガ(ar234462)をご覧ください。
    ・アクセサリのTrを0.8に下げます。
     →薄くモデルが見える状態になります。


    ◆Croquis改

    (使い方の複雑なエフェクトですが、同梱の説明文および
     作者のブロマガ記事(ar322648)を見ると詳しく書いてあります。)

    ・エッジは全てCroquis改に描画させるので、エッジ太さを0に設定して
     MMDのエッジ描画を消します。
    ・「Croquis.x」を読み込みます。
      ※描画順は「ScreenTex.x」より前でも後でも変わらないようです。
    ・アクセサリのX,Y,Zを全て1.0にします。
     →とりあえずエッジの線が出ます。
      ※X:法線エッジの強さ、Y:深度エッジの強さ、Z:色差エッジの強さ なので、
       あまり色差の輪郭を強調したくない場合などモデルによっては、
       Zは1.0より小さい0.5~0.8の方が綺麗な時もあります。
       今回の動画でも親父とテレジア様のシーンではZ=0.6にして使いました。
    ・エッジが濃すぎるので、Siを0.8にします。
     →エッジが細くなります。
      ※Si:エッジの太さ、Tr:エッジの濃さ です。
    ・背景が黒(灰色)になっているので、白ベタ画像を作って背景画像として読み込みます。
    ・地面影表示からチェックを外し、地面影を消します。
    ・色々細かい設定が必要ですが、後回しでとりあえずそれっぽい絵を作りましょう。


    ◆ShadowOnlyMap

    ・エフェクトフォルダの「image.png」を置き換えます。
      ※リピートするのでシームレスな画像の方が綺麗に表示されます。
       pngなので、透過を持った画像も設定可能です。
      ※今回のように影部分にノイズを加える演出の場合、透過pngの方がモデルと
       馴染みやすいと思います。
    ・今回、こちらのフリー素材を加工して、こんな画像を使いました。
    ・「ShadowOnlyMap.x」を読み込みます。
     →セルフシャドウが落ちていた部分にノイズがかかります。
      ※描画順は「ScreenTex.x」より後になるようにします。
      ※上手く影が落ちない場合、モデルのセルフシャドウがOFFになっていることが
       あります。改造可のモデルなら、PMXEditorで材質の「セルフ影マップ」や
       「セルフ影」にチェックを入れるなどして調節してください。
    ・線が荒かったので、Siを2.0にして、画像のリピート回数を増やしました。
      ※使った画像によって適宜調整してください。


    ◆o_Vignette

    ・「o_Vignette_HQ.x」を読み込みます。
      ※描画順は最後でいいと思います。
    ・影円を調整します。今回はX=0.6,Y=0.7に設定しましたが、好みで調整すればいいと
     思います。
      ※X:影円のサイズ、Y:影の扁平率
    ・影が濃いので、Trを0.4にします。



    ◆エフェクト割当を使った設定

    ・モデルの足元(もしくは(0.0.0)の位置)に、変な線があります。
     これは「ScreenTex.x」や「ShadowOnlyMap.x」の本体のエッジ部分に
     Croquis改によって描画されている線です。
     これを消します。
    ・MMEの「エフェクト割当」を開きます。

    ☆Croquis改のエフェクトタブについて
    Croquis改にはタブが5つあります。
    前述の作者様のブロマガによると
     1.CM_EdgeColorMap:エッジの色を指定するバックバッファー(レンダー
          ターゲットというやつですが、とりあえずこう呼んでおきます。)
     2.CM_ObjectColorMap:色差検出用にモデルを描画するバックバッファー
     3.CM_EdgeStrengthMap:エッジ太さ用マスクを描画するバックバッファー
     4.CM_NormalMap:法線エッジ検出用に法線情報を色として描画するバックバッファー
     5.CM_DepthMap:深度エッジ検出用に深度情報を色として描画するバックバッファー
    ということです。
     1はエッジの色に関係しますが、今回いじりません(後で単色化をかけるので
      あまり関係ない)。
     3で描画するエッジの太さが調整できます。後で色々いじります。
    アクセサリのX,Y,Zの数値にも対応しますが、
     4は法線によるエッジに関係します。
       これをキャンセルするのにNormalDrawCanceler.fxsubを使います。
     5は深度によりエッジに関係します。
       これをキャンセルするのにDepthDrawCanceler.fxsubを使います。
     2の色差によるエッジに関係します。
       これをキャンセルするのにColorDrawCanceler.fxsubを使います。

    ※Croquis改のエフェクトタブでチェックを外すのと、
     キャンセル用ファイルを適用するので、結果が違います。

       チェックを外す=なかったことにする。
         奥にあるもののエッジが描画される。
       キャンセルする=そこにあるんだけどエッジを描画しない。
         エッジはないけれど手前に存在するので、奥にあるもののエッジは描画されない。

    ・今回は「ScreenTex.x」や「ShadowOnlyMap.x」の本体のエッジを消して、
     足元に何もなかったことにしたいので、徹底的にチェックを外します。
    ・前述の2,4,5のタブ(「CM_ObjectColorMap」「CM_NormalMap」
     「CM_DepthMap」)で「ScreenTex.x」と「ShadowOnlyMap.x」の左のチェックを
     外します。
     →足元の余分な線が消えます。
    ・この後、まだまだ細かい設定もありますが、とりあえず先に完成形を目指してみます。
    ・MMDから出力します



    ◆Aviutlを使った設定

    ・出力した画像や動画を読み込みます。
    ・フィルタをかけます。
    ・色をくっきりさせたいので、色調補正フィルタでコントラストを147.6にします。
    ・単色化フィルタを強さ100でかけます。色はお好みですが、今回は
     RGB(210,96,12)にしました。
     →だいぶそれっぽい画面になると思います。


    ・ふわっとしたテクスチャを重ねます。
      ※合成モードや透明度を色々いじってみたらいいと思います。
      今回私はこちらの6枚目(表紙抜き)の素材をスクリーンで透明度58.3で置き、
      さらに同じ画像を陰影で透明度26.2で重ねた後、
      同じく15枚目の素材を明暗で91.3で重ねました。
    ・出来上がり。それっぽくなっているはずです!

    ↑クリックすると拡大します。



    この先はMMDに戻って細かい設定の説明です。
    面倒ですが出来映えが全然違いますので、最後までやってみてください。


    ◇ShadowOnlyMapの細かい設定

    ・顔にノイズが入るのが気になったので、顔部分のエフェクトを解除します。
    ・MMEの「エフェクト割当」を開きます。
    ・タブから「RT_BufferShadow」を探し出します。
      ※恐らく一番右にあるはずです。
    ・モデル名の行で右クリックしてサブセット展開を選びます。
     →材質ごとにエフェクト割当を調整できるようになります。
      ※サブセット展開のチェックを外すと、どれだけ細かく設定してあっても展開が
       無効になり、モデルの割当が統一されてしまいます。
       邪魔になってもたたまないように注意してください。
    ・顔や白目、瞳の光など、影が落ちてほしくない材質を選択して右クリックします。
      ※瞳は影が落ちるようにしておいてもいいと思います。お好みでどうぞ。
      ※Ctrlで複数選択すると、一度に設定できます。
    ・ファイル選択をクリックします。
    ・「NonShadow.fx」を選んで割り当てます。
     →顔に影が落ちなくなります。
    ・顔だけが白く浮いてしまうようになるので、少し影をぼかします。
    ・エフェクト割当のウィンドウを閉じてShadowOnlyMapのZを3.0にします。
     →影がぼやけます。
    ・ここまででもいいのですが、カメラの向きによって影が不自然になることがあります。
      ※あまり全体的に影になってしまうと、それっぽくないです。
    ・影がそれっぽく落ちるように、MMDの照明の向きを調節します。
      ※照明の向きを調節する時には、地面影を表示した方がイメージがつきやすくて
       早いです。
      ※カメラのキーフレームの位置を参考にして照明の向きのキーも打てば楽です。



    ◇Croquis改の細かい設定

    ・エッジが太すぎて気になる部分があるので、細かく設定します。
     それなりに根気がいる作業ですが、きちんと設定した方が綺麗です。
    【エフェクトの準備】
    ・黒ベタの画像を作り、「black.png」と名前をつけて保存します。
    ・エッジを消すためのエフェクトファイルを作ります。
    ・エフェクトフォルダの中の「EdgeStrengthDraw.fxsub」をコピーします。
    ・名前を「EdgeStrength_off.fxsub」に変更します。
    ・メモ帳を開いて、「EdgeStrength_off.fxsub」をメモ帳のウィンドウに
     ドラッグ&ドロップして開きます。
    ・2行目の「//#define EDGE_STRENGHT_TEXTURE "EdgeStrength.png"」を
         「#define EDGE_STRENGHT_TEXTURE "black.png"」に書き換えます。
    ・上書き保存します。
    ・同様に、調整用のエフェクトファイルも作っておきます。
      ※参考までに今回私は、30,40,50,60,65,70%グレーの画像とそれに対応する
       エフェクトファイルを作りました。(黒←30%~50%~70%→白)

    【モデルの準備】
    ・Croquis改の説明に、エッジ太さを調整する場合はモデルのUV展開が必要と書いて
     ありますが、検証してみた結果、UV展開がしてあるだけでは調整できません

    ☆Croquis改でモデルのエッジの太さを細かく変えるために必要な条件

     1.頂点がUV情報を持っていること。
     2.テクスチャが指定されていること。
     3.指定したテクスチャが指定した場所に存在していること。

     1については、UV展開されていなくても、頂点は(0,0)もしくは(1,1)という
      UV情報を持っているので、実際は全く問題がないです。
      ※ただし、作者様のブロマガにある方法でテクスチャを使って太さの調整をする
       場合は、それなりに綺麗に展開する必要があります。
     2については、あにまさ式モデルのように材質色で指定してある場合、テクスチャが
      指定していないことも多いです。このようなモデルをCroquis改の設定ができるように
      改造する場合、白ベタの画像を作って適用します。
      ※見かけは一切変わりませんが、モデル改造が不可のモデルの場合は諦めてください。
     3の条件を満たすために、作った白ベタの画像が指定した場所においてあることを
      確認しましょう。

    ・MMEの「エフェクト割当」を開きます。
    ・前述した3のタブ(CM_EdgeStrengthMap)をメインにいじります。
    ・モデルをサブセット展開します。多分もうしてありますけど。
    ・エッジを消したい材質に、上で作った「EdgeStrength_off.fxsub」を適用します。
      ※例えば白目と顔の間のエッジを完全に消すためには、白目のエッジと、
       顔のエッジの両方を消す必要があります。
       ただ、顔のエッジを消すと絵にメリハリがなくなるので、PMXEditorを使って
       あらかじめ目の周りの材質を分離しておくか、完全に消すのは諦めて、
       70%グレーのエフェクトを割り当てるといいです。
      ※ファイル選択で目的のエフェクトファイルが表示されていない場合、「開く」の
       上の「fxファイル(*.fx)」をクリックして全てのファイルを表示させます。
    ・エッジが濃く出ている部分も調整してバランスをとります。
      ※今回は髪や靴の紐に50%グレーのエフェクトを適用しました。
    ・変にエッジが出ている場合、前述の2,4,5のタブ(「CM_ObjectColorMap」
     「CM_NormalMap」「CM_DepthMap」)で、法線深度色差のそれぞれの
     エッジをキャンセルするなど色々試してみるといいと思います。
      ※ポリゴンがカクッとなってスムージングが切れている場合、境界に法線エッジが
       出ます。法線エッジを切るとエッジがかなり弱くなってしまうので、
       PMXEditorで頂点をひとつずつ(見かけは1頂点だけど実際は2頂点)選択して
       「選択法線の平均化(Ctrl+B)」の操作を行い、手動で法線をなめらかに
       するのも手です。
    ・透明度を持っているものにエッジをつける場合、エッジが濃くなる傾向があります。
     頑張って調整してみてください。
    ・以上です。お疲れ様でした。


     MMDから出力して、Aviutlで前述の操作を行ってください。

    ↑クリックすると拡大します。


    【おまけ】眉毛さんの眉毛を死守する方法

    前述の方法では、普段黒く描画されているものでも、エッジだけが描画され、
    よく見えなくなってしまうことがあります。
      ※たいてい眉やアイラインの線がはっきりしなくなります。
       具体的には眉毛さんの眉毛が見えにくくなり、アイデンティティの危機に
       立たされます。
    これを回避するため、眉毛のみのモデルを作り、ScreenTexより後に描画させます。
      ※モデル→アクセサリ→モデルという描画順にすることはできないため、
       ScreenTexエフェクトのかけ方を、アクセサリの「ScreenTex.x」ではなく
       モデルの「ScreenTexPmd.pmd」を使う方法にします。

    ・PMXEditorでモデルを開き、眉毛の材質を探します。
    ・眉毛以外の材質を削除します。
      ※このとき表情モーフもいくつか消えるかもしれませんが、眉のモーフが
       残っていることを確認します。
    ・剛体とジョイントを全て削除します。
      ※このとき、ボーンは決していじらないこと。
    ・別名で保存します。モデル名も分かりやすく変えておくと楽です。
    ・MMDで作りかけのファイルを開きます。
    ・「ScreenTex.x」の代わりに「ScreenTexPmd.pmd」を読み込みます。
    ・透明度のモーフを操作して、80%くらいにします。
    ・先程作った眉毛のみモデルを読み込みます。
      ※これで、通常のイギリスモデル→ScreenTexエフェクト→眉毛のみモデル
       という描画順になりました。
    ・通常のイギリスさんから眉毛のみモデルに、全てのキーフレームをコピーします。
    ・眉毛のみモデルのエッジが濃すぎる場合は、Croquis改のエフェクト割当から調整します。
     必要な場合、他の調整も同様に行います。
    ・以上です。凛々しい眉毛がイキイキと動画に映えることでしょう。

    Before↓
    (クリックで拡大)

    After↓ まゆげー(*´∀`*)
    (クリックで拡大)



    この情報が、皆様の素敵なMMDライフの一助となりましたら幸いです。

    くぅ   .

     その他のTips→モデルやアクセサリの描画順についてar234462

     →よくある物理演算が滅茶苦茶になる原因とその対策ar410658

    くぅ&みぃの配布物一覧に戻る



    広告
    コメントを書く
    コメントをするには、
    ログインして下さい。