今回はサブパッチとキャットマル・クラークの違いについて

他のソフトの場合は分からないですが、LightWave には

  • サブパッチ
  • キャットマル・クラーク

という二種類の可逆型の細分化システムがあります
※通常の不可逆な細分化ツールもありますが、ここでは省きます

サブパッチは昔からある機能なので少しは触ったことありますが、キャットマルについては正直どんなものなのか分かっていませんでした

分かっていたのは

  • きれいな曲面が出る
  • ただし、プチバグあり

という風のうわさ

そんなことからサブパッチとキャットマルの違いを比較するに至ったわけですが、結論としてキャットマルは確かにバグはありますが、UV 展開前の造形には使えそうだという印象を受けました

将来的に活用できる場面が出てくると思うので、しっかりメモっていきます

ちなみに検証に使ったバージョンは 2024.2 です

見た目の違い

曲面の出し方が違う

まずは見た目なんですが、変換した時の曲面の出し方が違います

画像はボックスを変換しています

サブパッチの場合は曲面を出しつつも、若干元のモデルの形に沿った感じになります

画像で言うならば、元のボックスの形状を少しだけ維持している感じ

一方、キャットマルはと言うと完全な球体に近い感じで変換してくれます

ボックスからサクッと球体を作りたい場合は、キャットマルの方が良さそうです

じゃっく

キャットマルは通常の細分化に近い印象

キャットマルは多角形でも変換可能

サブパッチの場合は、多角形のモデルの変換には対応していないです

画像のようにエラーを吐いてくるので、この場合は三角ポリゴンか四角ポリゴンに構造を修正してから変換する必要があります

エラーではありますが逆に考えると

まだ多角形があるよ

と教えてくれるので、変なトポロジーを作りにくいメリットがあります

逆にキャットマルの場合は、五角形だろうが六角形だろうが問答無用で変換してくれます

サブパッチだとしわが目立つ

エッジが密集している箇所の処理も違います

サブパッチの場合、ちょっと見にくいですがエッジが密集している場所だと、画像のようにしわができてしまいます

キャットマルの場合は、ほとんどしわが分からないレベル

実際には実機だとわずかにしわが見えるのですが、よく見ないと見えないくらいです

ポリゴン化した後の結果が違う

ポリゴン化した後も画像のように違いがありました

環境設定では四角ポリゴンになるように設定しています

サブパッチした物をポリゴン化した場合は、四角と三角が混在した結果になりました

ただし、ボックスの場合は全て四角になったので、形によって処理が変化するようです

キャットマルの方は、設定どおり全て四角ポリゴンに変換されました

じゃっく

ぱっと見はキャットマルの方がキレイ

パッチの分割率とキャットマルレベルの関係

環境設定画面に行くと

  • キャットマル用:パッチの分割率
  • キャットマル用:キャットマルレベル

といった感じで分割レベルを設定できる項目があったので、こちらの違いも確認してみました

分割レベルサブパッチ
(分割数)
キャットマル
(分割数)
11224
22496
354384
4961536
51506144
621624576
729498304
8384393216
94861572864
106006291456
161536測定不可
326144測定不可

分割数の増加具合はキャットマルの方が多かったです

そう考えるとキャットマルは動作が重くなりやすい感じ

四倍ずつ数値が増加しています

これは普通の細分化ツールと同じ増加結果です

なので、既にポリゴン数が多いものを変換する場合は、ちょっと注意した方が良いような気がします

じゃっく

キャットマルだと一気に分割が増えるから油断すると固まる

角を立たせる方法

サブパッチの場合はウェイトを使う

部分的に角を立てたい場合は、どうすれば良いのか?

サブパッチの場合は、角を立てたいポイントにウェイト値を与えれば良いようです

ウェイト項目を「サブパッチウェイト」にして、その状態でウェイト値 100% に設定

あとはサブパッチ変換すれば角が立たせられます

キャットマルの場合は CC シャープネスを使う

キャットマルの場合は、エッジシャープネス機能を使います

これを使うとBlender などのクリース機能のようなことができます

詳細タブのエッジ項目の「その他」の中に

  • CC シャープネス設定
  • CC シャープネス増加
  • CC シャープネス減少

があるので、そこからキャットマル変換時の角を鋭角にしたり、元に戻したりできます

キャットマルにはバグがある

ここまでくると

「キャットマル優秀じゃん!」

「もうこれからはキャットマルを使おう!」

となりそうですが、ちょっとお待ちを

残念なこともあります

うわさ程度しか知らなかったですが、キャットマルにはちょっとしたバグがあります

正直バグなのか仕様なのかは不明ですが・・・

UV マップに反映されない

まず一つ目

サブパッチの場合は古くからあるためか、UV 展開後もサブパッチを実行すると UV マップ側も補正して形が変化します

一方、後から追加されたキャットマルには対応できていないようで、キャットマル変換しても UV マップ側には何も変化がありません

UV 補間には

  • リニア
  • リニアエッジ
  • リニアコーナー
  • 非連続エッジ
  • サブパッチ補間

などがあるのですが、何やっても変化なし

何も変わりません

なので、この場合はキャットマルは使えないと言えます

加工を加えると造形が壊れる

サブパッチ変換の場合は、後から追加カットしてもある程度補正してくれますが・・・

キャットマルの場合は一本追加カットを行うだけで、こんな風にモデルがぐっちゃぐちゃに崩壊します

じゃっく

なぁんでやねん!!

なぜ壊れるかは謎ですが、個人的に一番嫌な不具合です

ポリゴン化後さらにキャットマル実行すると壊れる

さらにさらに、キャットマルしたモデルをポリゴン化し、さらに追加でキャットマル変換をするとモデルが崩壊します

じゃっく

おいおいおい・・・ナンナンダ コレハ

これは先ほどのモデルにカットなどを行うと、壊れるのと同じ現象っぽいです

修正方法は今の所、エッジの CC シャープネス設定の値をゼロにするしかなさそうです

こんな感じでキャットマルには、バグというか困ったポイントがあります

まとめ

それではサクッと簡単にまとめてみます

まとめ
  • どちらも角を鋭角にする方法がある
  • キャットマルによる細分化は重くなりやすい
  • サブパッチは古いがエラーを起こしにくい
  • キャットマルはキレイな曲面が出せるがバグあり

今回はサブパッチとキャットマルの違いを自分なりに調べて確認してみました

実は普段のモデリングでは、あまりサブパッチもキャットマルも使ってないです

というのも髪の毛の房の場合ですが、使うと全体が丸くなるので、すき間が開いてしまう問題があったからです

じゃっく

当時は角を鋭角にして、すき間を作らない方法がよく分かっていなかった

なので、普通の細分化ツールのメタフォームで毛房のすき間を埋めつつ細分化していました

今回を機にサブパッチでもキャットマルでも角を鋭角にする方法が分かったので、機会があったらまた髪の毛モデリングの際に活用してみたいと思います

それにしてもキャットマル・・・ちょっと残念だよキミには・・・

早く直してくださいな

とりあえず、今回もお疲れさまでした~

使用ツール

3DCG
  • LightWave3D
動画
  • Bandicam
  • ScreenToGif