ジャンル雑多なゲーム・ゲーム制作関連の色々な情報を取り扱っているブログ。最近はBlenderについてが中心。
[Blender 2.8] 頂点数削減でパフォーマンス向上 [デシメートモディファイアー]

[Blender 2.8] 頂点数削減でパフォーマンス向上 [デシメートモディファイアー]

今回の記事は『デシメートモディファイアー』について取り上げさせていただきたいと思います。

ちなみに、v2.80~2.81では『ポリゴン数削減モディファイアー』という名称でした。当記事では、特に画像などの中でこちらの名前の表示が散見されるかと思いますが、機能的には同じ物ですのでそのまま使用しております。

このモディファイアーは、元のメッシュの形状を維持しながらメッシュの頂点・面の数を削減することができる、というものです。データ量が軽くなり、パフォーマンス向上したい時などに便利だと思います。

ちょうど細分化の逆、『サブディビジョンサーフェスモディファイアー』の正反対のモディファイアーみたいな感じですね。

メッシュの頂点や面の数を変化させるという点では、『リメッシュモディファイアー』と似ています。

ですが、あちらはそもそもが“形状の単純化”であり、やりようによっては頂点数が増えます。

対してこちらは、“面・頂点数の削減”のためのものです。

“形状の単純化”もある程度は測れるかもしれませんが、それはおまけのようなもので、主とした目的ではありません。勿論、こちらのモディファイアーも複雑化したメッシュ”形状を単純化”するのに使っても良いと思います。

v2.82~新たに「頂点間の距離」を元に頂点数の削減が出来る『溶接モディファイアー』という機能が追加されました。

「オブジェクトの形状から均等に」頂点数の削減を行うのであれば『デシメートモディファイアー』、「頂点が密集している部分に集中的に」頂点数の削減を行いたいのであれば『溶接モディファイアー』、という使い分けが個人的にオススメです。

『溶接モディファイアー』について、詳しくは↓の記事をご覧ください。

※2020年1月10日 加筆修正を行いました。
※2020年1月30日 加筆修正を行いました。
※2020年2月18日 加筆修正を行いました。
※2020年4月13日 加筆修正・タイトルを変更しました。
※2020年4月15日 加筆修正・タイトルを変更しました。
※2024年8月7日 加筆修正・追記を行いました。

目次

まず最初に

Blender デシメート モディファイアー 3DCG モデリング

『デシメートモディファイアー』を追加したいオブジェクトを選択しておき、[プロパティエディタ]>[モディファイアー]>[モディファイアーを追加]で表示される一覧から、[デシメート]という項目を選びます。

Blender デシメート モディファイアー 3DCG モデリング

今回は、『ICO球』を追加時に[オペレーターパネル]で[細分化:”1″]に設定したメッシュオブジェクトに、

Blender ポリゴン数削減 モディファイアー 3DCG モデリング ICO球

『サブディビジョンサーフェスモディファイアー』で細分化を行ったものを使用します。

Blender ポリゴン数削減 サブディビジョンサーフェス モディファイアー 3DCG モデリング ICO球

[デシメート]の基本の3タイプ

このモディファイアーを扱う際に、まずは大きく3タイプから、ポリゴン数削減のタイプを選びます。

ざっくりと、(私の主観が大いに入った)3タイプの違いについての説明すると、下のようになります。

タイプ1 –[束ねる(Collapse)]タイプ

メッシュの形状を考慮して、比較的均等に頂点を結合します。

メッシュ全体で頂点・辺・面の密集率をあまり偏らせずに結合できるタイプだと思います。

Blender デシメート モディファイアー 3DCG モデリング
  • [比率(Ratio)] …元の面の数を”1″とした時の、ポリゴン数削減する後に保持する面の割合。
  • [頂点グループ(Vertex Group)] …削減する部分を『頂点グループ』で指定。
    • [係数(Factor)] …指定した『頂点グループ』が、ポリゴン数削減する時に与える影響の割合。[頂点グループ]に『頂点グループ』を指定した場合のみ、設定可能。
  • [三角面化(Triangulate)] … ポリゴン数削減時、三角面に分割する。
  • [対称(Symmetry)] … 軸を指定して対称性を維持する。右の[座標軸(Axis)]のプルダウンメニューの[X]、[Y]、[Z]から対称軸を選択する。

[比率(Ratio)]

元の面の数を”1″とした時、どれくらいポリゴン数削減後に面数を維持するかを指定します。

Blender ポリゴン数削減 モディファイアー 3DCG モデリング ICO球

[頂点グループ(Vertex Group)]

削減する部分を『頂点グループ』で指定します。また、[反転]([↔]ボタン)すると、『頂点グループ』での指定が逆転します。

[係数(Factor)]

指定した『頂点グループ』が、ポリゴン数削減する時に与える影響の割合。[頂点グループ]に『頂点グループ』を指定した場合のみ、設定できます。

仮に、こんな感じに“ウェイト”を設定した『頂点グループ』を作っておきます。

Blender ポリゴン数削減 モディファイアー 3DCG モデリング ICO球

その状態で、先ほどのように[比率]の値を変えると、『頂点グループ』で設定した“ウェイト”によって、変化する度合いが変わります。

ちなみに、“ウェイト”を設定するのに効率的な方法で『ウェイトペイント』という作業があります。

この『ウェイトペイント』と『頂点グループ』について、詳しく書かせていただいた記事がありますので、よろしければ併せてご覧ください。

[三角面化(Triangulate)]

ポリゴン数削減後、三角面に分割を行います。

元のメッシュが三角面ばかりなので変化がわかりにくいかもしれませんが、四角形以上の多角形を三角形に分割しています。

Blender ポリゴン数削減 モディファイアー 3DCG モデリング ICO球 三角面化

その名の通り、いわゆる「三角面化」([Ctrl]+[T])をついでに行う感じですね。三角面化に関しては、過去に三角面化を行う『三角面化モディファイアー』について記事を書かせていただいたので、参考までに。

[対称(Symmetry)]

この項目にチェックをすると、右の[座標軸]のプルダウンメニューの[X]、[Y]、[Z]から選択した軸を対象軸とし、対象軸として指定した軸での対称性を維持した削減を行います

  • X軸対称を選択 フロント視点
Blender ポリゴン数削減 モディファイアー 3DCG モデリング ICO球
  • X軸対称を選択 ライト視点
Blender ポリゴン数削減 モディファイアー 3DCG モデリング ICO球
  • Y軸対称を選択 フロント視点
Blender ポリゴン数削減 モディファイアー 3DCG モデリング ICO球
  • Y軸対称を選択 ライト視点
Blender ポリゴン数削減 モディファイアー 3DCG モデリング ICO球

タイプ2 –[分割の復元(Un-Subdivide)]タイプ

細分化(サブディビジョン)の逆で、面の分割によって生じた辺を削除します。

削除しても、元のメッシュの形状から、大きく変わらない部分の頂点・辺・面を削除しますので、こちらは前項の[束ねる]タイプとは違い密集率に偏りが出ます。

Blender ポリゴン数削減 モディファイアー 3DCG モデリング
  • [反復(Iterations)] … 集約操作を反復させる回数を指定。ちょうど、サブディビジョン(細分化)の反対動作。2回の反復は1回の細分化操作と同じなので、通常は偶数値で指定する。
Blender ポリゴン数削減 モディファイアー 3DCG モデリング ICO球

タイプ3 –[平面(Planar)]タイプ

メッシュを統合して平面ポリゴン化します。

兎に角、角度で削減を行うタイプです。

Blender ポリゴン数削減モディファイアー 3DCG モデリング
Blender デシメート モディファイアー 3DCG モデリング
  • [角度制限(Angle Limit)] …この項目に入力した角度以下の部分を統合する。
  • [全境界(All Boundaries)] …面の境界に沿ってすべての頂点を溶解する。(おそらく、離れた部分の頂点でも角度制限内以下であれば溶解するという事だと思われる)[角度制限]に高い値を入力していた場合、より高精度の結果を得られる。
  • [区切り(Delimit)] …特定の場所でメッシュを分解しないようにする。

[角度制限(Angle Limit)]

この項目に入力した角度以下の部分を統合します。

Blender ポリゴン数削減 モディファイアー 3DCG モデリング ICO球

[全境界(All Boundaries)]

面の境界に沿ってすべての頂点を溶解する…らしいのですが、私が実際に触ってみた感じ、おそらく、離れた頂点(直接隣接していないような位置関係の頂点)同士でも、形状に沿った[角度制限]で入力した角度以下の位置関係関係であれば溶解する、という事だと思われます。

この項目の説明のために、以前作った歯車を引っ張り出してきて、変化を見てみるとこんな感じです。

本来隣接してない部分同士も溶解しているのがお分かりになるでしょうか?

Blender ポリゴン数削減 モディファイアー 3DCG モデリング 歯車

[区切り(Delimit)]

以下から選んだ特定の場所でのメッシュを溶解しないように指定できます。

  • [ノーマル(Normal)]

面の法線が反転する境界となる辺を溶解しない。

ビューポート上の表示設定を変えて、面の向きを視覚的に分かりやすくしてみました。

(表: 青、裏: 赤)

Blender ビューポート表示 面の向き 法線

※画像では、[標準]となっておりますが、機能的同じものです。

Blender ポリゴン数削減 モディファイアー 3DCG モデリング ICO球
  • [マテリアル(Material)]

異なるマテリアルが割り当てられている境界となる辺を溶解しない。

Blender ポリゴン数削減 モディファイアー 3DCG モデリング ICO球
  • [シーム(Seam)]

『シーム』をマークされている辺を溶解しない。

Blender ポリゴン数削減 モディファイアー 3DCG モデリング ICO球 シーム
  • [シャープ(Sharp)]

『シャープ』をマークされている辺を溶解しない。

Blender ポリゴン数削減 モディファイアー 3DCG モデリング ICO球 シャープ
Blender ポリゴン数削減 モディファイアー 3DCG モデリング ICO球

ちなみに、『シーム』『シャープ』に関しましては、以前、具体的な用途や個人的にオススメの使い方などを書かせていただいた記事がございますので、詳しく知りたい方はよろしければ↓をご覧ください。

  • [UV(UVs)]

『UVエディター』上で表示される『UVマップ』の辺の配置から、[角度制限]での溶解する辺を判断します。

今回の例では、実際には『サブディビジョンサーフェスモディファイアー』も併用しているので、厳密には違うのですが、一度『サブディビジョンサーフェスモディファイアー』を適用した後にやってみた結果も、大体同じような結果になったので、このままでいきます。

(あと、ここまで細分化されてると、ぶっちゃけUVマップが真っ黒になっちゃって逆に見づらいので汗)

Blender ポリゴン数削減 モディファイアー 3DCG モデリング ICO球

UVマップの面の境界の辺となっている部分が[角度制限]の値を変化させている途中に、削除されず残っているのがわかりますでしょうか?

Blender ポリゴン数削減 モディファイアー 3DCG モデリング ICO球

その他の設定項目

[Face Count]

モディファイアーの欄の左下に表示されているこの項目は、このモディファイアーを適用した結果残っている面の数を示しています。

この項目は入力する項目という訳ではありません。このモディファイアーを設定しているメッシュオブジェクトの面の数を自動計測してくれる項目です。

今までの他の項目で掲載したgifの中で目を向けてみると、数値が勝手に動いているのがお分かりになるかと思います。

Blender ポリゴン数削減 モディファイアー 3DCG モデリング ICO球

おまけその1:岩モデルメイキング

最後の[平面]タイプでポリゴン数削減していた時に思ったのですが、

「これ使えば、簡単に岩を作成できないか?」

と思って、やってみたら、結構それっぽくなったので、おまけとしてご紹介します。

  1. まずはそれっぽい感じの形のメッシュを作成します。
Blender 岩 3DCG モデリング
  1. サブディビジョンサーフェスモディファイアーを使って細分化します。
Blender 岩 3DCG モデリング
  1. デシメートモディファイアー』の[平面]で、面の数をある程度少なくし、面を縁取る辺がギザギザを描くようになった角度のところで止めておきます。

※画像では旧名の『ポリゴン数削減モディファイアー』での表記

Blender 岩 3DCG モデリング
  1. リメッシュモディファイアー[モード: スムーズ]を使います。これで大体完成です!
Blender 岩 3DCG モデリング
  1. おまけでこれは必須ではないですが、お好みで『三角面化モディファイアー』を使ってメッシュを全体的に整えても良いかと思います。
Blender 岩 3DCG モデリング

こんな感じで完成です!

おまけその2:斜め格子を簡単作成

  1. まずはある程度細分化した平面オブジェクトを用意します。
  1. 平面オブジェクトに『デシメートモディファイアー』を追加し、[分割の復元]>[反復]の値を”1″にします。

たったこれだけで完成です!

何かわからないことなどあれば、ご質問どうぞ!(間違いなどもご指摘くださるとありがたいです汗)

参考にさせていただいたサイト・ページ一覧

モディファイアー関連の記事のご紹介

この記事の他にも、Blenderの様々なモディファイアーについて、機能や使い方を私自身も試しながらではありますが、ご紹介させていただいております。よろしければ、こちらも併せてご覧ください。

生成

Blenderに関する記事や作品をまとめたページ作りました!

Pocket