テクスチャが歪まない!高精度ポリゴン削減ツール
- ダウンロード商品¥ 0無料ダウンロードREADME_V4.1.0.zip(8.07 KB)README_V4.1.0.zip
【UV・マテリアル保護】Texture-Safe Mesh Simplifier / 高精度ポリゴン削減ツール Add to VCC / ALCOM : https://touma-tw.github.io/vpm/
これは Ram.Type-0 氏の Meshia Mesh Simplification のフォークです。Unity Job System + Burst による高速・非同期処理の本体はそのままに、見た目を保つためのオプション(主に VRChat アバター向け)を追加しています。テクスチャの歪みの軽減、自己交差(メッシュの突き抜け)の抑制、マテリアル/UV 境界の保持に加え、Cascading UI に「実際の三角形数」表示を追加しました。
【NDMF完全対応】アバターを傷つけない非破壊編集ツール
本ツールは NDMF (Non-Destructive Modular Framework) に対応しています。アバターのオリジナルデータを書き換えることなく、ビルド(アップロード)時に自動でメッシュの最適化・ポリゴン削減を行う非破壊編集が可能です。
このフォークで追加された機能
従来の Quadric Error Metrics (QEM) アルゴリズムは「形状」だけを最適化します。本フォークは、見た目(UV/マテリアル) と マージの安全性 も考慮するオプションを追加します。すべて MeshSimplifierOptions の新しいフィールドで制御され、すべて無効にすると元のエンジンと完全に同じ挙動になります。 🔷 【オプション(UI ラベル)詳細一覧】 ━━━━━━━━━━━━━━━━━━━━━━━━━━ ■ Preserve Texture Mapping(UseAttributeAwareError) ・既定値 | オン ・機 能 | UV0 を誤差計算そのものに組み込みます(位置 + UV の5次元属性二次誤差、Garland-Heckbert / Hoppe)。マージ位置の求解が最適な位置と UV を同時に返すため、テクスチャの歪みが大幅に起きにくくなります。 ────────────────────────── ■ UV Error Weight(UvErrorWeight) ・既定値 | 1.0 ・機 能 | 上記の「形状 vs UV」のバランス。大きいほどテクスチャを強く保持し、小さいほど幾何精度を優先します。 ────────────────────────── ■ Suppress Self-Intersection(ConstrainOptimalPosition) ・既定値 | オン ・機 能 | マージ後の頂点を元の辺の近傍に制限し、ほぼ退化した(細長い)三角形を却下します。他の面を突き抜けるスパイク(自己交差)を抑えます。 ────────────────────────── ■ Max Collapse Displacement Factor(MaxCollapseDisplacementFactor) ・既定値 | 2.0 ・機 能 | 上記の制限の厳しさ(小さいほど厳しい)。 ────────────────────────── ■ Preserve Material Boundaries(PreserveSubMeshBoundaries) ・既定値 | オン ・機 能 | 異なるサブメッシュ(マテリアル)に属する頂点同士をマージしません。マテリアル境界のにじみを防ぎます。 ────────────────────────── ■ Preserve UV Seams(PreserveUVSeams) ・既定値 | オフ ・機 能 | UV シーム上の頂点を固定します。保護力は強いものの、最も削減を妨げるオプション(結果が目標値より大幅に多く残ることがある)のため既定はオフです。テクスチャ自体は Preserve Texture Mapping で緩やかに保護されます。 ━━━━━━━━━━━━━━━━━━━━━━━━━━ 効果は状況によって異なり、常に良くなるわけではありません。これらのオプションはより多くのケースに対応するためのものです。メッシュと削減率に合わせて選んでください(下記の「チューニング」参照)。
チューニングガイド
・ 形状が支配的なメッシュを強く削減する場合(例:靴を 68k → 6k 三角形):UV Error Weight を下げるか Preserve Texture Mapping をオフにすると、従来どおりの積極的な削減になります。 ・テクスチャ模様 / UV アトラスのメッシュを中程度に削減する場合(例:ストライプの服を半分に):既定のままにしてください。属性考慮誤差が活き、従来版で起こりがちなストライプの歪みを防ぎます。 ・目標の三角形数まで下がらない場合:いずれかの保持オプションが頂点をロックしています。Preserve UV Seams・Preserve Surface Curvature・Preserve Material Boundaries を確認してください。Cascading UI に実際に到達可能な数が表示されます(下記)。
Cascading UI:実際の三角形数
Meshia Cascading Avatar Mesh Simplifier のリストでは、各 renderer の行の数値フィールドが、要求した目標値ではなく NDMF プレビューによる実際の三角形数 を表示します。保持オプションにより目標まで下がらない場合——たとえば 0 を指定しても 12345 までしか下がらない場合——実際の値を色付きで表示します。フィールドは編集可能で、フォーカスすれば正確な目標値を入力できます。 NDMF プレビューを有効にする必要があります(合計数を表示しているものと同じプレビューです)。
インストール
VCC または ALCOM に Touma VPM リポジトリを追加し、パッケージをプロジェクトに追加します。 Add to VCC / ALCOM : https://touma-tw.github.io/vpm/ 本フォークは独立したパッケージ(com.touma.meshia-simplification)で、独自の名前空間とアセット GUID を持ちます。オリジナルの Meshia を上書き・競合することはなく、別々の VPM リポジトリから同時に導入することもできます。 オリジナル Meshia(または本フォークの旧バージョン)からの移行 本フォークの初期バージョンは、オリジナルの id com.ramtype0.meshia.mesh-simplification で配布されていました。その版、またはオリジナルの Meshia を使っていた場合、内蔵ツールがコンポーネントの設定を本フォークのコンポーネントへコピーします。 旧パッケージはそのまま残し、com.touma.meshia-simplification を併せて導入します(共存できます)。 旧コンポーネントが付いた GameObject を選択すると、Inspector の上部に 「Migrate to Touma Fork」 ボタンが表示されるのでクリックします。各旧コンポーネントは設定を保ったまま、その場で新コンポーネントに置き換えられます。 すべて問題なければ、旧パッケージをアンインストールします。 移行は旧パッケージがインストールされている間に行う必要があります(旧コンポーネントが「missing script」ではなく読み込める状態であること)。
使い方
NDMF統合 MeshiaMeshSimplifier(アバター全体には Meshia Cascading Avatar Mesh Simplifier)をモデルにアタッチします。エディターで軽量化結果をプレビューしながらパラメーターを調整できます。
License
MIT License. Copyright (c) 2025 Ram.Type-0 (original author); fork modifications by touma-tw. ソースコードは GitHub にて公開しています: https://github.com/touma-tw
Version
2026/06/09 : V4.0.0 リリース 2026/06/13 : V4.1.0 完全独立パッケージとなり、オリジナル版と安全に共存可能







