【簡単透明化】UnityでMMD4Mecanimで読み込んだMMDモデルの特定部位を透明化する方法(シェーダーと透明マテリアルのダウンロード)

Unity で MMD4Mecanim を使ってMMDモデルを読み込んだときに特定の部位を透明化する方法を解説します。シェーダーを使って透明化する方法と、透明なマテリアル素材を使って透明化する方法の2つがあります。

シェーダーとは?

画面への描画を最終的に行う仕組みが『シェーダー』です。メッシュやテクスチャ、マテリアルやライティングなどの情報が統合され、最後にシェーダーを通じて画面に表示されます。シェーダーを変更することでオブジェクトの見た目を変更することができます。

Unity には、このシェーダーの仕組みが備わっており、各部位のシェーダーを変えることで、その部位の色を変えたり、透明にすることができます

【方法1】透明化するには、MMDLit-Dummy シェーダーを適用するのが簡単

MMD4Mecanim パッケージをインストールすると、マテリアルで様々なシェーダーが使えるようになります。

透明化したい部位を決めたら、その部位のマテリアルを選択し、Inspector でシェーダーをMMD4Mecanim 内にある、「MMDLit-Dummy」シェーダーに変えることでその部位を透明化できます。

MMD4Mecanim をインストールしていないときは、MMDモデルをWindows10+Unity2017で使えるようにする方法(MMD4Mecanim編)を参考にどうぞ。

今回の場合は、MMD4Mecanim のシェーダーを使いたいだけなので、MMD4Mecanimパッケージをインストールすれば、Mac環境でも大丈夫です。

【方法2】透明なマテリアル素材を作って、透明化したい部位に適用する方法

方法1はシェーダーを変更することで透明化する方法でしたが、透明なマテリアル素材を作ってそれをモデルに適用するという実装方法もあります。
透明化のポイントは、マテリアルの色指定でアルファ値を0にすれば、そのマテリアル素材は透明になるということ。

透明マテリアル素材の作り方

部位を透明にする透明マテリアル素材の作り方は、このような流れです。

これで、透明のマテリアル素材が完成です。

透明マテリアル素材のダウンロード

透明なマテリアル素材がすぐに欲しいときは、

Unityの透明化マテリアル素材

のzipファイルをダウンロードして解凍して下さい。
解凍後に Toumei.mat ファイルがあるので、それをモデルの各部位に適用すればすぐに透明化できます。

ガラスのような質感や光輝くようにするには?

透明ではなく、ガラスのような質感にするには、Rendering Mode を Transparent に変更すれば、ガラスのような光沢感が表現でき、Inspector の真ん中あたりにある Emission(放射)にチェックを入れると光り輝かせるような表現もできます。

その他のポイント

透明化はいろいろな方法がありますが、シェーダーを変更するのが基本。MMD4Mecanim を使っていないときは、このようなキーワードでも調べてみて下さい。