Hareketli grafik sayfaları buna değer mi? Zip iyi bir alternatif midir?

Aug 19 2020

Hareketli grafik sayfalarının buna değer olup olmadığını merak ediyordum. Pixi.js ile bir oyun yapıyorum ve varlık yüklemeden başlayarak optimizasyonu düşünüyordum. Şu anda tüm dosyalar için bir araya sahibim ve PIXI.loader kullanıyorum, ancak bunun iyi olmadığını biliyorum çünkü uzun süren tüm dosyalar için bir web isteği yapacak, bu yüzden onları tek bir web isteğinde yüklemenin bir yolunu bulmalıyım. İlk düşündüğüm şey bir model sayfasıydı ama sonra "ya her şeyi sıkıştırıp JSZip gibi bir şey yüklersem?" Diye düşündüm. Bunun zaten mümkün olduğunu biliyordum (bir zipten pixi dokuları yükleyen bu projeden) ve potansiyeller iyi ve kötü şeyler olduğunu düşündüğüm şeyleri listeledim:

Zip iyi noktaları:

  • Varlıkların daha hızlı yüklenmesi anlamına gelen sıkıştırma
  • Elektron ile bir yapı oluştururken sıkıştırma daha küçük yapı boyutu anlamına gelir

Zip kötü noktaları:

  • Daha fazla yükleme süresi ve daha fazla RAM kullanımı anlamına gelen ayrı bir kitaplık yüklemeyi gerektirir
  • Yükleme süresinin artması anlamına gelen bellek içi sıkıştırmanın açılmasını gerektirir

Model sayfası iyi noktaları:

  • Tüm tek tek resim dosyalarının başlıklarına sahip değil
  • Çok kullanılır, bu yüzden kanıtlanmış bir tekniktir

Model sayfası kötü noktaları:

  • Sıkıştırma yok (veya en azından sıkıştırmayla karşılaştırılamaz)
  • Bazen 2024x2024px üzerindeki dosyaları engelleyen telefon sınırlamaları nedeniyle birden fazla ağ çağrısı hareketli grafik sayfalarının bölünmesini gerekli kılar
  • Tüm görüntüler aynı boyutta olmadığından ve hareketli grafik sayfasında neredeyse her zaman biraz boşluk kaldığından boş delikler, bu da ağ üzerinden hala aktarılan işe yaramaz pikseller anlamına gelir.

Çok deneyimli bir geliştirici değilim, bu yüzden birkaç sorum var:

  1. Yukarıdaki bir noktayı kaçırdım mı?
  2. Hareketli grafik sayfaları genellikle buna değer mi?
  3. Her ikisinin hangi tekniği daha değerli? İkisini de yapabilirdim ama önce birine odaklanıp diğerini güzel bir listede bırakmak istiyorum.

Yanıtlar

4 Theraot Aug 19 2020 at 01:12

Her şeyden önce, sıkıştırmalı görüntü formatları zaten var. Özellikle PNG formatı kayıpsız sıkıştırmayı destekler. Ayrıca, bir grup PNG alıp sıkıştırmanın boyut olarak bir kazanç olabileceği doğru olsa da, bir doku atlası (hareketli grafik sayfası veya benzeri) yapmak da boyutu benzer şekilde azaltacaktır, özellikle de PNG sıkıştırma seviyesini yükseltirseniz görüntüyü dışa aktarırken.

Böylece, düzgün bir şekilde dışa aktarılmış bir doku atlası size sıkıştırma konusunda listelediğiniz faydaları sağlayacaktır.

Bu, her şeyi tek bir hareketli grafik sayfasında yapmanız gerektiği anlamına mı geliyor? Hayır. Bir araya getirilmesi gereken şeyleri bir araya getirmelisiniz.

Resimleriniz küçük ve normal boyutlarda olduğunda hareketli yazı sayfalarının daha iyi çalıştığını da belirtmek gerekir. Hareketli grafik sayfalarının pek uygun olmadığı bir senaryoda çalışıyor olabilirsiniz.

Durum bu mu? Bilmiyorum. Deneme yapın. Karar vermek için her iki tekniği de denemeye istekli değilseniz, mühendislik yaklaşımı kanıtlanmış yöntemle gitmenizi önerir ve bu bir doku atlası olur.

Doku atlasındaki delikleri en aza indirebilecek paketleme algoritmaları da ilginizi çekebilir.