法線編集
Blenderの機能
カスタム法線編集
カスタム法線を使うとAutoSmoothが勝手にONになる
Subdivisionモディファイアを使っている場合は、UseCustomNormalsをONにする
データ転送モディファイア
カスタム法線を編集するのでAutoSmooth必須
法線編集モディファイア
カスタム法線を編集するのでAutoSmooth必須
Radial(放射状に向ける),Directional(特定Targetに向ける)
Mark as Sharp シャープ辺に設定
AutoSmoothしないと効かない
挙動
全部並べてみた
https://gyazo.com/49a818fc6dfb58e38db7c4ca589573a6
Joinしたときの挙動
カスタム法線あり + カスタム法線なし→カスタム法線あり
カスタム法線ありをアクティブにすると正常動作
カスタム法線なしをアクティブにするとAuto Smoothにチェックをつける必要あり(カスタム法線は維持される)
スムースシェード(カスタム法線なし) + フラットシェード(カスタム法線なし) → 正常動作
カスタム法線なしだが法線はちゃんと変わっている
これがどういう状態かわからない
スムースシェードの情報は頂点ごとに持ってる?
BMFace, BMEdgeがsmooth属性を持っている
AutoSmoothの角度が違うもの
アクティブな方の角度になる(見た目変わる)
考慮が必要なパターン
アクティブな方の角度になって見た目が変わる
2. AutoSmoothOFF + カスタム法線ありでAutoSmoothのついていない方がアクティブになるもの
AutoSmoothが外れるので見た目が変わる
MergeにAutoSmoothが含まれる場合はAutoSmoothをONにすること
カスタム法線がないものが含まれていても勝手にマージされるので考慮不要
3. カスタム法線が入っているのにAutoSmoothがOFFにされている(無効なカスタム法線)
AutoSmooth=ONが採用されるとカスタム法線が有効にされる
無効状態のカスタム法線は削除?
Tips
Normal編集アドオン
Restoreボタンで向けれるらしい
Blender4.1
data.calc_normals_split()を削除すれば動く
https://gyazo.com/f9b7df611d78e63eb87048656e2db93e