lilToonのOutline用に法線を頂点カラーとしてベイクするBlenderアドオンです。
選択したオブジェクトのアクティブなVertexColor(Color Attributes)に対して、頂点の法線をベイクします。 選択したオブジェクトにVertexColorが存在しなければ、NormalColorsという名前で追加した上でベイクします。
lilToonの輪郭線の頂点カラーにてRGBA -> Normal & Width
を選択して使うことを想定しています。
- Blender 4.2.3
- このリポジトリをZIPでダウンロードします。
- Blenderを起動し、
Edit > Preferences... > Add-ons
の右上のv
マークから、Install From Disk...
にてダウンロードしたZIPファイルを選択します。 - Bake Normals To Vertex Colors アドオンを有効化します。
- オブジェクトモードにて、法線をベイクしたいオブジェクトを選択します。(複数選択可)
3D Viewport > Object > Bake Normals To Vertex Colors
を実行します。- Fbxとしてエクスポートする際は、GeometryのVertex ColorsをLinearに設定してください。
チェックを入れた場合、法線の長さ(輪郭線の太さ)を調整する。
チェックがない場合、法線の長さは1.0固定。
法線の長さの最大値。制限をかけたくない場合は10等の大き目の値を設定。
直方体の角を綺麗に出したければ、
チェックを入れた場合、法線の長さを計算した結果の最大値が1となるように全体を正規化。
Auto Smoothモディファイアで法線が変更されている場合、その結果が反映されません。 実行する前にAuto SmoothモディファイアをApplyしてください。
color_attributeでアクセスしているため、sRGBではなくlinearで格納されます。エクスポート時の設定に注意してください。
頂点カラーに書き込まれた法線ベクトルは、各頂点のTangent Spaceを用いて使用されます。 Tangent Spaceはuv座標を用いて計算されるため、uvを変更した際は再度法線をBakeしてください。
fbxとしてexportする際、GeometryのTangent Spaceにチェックを入れ、Unityのimport設定のTangentsはImportに設定することをおすすめします。