Skip to content

11_1_main

gaj_cg edited this page Sep 13, 2021 · 2 revisions

11.Main

11-1.概要

MainフォルダにはMMEの「Main」タブ用のfxファイルが有ります。
このfxの機能はアルファテストによるピクセルの描画をする・しないを決定します。(アルファブレンド(半透明の描画)ではありません。)
また、追加機能として「MATCAP」があります。

下記の表はfxの中身ですが、Normal Map、Sub normap map の設定は Matcap を使用する時に有効になります。(通常は Alpha map の設定のみが使用される。)

main.fx main_ex_alpha.fx main_ex_mask.fx main_ex_noalpha.fx main_ex_with_sphmap.fx
Alpha map ―― ―― ―― ―― ――
#define ALPHA_MAP_FROM 3 3 3 0 3
#define ALPHA_MAP_UV_FLIP 0
#define ALPHA_MAP_SWIZZLE 3
#define ALPHA_MAP_FILE "alpha.png"
const float alpha = 1.0; 1.0 1.0 65535.0 1.0
const float alphaThreshold = 0.999; 1.1 0.01 0.01 0.999
const float alphaMapLoopNum = 1.0;
Normal map ―― ―― ―― ―― ――
#define NORMAL_MAP_FROM 0
#define NORMAL_MAP_TYPE 0
#define NORMAL_MAP_UV_FLIP 0
#define NORMAL_MAP_FILE "normal.png"
const float normalMapScale = 1.0;
const float normalMapLoopNum = 1.0;
Sub normap map ―― ―― ―― ―― ――
#define NORMAL_SUB_MAP_FROM 0
#define NORMAL_SUB_MAP_TYPE 0
#define NORMAL_SUB_MAP_UV_FLIP 0
#define NORMAL_SUB_MAP_FILE "normal.png"
const float normalSubMapScale = 1.0;
const float normalSubMapLoopNum = 1.0;
MATCAP ―― ―― ―― ―― ――
#define MATCAP_MAP_FROM 0 4
#define MATCAP_MAP_UV_FLIP 2
#define MATCAP_MAP_FILE "matcap.jpg"
const float matCapScale = 1.0;
const float matCapMapLoopNum = 1.0;

11-2.Alpha map

alphaThresholdを閾値とした、アルファテストによるピクセルの描画をする・しないを決定します。
※各パラメータの設定値は 8_2_マテリアル_パラメータ と同じなのでそちらを参照してください。

パラメータ 概要
ALPHA_MAP_FROM アルファマップの参照元の指定
ALPHA_MAP_UV_FLIP アルファマップの反転
ALPHA_MAP_SWIZZLE アルファマップの参照チャンネル
ALPHA_MAP_FILE アルファマップを直接指定する場合のファイルパス
alpha アルファ値
alphaThreshold アルファの閾値
alphaMapLoopNum アルファマップの繰り返し回数

11-3.MATCAP(マットキャップ:Material Capture)

一般的には、事前にレンダリングした画像を使い、ライティングを行ったように見せるマテリアルです。ライティングの影響を受けずに、凹凸が把握ししやすいのでモデリング用途でよく使われます。
技術的には、MMDのスフィアマップと同じで、MMDと違う所は加算のみになります。
MATCAPが有効な場合、MATCAPに対してノーマルマップを有効にすることができます。

MATCAPを有効にするにはMATCAP_MAP_FROM1以上を設定します。
※各パラメータの設定値は 8_2_マテリアル_パラメータ と同じなのでそちらを参照してください。

パラメータ 概要
MATCAP ――
MATCAP_MAP_FROM マットキャップの参照元の指定
MATCAP_MAP_UV_FLIP マットキャップのの反転
MATCAP_MAP_FILE マットキャップを直接指定する場合のファイルパス
matCapScale マットキャップの倍率
matCapMapLoopNum マットキャップの繰り返し回数
Normal map ――
NORMAL_MAP_FROM ノーマルマップの参照元の指定
NORMAL_MAP_TYPE ノーマルマップのタイプ
NORMAL_MAP_UV_FLIP ノーマルマップのの反転
NORMAL_MAP_FILE ノーマルマップを直接指定する場合のファイルパス
normalMapScale ノーマルマップの倍率
normalMapLoopNum ノーマルマップの繰り返し回数
Sub normap map ――
NORMAL_SUB_MAP_FROM サブノーマルマップの参照元の指定
NORMAL_SUB_MAP_TYPE サブノーマルマップのタイプ
NORMAL_SUB_MAP_UV_FLIP サブノーマルマップのの反転
NORMAL_SUB_MAP_FILE サブノーマルマップを直接指定する場合のファイルパス
normalSubMapScale サブノーマルマップの倍率
normalSubMapLoopNum サブノーマルマップの繰り返し回数
  • サンプル画像

    MATCAP無し MATCAP(左上の画像)有り
    11_MATCAP_0 11_MATCAP_1
    MATCAP + Normal Map(左下) MaterialにもNormal Mapを追加
    スペキュラの乗りが違う
    11_MATCAP_2 11_MATCAP_3