ややプログラム紀行

博士2年のプログラムに関する日記

Catmul-Clark法

この前CG論という授業でサブディビジョンサーフェスを実装するっていう課題がありました

サブディビジョンサーフェスっていうのは、メッシュに頂点、辺、面なりを追加したりして曲面のよりなめらかなメッシュを作る技術ですね

 

サブディビジョンサーフェスを実現するアルゴリズム自体は元のメッシュの各頂点から、いい感じに重み付けした頂点たちの重心から新しい頂点を作っていくみたいなものが多く、わりと簡単に実装できるんですが、結構理論的背景はしっかりしてて読んでてふぅーーんってなります

 

Catmul-Clark法もそうしたアルゴリズムの1つですが、なんでこれをピックアップしたかっていうと、(少なくとも2010年頃は)おそらく一番メジャーなやつだからです

実際、いま記事を書いてる途中で気づいたけどサブディビジョンサーフェスWikipediaでも一番こまかく書かれてます

ja.wikipedia.org

中学のころDirectX 11のテッセレーションを見て「はぁ~よくわからんけど凄い」ってなってたけれど、実際にはこういう計算をしてたんだなってなって少しエモくなったんで記事にした次第です(綺麗な締め