lilNDMFMeshSimplifierは開発中なので、破壊的な変更が生じる場合があります。単に利用するだけであれば大きな問題は生じにくいと思いますが予めご了承ください。
また、本ページの内容が古くなる可能性がありますので、使用前にReadme等をご確認ください。(2024年8月31日現在の内容)
NDMF対応のポリゴン削減ツールは「Mantis LOD EditorのNDMF化ツール」が有名かつ精度が非常に高いのですが、似たような事ができるものとして「lilNDMFMeshSimplifier」があります。言い換えると「UnityMeshSimplifierのNDMF化ツール」ですかね(?)
Unityプロジェクトに導入する
Git URLで指定して入れる
こちらはVCCではなくUPMで導入します。
まず、ウィンドウ→パッケージマネージャーを開きます。
左上の+ボタンから「GIT URLからパッケージを加える」を選択します。
次のURLを入れて「Unity Mesh Simplifier」をインポートします。
https://github.com/Whinarn/UnityMeshSimplifier.git
「Unity Mesh Simplifier」がインポートされたことを確認できたら、「lilNDMFMeshSimplifier」も同じようにインポートします。
https://github.com/lilxyzw/lilNDMFMeshSimplifier.git
gitがないってエラーが出るんだけど?
「Git for Windows」を入れる必要があります。
「GitHub for Windows」を入れても付いてくるみたいですよ。
ローカルから入れる場合
GitHubの各ページにあるCodeボタンを押すとダウンロードができますので、「lilNDMFMeshSimplifier」と「UnityMeshSimplifier」のデータを丸ごとダウンロードして、ZIPファイルを適当な場所に展開しておきます。
先程とは異なり、左上の+ボタンから「ディスクからパッケージを加える」を選び、それぞれの「package.json」を選べばローカルインストールが行えます。
ダウンロードしてきたZIPファイルを展開する際は、直接Unityのプロジェクトフォルダ内に入れないようにした方が良いです。
早速ポリゴン数削減をしてみよう
断罪セーラーを着せたマヌカちゃんを用意しました。198,572ポリゴンです。(前回の使い回し)
まずは太もも部分の鎖を削減してみます。ポリゴン数多そうですよね。
鎖オブジェクトのインスペクタータブにある「コンポーネントを追加」から「NDMF Mesh Simplifier」を選びます。
デフォルトでは品質に0.5が入力されていますので、このまま実行するとポリゴン数が半分になります。
各パラメーターの解説は以下の通りです。
とりあえずこのままPlayモードに入ってみましょう。
見た目がガタガタとしていますが、鎖ぐらい細かいオブジェクトの場合は至近距離で見ないと分からないと思います。鎖部分だけの削減で19万から18万ポリゴンに減りました。
もちろん、品質を半分となる0.5ではなく0.75とか0.8などに上げると、ポリゴン数があまり減らない代わりに本来の見た目に近い状態になります。
調子に乗ってどんどん設定してみる
顔以外に片っ端から設定してみたところ、18万ポリゴンから13万ポリゴンまで削減できました。正確には66,282ポリゴン削減したので、アバター1体分ぐらいは減ったんじゃないでしょうか。
まずはそのまま実行してみて、形が大きく崩れるようなら「境界エッジを保持」や「UVシームのエッジを保持」あたりを有効にしてみたりすると破綻を少なくできる感じがします。靴下やタイツのように素体にフィットしている部分も貫通しやすくなりますので、無理して使わないこと重要です。
軽く試してみた限りでは、平面部分にテクスチャで模様が描いてあるような部分は壊れやすいように思いました。制服の袖の部分とかがそうですね。この辺りはMantis LOD Editorの方が上手くやれます。