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

VereinfachungseinstellungenAusgabedreiecke
Originalmesh8.192
50% Zielanteil, Standardfehlertoleranz4.095
10% Zielanteil, Fehler null, fixierte Ränder8.192
10% Zielanteil, aggressive Vereinfachung812

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.

Originales Wellenmodell aus der festen Vergleichskamera
Original: 8.192 Dreiecke
Wellenmodell mit 50 Prozent verbleibenden Dreiecken
50% verbleibend: 4.095 Dreiecke
Wellenmodell nach aggressiver Reduktion auf 10 Prozent
Aggressiv, 10% verbleibend: 812 Dreiecke

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 ↗