GLB gltfpack ile çokgen azaltma
Üçgen tutma kontrolü, orijinal üçgen sayısının ne kadarını korumak istediğinizi ayarlar. Bu bir vaat değil, hedeftir. Bu sayfada geometri basitleştirmesi ele alınmaktadır; doku boyutunu veya kodlamayı değiştirmez.
Orta düzeyde bir hedefle başlayın
Orijinal modeli yükleyin, dokuları değiştirmeden tutun ve Hedef üçgen tutma değerini 50% olarak ayarlayın. Basitleştirme hatasını varsayılan 1% değerinde bırakın. Aşağı inmeden önce kavisli hatları, ince parçaları ve delikleri karşılaştırın. Birden fazla ağa sahip modeller için yalnızca toplam sayıya karar vermek yerine her bir parçayı kontrol edin.
gltfpack -i input.glb -o output.glb -si 0.5 -kn -km -ke
Hedefe neden ulaşılamıyor?
Hata sınırı kabul edilebilir basitleştirme hatasını sınırlar. Daha sıkı bir sınır, azaltmayı erkenden durdurabilir. Açık sınırlar, özel dikişler ve küçük ağ parçalarının yapısı da daha az güvenli basitleştirme seçeneği bırakabilir. Web sitesi ölçülen sonucu ve olası nedenleri rapor eder; motor kesin bir durma nedeni tanımlamıyor.
Ayrı parçaların açık kenarlarla eşleşmesi gerektiğinde kenar köşelerini kilitleyin. Bu, boşlukların önlenmesine yardımcı olabilir ancak daha fazla üçgen kalmasına neden olabilir. Birleştirilmiş parçaları ihracattan sonra test edin; sınırları kilitlemek her görsel dikişin değişmeden kalacağını garanti etmez.
Dalgalanma örneğinde ölçülen sonuçlar
| Basitleştirme ayarları | Çıkış üçgenleri |
|---|---|
| Orijinal ağ | 8,192 |
| 50% hedefi, varsayılan hata sınırı | 4,095 |
| 10% hedefi, sıfır hata, kilitli kenarlıklar | 8,192 |
| 10% hedefi, agresif basitleştirme | 812 |
Çalıştırmalar aynı orijinal CC0 örneğini ve yerel gltfpack 1.3'ü kullanır. Üçgen toplamları her mesh temel öğesini bir kez sayar. Sonuçlar modele bağlıdır ve hedefe yakın bir sayım, kalan şeklin kabul edilebilir olup olmadığı konusunda hiçbir şey söylemez.
Silüeti aynı açıyla karşılaştırın
Bu görüntüler, tablodaki dosyaları Three.js 0.180.0'da aynı kamera, ışıklandırma ve malzemelerle oluşturuyor. Tam boyutta incelemek için bir resmi açın. Dış loblar ve iç açıklıkla başlayın; Sonucu yalnızca üçgen sayımlarına göre yargılamayın.



Agresif 10% sonucunda iç açıklık gözle görülür şekilde daha düz bölümlere ve daha keskin köşelere sahiptir. Dış loblar da yuvarlaklığını bir miktar kaybeder. Üçgen hedefine ulaşılmış olsa bile bu değişiklikleri küçük bir küçük resimde gözden kaçırmak kolaydır.
Bu örnekte dış görünüm veya animasyon yoktur. Tek bir görünüm, hareket sorunlarını, gizli yüzeyleri veya her gölgeleme değişikliğini ortaya çıkaramaz. Daha düşük bir üçgen sayısını kabul etmeden önce kendi sonucunuzu döndürün ve amaçlanan görüntü boyutunda kontrol edin.
Agresif basitleştirmeyi yalnızca karşılaştırmadan sonra kullanın
Agresif basitleştirme, istenen sayıma öncelik verir ve hata sınırını göz ardı eder. Bu mod etkinken arayüz hata alanını devre dışı bırakır. Bunu bir kopya üzerinde kullanın ve silueti ve yüzey gölgelemesini inceleyin. Zor bir model için kaliteyi koruyan bir kısayol değildir.
gltfpack -i input.glb -o output.glb -si 0.1 -sa -kn -km -ke
Daha az sayıda üçgen dosya boyutunu zar zor küçültüyorsa →
Motor referansı: gltfpack
Optimize ediciyi açın ↗