見出し画像

Q&A『エフェクトとは』

画像1

今回は詳しくお話ししようと思うと、少し初心者向けというには難しい内容になりますが、MMDを楽しむうえで、果たして必要な知識かというと、別に理解できなくてもまったく困る内容ではないので、まずはざっくりこのくらいの認識であればいいかなというライトな回答と、せっかくなら詳しく知りたい方向けのディープな回答、2タイプでお答えしますね。

まずはライトなお話から始めましょう。



エフェクトの分類について ライト版

ご質問の①と③に関わる内容ですが、MMEは大きく分けて2種類に分類されます。

a) pmx/pmdおよびxファイルに対して作用するエフェクト
b) 画面全体に作用するポストエフェクト

この2つの違いは、「何に対して作用するか」という見方が、一番簡単かと思います。

pmxやxに作用するというのは、シェーダーやパーティクル、光源系のエフェクトなど、そのエフェクトによって何か別のオブジェクトが描写されたり、モデルやアクセサリ単位で効果が現れるものを指します。

画面全体に作用するというのは、色調補正系のエフェクトなどフィルターのような効果を持つもの、と考えるとわかりやすいかと思います。これらをポストエフェクトと呼びます。

MMEの整理について
MMEを整理する際は、エフェクトの分類というよりは効果で整理した方がわかりやすいんではないかと思います。この効果の分類については、エフェクトメイカーのアイデアの数だけあるので、配布先の紹介動画等をご覧の上、ご自身が後から分かるように分類してしまうのが一番だと思います。
参考までに。



エフェクトの重ね掛けについて ライト版

pmx/pmdおよびxファイルに作用するエフェクトのうち、直接fxを割り当てるシェーダーは、標準機能として重ね掛けには対応していません。一つのpmx/pmdないしxファイルに複数のfxファイルを適用したい場合は、ミーフォ茜さんの配布されているM4Layerを使用します。

これは画像編集ソフトのレイヤーの合成モードをMMD上で再現するエフェクトなので、メインタブで直接適用する場合と比べると見え方が多少異なりますが、2つ以上のシェーダーを重ねがけしたり、複数のスカイドームを重ねたりなど、合成をしたいときの定番エフェクトです。

なお、重ね掛けはできませんが一部のエフェクトは、併用することが可能です。
例えば、LocalShadowやExcellentShadowなのは、他のシェーダーに組み込むことが可能なため、だいたいのシェーダーはExcellentShadowに対応しているんではないかと思います。ExcellentShadow対応シェーダーの場合、ExcellentShadow側のfull_ES.fxは不要で、ExcellentShadow.xを読み込むだけで、適用されます。

ちなみにExcellentShdadowのシェーダーへの組み込み方法は、ExcellentShadowのreadmeに記載があるので、殆どないとは思いますが、ES非対応シェーダーだった場合は、この指示どおりに改造すれば、対応させることができます。



エフェクトの操作順

これは割と好みの問題です。一部、描写順などで、この順で適応したほうがいいと定められているエフェクトもありますが、基本的にエフェクトの適応順は好みです。
私はそもそもポストエフェクトをあまり使わないので、シェーダーから始めることがおおいですが、ポストエフェクトから始める方もいらっしゃいます。

そこらへんはいろんなエフェクトメイキングをご覧になって、ご自身のお好きなテイストに近い作品を作られる方の手順を参考にされると良いかと思います。
参考までに、私が過去に作ったメイキングを張っておきますね。



ファイルの種類について ディープ版

では、ディープな話を始めましょう。
エフェクトの話をするうえで、まず知っておきたいのが3Dにおけるファイルの種類です。MMD用いられるファイルは、3Dにおいて以下のように分類されます。

pmx/pmdファイル:オブジェクトファイル
xファイル:オブジェクトファイル
fxファイル:エフェクトファイル

MMDではモデル、アクセサリ、エフェクトと区別して呼ばれますが、その実、モデルとアクセサリは3Dの要素としてはおなじ、オブジェクトと呼ばれます。画像ファイルにjpgやpng形式があるように、オブジェクトにも様々な拡張子があります。
ちなみに、pmd/pmxはMMDの独自形式です。

ここで注意したいのが、xファイルはエフェクトファイルと共に用いられることも多いので、エフェクト本体と混同されやすいですが、あくまでエフェクトの本体はfxファイルです。
MMEで用いられるxファイルはfxファイルと紐づいて、自動的にfxファイルを適用させたり、コントローラーの役割を果たしたり、それ自体にエフェクトを適用させるための補助オブジェクトにすぎません。



エフェクトの分類について ディープ版

ライト版は広義で分類しましたが、もう少し狭義で分類するとMMEは以下の3つに分類されます。

a) シェーディングエフェクト
b) オブジェクトエフェクト
c) ポストエフェクト

このうち、オブジェクトエフェクトの実態はエフェクト用のモデルやアクセサリを利用したシェーディングエフェクトで、ライト版の大分類のエフェクトとはシェーディングエフェクトのことを指します。

詳しいことは後述します。



シェーディングエフェクトとポストエフェクトの違い ディープ版

ライト版ではエフェクトとポストエフェクトの違いは、その効果が「何に対して作用するか」という点だと申し上げました。これをもう少し詳しく見ていきましょう。

シェーディングエフェクト
シェーディングおよびオブジェクトエフェクトは、pmx/pmdおよびxファイルつまりオブジェクトに作用するものです。オブジェクトに作用するというのは具体的にいうと、「オブジェクトをMMD標準とは異なり、エフェクト独自でレンダリングする」ということです。
レンダリング方式がMMD標準とは異なるため、様々な質感を表現することができます。

ポストエフェクト
対してポストエフェクトは、MMD標準またはシェーディングエフェクトによってレンダリングされた結果の2D画像に、後処理(ポストプロセス)として作用します。
オブジェクトエフェクト含むシェーディングエフェクトが単純に「エフェクト」と呼ばれるのに対し、ポストエフェクトだけが「ポストエフェクト」として区別されるのは、「どのタイミングで作用するか」という点で、ポストエフェクトだけがレンダリング「後」に作用するからです。名前の通りですね。

というのがテクニカル面での分類になるんですが、実際のところ通常、エフェクトと言う時は先述の3種をまとめた総称で、ポストエフェクトはエフェクトの一分類として捉えることが多いです。



各エフェクトの分類について ディープ版

では具体的に、各エフェクトがどういったものなのか見ていきましょう。

a) シェーディングエフェクト
いわゆるシェーダーと呼ばれるものです。簡単にいえば、モデルやアクセサリ単位、または材質単位でオブジェクトに直接fxファイルを適用し、独自のレンダリングで生み出される陰影によって質感を変えてみせるエフェクトです。

b) オブジェクトエフェクト
エフェクト専用のオブジェクトファイルにfxファイルを適用させて、モデルやアクセサリでは表現が難しいオブジェクトを描写するエフェクトです。
一番わかりやすいところだと、パーティクルがこれに当たります。ちなみに、このエフェクト専用オブジェクトは、本来不可視であるべきものなんですが、これが他のエフェクトと干渉しあって可視化してしまっている状態が、連凧です。

c) ポストエフェクト
広義ではa、b以外のエフェクトがポストエフェクトに分類されます。MMD標準レンダリングや、シェーディング・オブジェクトエフェクトによってレンダリングされた、その結果に2D的に作用するため、画面全体に効果が適用されるフィルターのような役割を果たします。
ScreenTexや色調補正系のエフェクトなどがこれに当たります。


とはいえ暴論なのでポストエフェクトのカバー範囲広すぎるんですが、細かくみていくとPowerShaderのようにポストエフェクトとシェーダーの組み合わせで1つのエフェクトになっていたりするものもあるので、なかなかに複雑です。

ただ、この話を理解していないとMMDを楽しめないのかといわれれば、まったくもってそんなことはないですし、なんだったら全く分からなくても、困ることはほぼないので、あくまで興味があれば、で大丈夫です!

この記事が気に入ったらサポートをしてみませんか?