モデルが真っ黒に描画される、その原因はたいていこれです
頂点法線は、その面がどちらを向いているかをレンダラーに伝えます。法線が無ければライティングを計算するすべがなく、表面はのっぺりした黒、一様なグレー、あるいは荒々しいカクカクの面として出力されます。どれになるかはレンダラーの寛容さ次第です。
法線の欠落は非常によくあります。STLファイルは面法線を保持しますが、多くのエクスポーターはそれをゼロで書き出します。OBJファイルではまるごと省かれることが珍しくありません。glTFのエクスポーターにも、ローダーが生成してくれるだろうという前提で法線を書き出さないものが少なくありません。実際に生成するローダーもあれば、しないローダーもあります。
各操作
検査 は、メッシュごとに法線・タンジェント・UVの有無と、ジオメトリがインデックス化されているかどうかを報告します。まずはここから。
スムーズ法線 は、各頂点に集まるすべての面の法線を平均し、曲面全体に連続したシェーディングを与えます。有機的な形状や、丸みを帯びて見えるべきものにはこれを使います。
フラット法線 は三角形ごとに固有の法線を与えるため、各面が独立して陰影づけされ、ファセットが見えるようになります。機械加工された部品、ローポリのアートスタイル、そして実際にファセット構造であるジオメトリには、これが正解です。共有頂点を分割する必要があるため、頂点数が増える点にご注意ください。
法線を反転 はすべての法線を反転し、さらに 三角形の巻き順も逆にします。内側から照らされているように見えるモデルや、背面カリングを有効にすると消えてしまうモデルは、これで直ります。原因はたいてい、工程のどこか上流でかかった鏡像変換です。
タンジェントを生成 は、ノーマルマッピングが要求するタンジェントベクトルを計算します。
法線を削除 は法線を完全に取り除きます。後段のツールに独自の法線を生成させたいときに、ときおり役立ちます。
ノーマルマップが効かない理由
ライティングに関する不満として最も多いのがこれで、答えはほぼ必ずタンジェントです。
ノーマルマップは方向をタンジェント空間に格納します。これは、面法線と、テクスチャが表面上を走る方向とから頂点ごとに定義される座標系です。タンジェントベクトルが無ければ、マップを解釈するための座標系そのものが存在しません。読み込み時にタンジェントをその場で計算するレンダラーもあれば、マップを単に無視して、表面を滑らかなものとして照らしてしまうレンダラーもあります。
本ツールは、ノーマルマップが割り当てられ、UVもあるのにタンジェント属性が無いメッシュをすべて指摘します。この組み合わせは、少なくとも一部のレンダラーでは確実に問題となり、しかも探しに行かないかぎり目に見えません。
タンジェントの生成には、UVセットとインデックスバッファの両方が必要です。どちらかを欠くメッシュは、黙って無視されるのではなく「スキップ」として報告されます。
結果を確認する
プレビューには、面の向きに応じて色を付ける法線ビジュアライズ表示があります。スムーズな面は連続した色のグラデーションに、フラットな面は輪郭のはっきりした色のブロックに、反転した法線は反転した色になります。ライティングを見て判断しようとするより、はるかに素早く読み取れます。
プライバシー
すべてブラウザ内で処理されます。アップロードは行いません。
Tiny Online Tools







