GLB-Polygonreduktion mit gltfpack
Der Dreieckserhalt legt fest, welchen Anteil der ursprünglichen Dreieckszahl du behalten möchtest. Wegen der Fehlergrenze oder Einschränkungen des Meshes kann das Ergebnis über diesem Ziel liegen. Diese Einstellung betrifft die Geometrie; Texturabmessungen und -kodierung werden separat gesteuert.
Mit einem moderaten Ziel beginnen
Lade das Originalmodell hoch, lasse die Texturen unverändert und setze den Zielanteil verbleibender Dreiecke auf 50%. Belasse die Fehlertoleranz bei standardmäßig 1%. Vergleiche runde Umrisse, dünne Teile und Öffnungen, bevor du weiter reduzierst. Prüfe bei Modellen mit mehreren Meshes jedes Teil statt nur die Gesamtsumme.
gltfpack -i input.glb -o output.glb -si 0.5 -kn -km -ke
Warum das Ziel möglicherweise nicht erreicht wird
Die Fehlertoleranz begrenzt den akzeptablen Vereinfachungsfehler. Ein strengerer Wert kann die Reduktion früh stoppen. Offene Ränder, Attributnähte und die Struktur kleiner Mesh-Teile können ebenfalls weniger sichere Vereinfachungsschritte zulassen. Die Website nennt das gemessene Ergebnis und mögliche Ursachen; die Engine meldet keinen einzelnen genauen Abbruchgrund.
Fixiere Randpunkte, wenn separate Teile weiterhin an offenen Kanten zusammenpassen müssen. Das kann Lücken vermeiden helfen, aber mehr Dreiecke übrig lassen. Teste die zusammengesetzten Teile nach dem Export; fixierte Ränder garantieren nicht, dass jede sichtbare Naht unverändert bleibt.
Messwerte am Wellenbeispiel
| Vereinfachungseinstellungen | Ausgabedreiecke |
|---|---|
| Originalmesh | 8.192 |
| 50% Zielanteil, Standardfehlertoleranz | 4.095 |
| 10% Zielanteil, Fehler null, fixierte Ränder | 8.192 |
| 10% Zielanteil, aggressive Vereinfachung | 812 |
Die Durchläufe verwenden dasselbe originale CC0-Beispiel und natives gltfpack 1.3. Die Dreieckszahlen zählen jedes Mesh-Primitiv einmal. Ergebnisse hängen vom Modell ab; eine Zahl nahe am Ziel sagt nichts darüber aus, ob die verbleibende Form akzeptabel ist.
Umrisse aus demselben Winkel vergleichen
Diese Bilder zeigen die Dateien aus der Tabelle mit identischer Kamera, Beleuchtung und Materialien in Three.js 0.180.0. Öffne ein Bild in voller Größe. Beginne bei den äußeren Wölbungen und der inneren Öffnung; beurteile das Ergebnis nicht allein anhand der Dreieckszahl.
Beim aggressiven 10%-Ergebnis hat die innere Öffnung sichtbar geradere Abschnitte und schärfere Ecken. Auch die äußeren Wölbungen verlieren an Rundung. Diese Veränderungen gehen in einem kleinen Vorschaubild leicht unter, obwohl die Zieldreieckszahl erreicht wurde.
Dieses Beispiel hat weder Skinning noch Animation. Eine einzelne Ansicht zeigt keine Bewegungsprobleme, verdeckten Flächen oder jede Schattierungsänderung. Drehe dein eigenes Ergebnis und prüfe es in der vorgesehenen Darstellungsgröße, bevor du eine niedrigere Dreieckszahl akzeptierst.
Aggressive Vereinfachung erst nach dem Vergleich verwenden
Aggressive Vereinfachung priorisiert die angeforderte Dreieckszahl und ignoriert die Fehlertoleranz. Die Oberfläche deaktiviert das Fehlerfeld, solange dieser Modus aktiv ist. Verwende ihn an einer Kopie und prüfe Umrisse und Oberflächenschattierung. Er ist keine qualitätserhaltende Abkürzung für schwierige Modelle.
gltfpack -i input.glb -o output.glb -si 0.1 -sa -kn -km -ke
Wenn weniger Dreiecke die Datei kaum verkleinern →
Engine-Referenz: gltfpack
Optimierer öffnen ↗

