Artsution® — 360° tasarım & teknoloji stüdyosu

FPS Nedir? Animasyon ve Videoda Akıcılık

FPS, bir video ya da animasyonda saniyede gösterilen kare sayısıdır. 24, 30 ve 60 FPS'in farkını ve web sitenizdeki animasyonların neden takıldığını anlatıyoruz.
Koyu basamaklar üzerinde sıçrayan topun seyrek mercan konumlardan sık turkuaz konumlara uzanan ardışık hareket izleri.

Bu konuda desteğe mi ihtiyacınız var?

Marka, web ve yazılım işlerinizi tek ekipte planlayalım.

Proje Başlat

FPS (frames per second), bir video ya da animasyonda bir saniyede gösterilen kare (görüntü) sayısıdır. FPS nedir sorusunun kısa cevabı: Hareketin ne kadar akıcı görüneceğini belirleyen ölçüdür; sinemada 24, bilgisayar ekranlarında ve arayüz animasyonlarında çoğunlukla 60 kare hedeflenir. Bu yazıda kare hızının video ve web sitenizdeki animasyonlar açısından ne anlama geldiğini, takılmaların nereden kaynaklandığını anlatıyoruz.

Kısaca

  • FPS, saniyedeki kare sayısıdır. Daha yüksek FPS daha akıcı hareket demektir, ama daha fazla veri ve işlem gücü de gerektirir.
  • 24 FPS sinema standardıdır; 25/50 ve 30/60 değerleri televizyon ve video dünyasından gelir.
  • Kare hızı (FPS) ile ekran yenileme hızı (Hz) farklı şeylerdir; çoğu ekran saniyede 60 kez yenilenir.
  • Web'de akıcı bir animasyon için tarayıcının her kareyi yaklaşık 16 ms içinde hazırlaması gerekir. Kaçırılan kareler "takılma" (jank) olarak görünür.
  • transform ve opacity ile yapılan animasyonlar genellikle daha akıcıdır; hareket azaltma tercihine de saygı gösterilmelidir.

FPS nedir?

Video ve animasyon, aslında art arda hızla gösterilen durağan görüntülerden oluşur. Her bir görüntüye kare (frame) denir. Saniyede gösterilen kare sayısı arttıkça göz, hareketi daha akıcı algılar.

  • Düşük FPS: Hareket kesik kesik, "slayt gösterisi" gibi görünür.
  • Yüksek FPS: Hareket akıcıdır; özellikle hızlı kaydırma, oyun ve spor görüntülerinde fark belirgindir.

Ancak her kare ayrı bir görüntü olduğu için yüksek FPS, daha fazla veri ve daha fazla işlem demektir. Videoda dosya boyutu artar; web animasyonlarında ise cihazın her kareyi daha kısa sürede hazırlaması gerekir.

Yaygın kare hızları ne anlama gelir?

Kare hızıNereden gelir?Tipik kullanım
24 FPSSesli sinemada 1920'lerin sonunda standart olduSinema, "sinematik" görünüm isteyen tanıtım filmleri
25 / 50 FPSDünyanın büyük bölümünde kullanılan analog televizyon sisteminin 50 Hz yapısıYayın ve video prodüksiyonu
30 / 60 FPSABD gibi ülkelerdeki televizyon sisteminin 60 Hz yapısı (tam değerleri 29,97 / 59,94)Video, ekran kaydı, sosyal medya içerikleri
60 FPS ve üzeriBilgisayar grafikleri ve oyunlarOyunlar, arayüz animasyonları, hızlı hareketli görüntüler
120 FPS ve üzeri (çekimde)Yüksek kare hızlı kameralarAğır çekim: Yüksek hızda çekilip normal hızda oynatılır

Hangi değerin "doğru" olduğu, içeriğin türüne bağlıdır. Bir kurumsal tanıtım filmi 24 ya da 25 FPS ile sinematik bir his verirken, bir uygulamanın ekran kaydı ya da bir ürünün dönme animasyonu 60 FPS ile daha akıcı görünür.

FPS ile ekran yenileme hızı aynı şey mi?

Hayır. Ancak bu iki kavramı sık karıştırırız:

  • Kare hızı (FPS): Bir sistemin ya da videonun saniyede kaç kare ürettiği veya içerdiği.
  • Yenileme hızı (Hz): Ekranın saniyede kaç kez görüntüyü güncellediği.

Çoğu ekran saniyede 60 kez yenilenir (60 Hz). MDN'nin belirttiği gibi 75, 120 ve 144 Hz ekranlar da yaygınlaşmıştır. Bu yüzden 60 Hz bir ekranda 120 FPS'lik bir animasyonun fazladan kareleri görünmez. Tersi durumda, ekran 120 Hz olsa bile video 30 FPS ise hareket 30 FPS akıcılığında kalır.

Koyu stüdyoda üç yatay çerçeve şeridi üzerinde, seyrek konumlardan yoğun ve akıcı bir diziye dönüşen mercan top hareketi.
Aynı bir saniyelik hareket: kare sayısı arttıkça ara adımlar artar.

Web sitenizdeki animasyonlarda FPS

Ziyaretçi web sitelerinde FPS'i en çok kaydırma, menü açılışları, kaydırıcılar (slider), hover efektleri ve sayfaya giriş animasyonlarında hisseder.

16 milisaniyelik bütçe

Google'ın web.dev rehberine göre çoğu cihaz ekranı saniyede 60 kez yeniler. Bu da tarayıcının her kareyi hazırlamak için yaklaşık 16,66 ms zamanı olduğu anlamına gelir. Tarayıcının kendi işleri de olduğu için rehber, sizin kodunuzun bu işi yaklaşık 10 ms içinde bitirmesi gerektiğini söyler. Kodunuz bu bütçeyi aştığında kare hızı düşer ve sayfa içeriği ekranda titrer, takılır. Buna jank denir.

Tarayıcı bir kareyi nasıl hazırlar?

web.dev, bir karenin hazırlanmasını beş aşamalı bir hat olarak anlatır: JavaScript → stil hesaplama → yerleşim (layout) → boyama (paint) → birleştirme (composite). Bir animasyonun hangi CSS özelliğini değiştirdiği, bu aşamalardan hangilerinin tekrarlanacağını belirler:

  • Genişlik, yükseklik, kenar boşluğu ya da konum (top, left) değiştiren animasyonlar her karede yerleşim hesabını yeniden yaptırabilir. Bu pahalıdır.
  • web.dev'e göre yerleşim ve boyama aşamalarını atlayıp doğrudan birleştirme aşamasında işlenebilen iki özellik vardır: transform ve opacity. Kayma, büyüme, dönme ve solma efektlerini bu iki özellikle yapmak akıcılığı korumanın en güvenilir yoludur.

CSS ve JavaScript'in sitedeki rollerini CSS nedir? ve JavaScript nedir? yazılarımızda anlattık.

JavaScript ile animasyon

JavaScript ile yapılan animasyonlarda requestAnimationFrame kullanmak, işi tarayıcının ekran yenileme döngüsüyle eşitler. MDN, bu yöntemin çağrılma sıklığının genellikle ekranın yenileme hızıyla eşleştiğini ve animasyon ilerlemesinin geçen süreye göre hesaplanması gerektiğini belirtir; aksi halde animasyon yüksek yenileme hızlı ekranlarda daha hızlı oynar.

Akıcılık ve kullanıcı deneyimi

Takılan bir animasyon yalnız estetik bir sorun değildir. Ayrıca ana iş parçacığını meşgul eden ağır scriptler, sayfanın ziyaretçinin dokunuşlarına ve tıklamalarına geç tepki vermesine de yol açabilir. Etkileşim hızını ölçen INP metriğini Core Web Vitals nedir? yazımızda anlattık.

Hareket azaltma tercihi

Öte yandan bazı kullanıcılar cihaz ayarlarından gereksiz hareketin azaltılmasını ister. MDN'ye göre büyük nesnelerin ölçeklenmesi ya da kaydırılması gibi animasyonlar, vestibüler (iç kulak kaynaklı denge) rahatsızlığı olan kişilerde rahatsızlık yaratabilir. CSS'teki prefers-reduced-motion medya sorgusu bu tercihi algılar; animasyonları bu kullanıcılar için sadeleştirmek ya da kapatmak iyi bir uygulamadır.

Video hazırlarken FPS

  • Kaynağın kare hızını koruyun. 25 FPS çekilmiş bir videoyu 60 FPS'e çevirmek akıcılık katmaz; kareler kopyalanır ya da yapay olarak üretilir, dosya büyür.
  • Gereksiz yüksek FPS'ten kaçının. Arka plan videolarında yüksek kare hızı çoğu zaman fark edilmez ama dosya boyutunu artırır. Dosya boyutunu belirleyen bir diğer etken de codec ve bit hızıdır; bkz. Codec nedir?
  • Platformun beklentisine uyun. Sosyal medya ve video platformları farklı kare hızlarını destekler; yükleme öncesinde platformun güncel önerilerini kontrol edin.
  • Ağır çekim için önceden plan yapın. Ağır çekim, ancak yüksek kare hızıyla çekilmiş görüntüden elde edilebilir.

Sık yapılan hatalar

  • Her şeyi 60 FPS'e çevirmek. Sinematik bir tanıtım filmini 60 FPS'e çevirdiğinizde "televizyon dizisi" gibi görünebilir; üstelik dosya büyür.
  • Konum ve boyut değiştirerek animasyon yapmak. transform ve opacity dururken left, width gibi özellikleri canlandırmak takılmaya yol açabilir.
  • Aynı anda çok sayıda animasyon çalıştırmak. Özellikle orta ve alt segment telefonlarda kare kaçırma riski artar.
  • Yalnız güçlü bir bilgisayarda test etmek. Çünkü masaüstünde akıcı görünen animasyon, telefonda takılabilir.
  • Hareket azaltma tercihini görmezden gelmek.

Bizim deneyimimiz

Kendi sitemizde mobil PageSpeed iyileştirmesi yaparken ekran dışında kalan animasyonları da ele aldık; ziyaretçinin görmediği alanlardaki hareketin cihazı gereksiz yere meşgul etmemesini hedefledik. Web tasarım projelerinde animasyonu bir süs olarak değil, ziyaretçiye yön gösteren bir araç olarak kullanmayı tercih ediyoruz ve hareketli öğeleri mobil cihazlarda da test ediyoruz.

Sık sorulan sorular

Video için 24 FPS mi, 30 FPS mi, 60 FPS mi seçmeliyim?

İçeriğe bağlıdır. Örneğin sinematik bir his isteyen tanıtım filmlerinde 24 ya da 25 FPS, genel video ve sosyal medya içeriklerinde 25 ya da 30 FPS, hızlı hareket içeren görüntülerde ve ekran kayıtlarında 50 ya da 60 FPS yaygın tercihlerdir. Önemli olan, çekim ve kurgu boyunca aynı kare hızını korumaktır.

Yüksek FPS her zaman daha mı iyi?

Hayır. Yüksek FPS daha akıcı hareket sağlar, ama dosya boyutunu ve işlem yükünü artırır. Üstelik ekranın yenileme hızının üzerindeki kareler de görünmez. Amaç en yüksek değeri değil, içeriğe uygun değeri seçmektir.

Sitemdeki animasyonlar telefonda neden takılıyor?

En sık nedenler; yerleşimi yeniden hesaplatan CSS özelliklerinin canlandırılması, aynı anda çok sayıda animasyon çalışması ve ana iş parçacığını meşgul eden ağır JavaScript'tir. Animasyonları transform ve opacity ile yapmak ve gereksiz scriptleri azaltmak genellikle belirgin iyileşme sağlar.

Animasyonları tamamen kaldırmak gerekir mi?

Gerekmez. Çünkü iyi tasarlanmış, amaçlı ve hafif animasyonlar kullanıcıya yön gösterir. Önemli olan, performans bütçesini aşmamak ve hareket azaltma tercihini kullanan ziyaretçilere sade bir deneyim sunmaktır.

Sonuç

FPS, hareketin akıcılığını belirler; ama doğru kare hızı içeriğe göre değişir. Videoda kaynağın kare hızını korumak ve gereksiz yüksek değerlerden kaçınmak dosyaları hafif tutar. Web sitenizde ise akıcılığın anahtarı, tarayıcının her kareyi kısa sürede hazırlayabilmesidir: transform ve opacity ile tasarlanmış, mobilde test edilmiş ve hareket tercihlerine saygılı animasyonlar.

Sitenizde ya da sosyal medya içeriklerinizde hareketi doğru kullanmak için web tasarım ve sosyal medya tasarımı hizmetlerimize göz atabilir ya da bize ulaşabilirsiniz.

Grafik Sanat'ta öğrenin: Konuyu görselli anlatım ve testlerle öğrenmek için → grafiksanat.com.tr/terim/fps

Kaynaklar5
  1. Wikipedia, "Frame rate" en.wikipedia.org
  2. web.dev, "Rendering performance" web.dev
  3. web.dev, "Stick to compositor-only properties and manage layer count" web.dev
  4. MDN Web Docs, "Window: requestAnimationFrame() method" developer.mozilla.org
  5. MDN Web Docs, "prefers-reduced-motion" developer.mozilla.org
LinkedIn
WhatsApp
X
Facebook

Proje Başlat

Bize projenizden bahsedin.

Formu doldurun, bir iş günü içinde size özel bir yol haritasıyla dönelim. Dilerseniz doğrudan info@artsution.com.tr adresine de yazabilirsiniz.