FPS چیست و چه تاثیری بر عملکرد بازی ها دارد + جزئیات کامل
از سویی دیگر، منظور از FPS در بازی میتواند بهغیر از Frames Per Second مخفف عبارت انگلیسی First-person shooter باشد که باید با توجه به زمینهی کاربرد آن معنای آن را درک کرد.
بازیهای نوع FPS در حالت دوم منظور بازیهای اول شخصی است که کاربر بازی را از نقطهنظر شخصیت بازی انجام میدهد و دنیای بازی را از دید او میبیند و در اکثر موارد دستهای کارکتر بازی و در موارد معدودی قسمت پایینتنه را نیز میتوان مشاهده کرد.
اندازهگیری FPS
در فرایند اندازهگیری FPS در بازی، ابزارهای بنچمارکگیری نرخ فریم را اندازه نمیگیرند و آنچه مورد سنجش قرار میگیرد فواصل زمانی بین تولید و رندر هر تصویر است که به آن Frametime گفته میشود. اندازه Frametime محاسبه شده برای بهدست آوردن مقدار نرخ فریم استفاده میشود که از فرمول سادهی زیر پیروی میکند.
FPS = 1000 / frametimes
Frametimes = 1000 / FPS
بنابراین، همانطور که مشاهده میکنید، FPS برابر است با مقدار معکوس Frametimes مربوطه، پس فریمتایم بالا به معنای FPS پایین خواهد بود و فریمتایم پایین به معنای FPS بالا تعبیر میشود و تمام معیارهای عملکرد براساس دادههای خام هر فریمتایم اندازهگیری شده به مقدار FPS بهدست میآید.
براین اساس، نرخ فریم محاسبه میانگین تعداد فریمهای رندرشده در مدت زمان مشخص، مثلاً در ۲۰ ثانیه، است. بهکارگیری این رویکرد به این دلیل است که شاید همهی تصاویر در یک مدت زمان مشخص رندر نشوند. در گذشته، اکثر بنچمارکها حداقل، حداکثر و میانگین نرخ فریم را نشان میدادند؛ اما در این حالت مقادیر محاسبهشده حق مطلب را ادا نمیکنند.
فرض کنید در یک فرایند بنچمارکگیری ۱٬۰۰۰ فریم با میانگین ۶۰ فریمبرثانیه ثبت شده است. اگر در یک نمونه نتیجه ۵ فریمبرثانیه و در نمونهای دیگر نتیجه ۲۰۰ فریمبرثانیه محاسبه شود، بهترتیب مقدار حداقل و حداکثر نرخ فریم درنظر گرفته خواهند شد. پس، حتی اگر ۹۹۸ فریم دیگر نزدیک به ۵ یا ۲۰۰ نباشند در هرصورت ۵ و ۲۰۰ حداقل و حداکثر نرخ فریم خواهند بود.
اما، با توجه به اینکه مقدار ۵ و ۲۰۰ FPS فقط یکبار اتفاق افتادهاند، منطقی نیست که آنها را نشاندهنده معتبر و قابل اتکایی برای ارزیابی تجربه گیمینگ بهحساب بیاوریم. بنابراین، مفهوم دیگری برای ارزیابی بهتر FPS در بازی پیشنهاد شد که «Xth Percentile» نام دارد. اما پرسنتایل در اندازهگیری نرخ فریم چیست؟
مثال قبل را درنظر بگیرید که ۱٬۰۰۰ فریم با مقادیر متنوع در یک جلسه بنچمارکگیری بهدست آمدهاند. ابتدا، تمام این مقادیر از کوچک به بزرگ مرتب میشوند و هرکدام نامی براساس رتبه دریافت می کنند که ترکیبی از رتبه آنها بهاضافه Percentile خواهد بود.
مثلاً، 99th Percentile مقداری است که در جایگاه ۹۹۰ رتبهبندی قرار میگیرد و به همین ترتیب پرسنتایل ۹۵ منظور مقدار نرخ فریم بهدست آمده در رتبه ۹۵۰ خواهد بود. اما، با بیان این معیار، مقادیر بهدست آمده به دو دسته تقسیم میشوند و در مثال پرسنتایل ۹۹ میبینیم که ۹۹ درصد از مقادیر بهتراز آن ۱ درصد هستند.
پس، مقادیر پرسنتایل یا به بیانی دیگر «صدک» مرتبط با میانگین زمان نیستند و به خود فریم اشاره میکنند. در چنین حالتی از بنچمارکگیری تفسیر نتایج دقیقتر میشود و دید بهتری نسبت به نرخ فریم سختافزار بهدست میآید.
بدین ترتیب، وقتی گفته شود پرسنتایل یکم برابر با ۴۵ فریمبرثانیه است، اینطور باید برداشت کرد که در ۹۹ درصد از مواقع نرخ فریم بیشتر از ۴۵ فریمبرثانیه است.
در مثالی دیگر، فرض کنید در یک آزمایش ۲۰ ثانیهای مقدار P1 برابر با ۴۵ فریمبرثانیه بهدست میآید و یک درصد از فریمهای نادیده گرفتهشده، ۴ مورد فریمتایم عجیب را دربر یگیرد که رندر هرکدام ۵۰۰ میلیثانیه زمان نیاز داشته است. درنتیجه، در چنین حالتی حداقل ۱۰ درصد از زمان تست، نرخفریم کمتر از ۴۵ برآورد میشود.
دیگر حالت خاصی از پرسنتایل که کمتر بهچشم میآید Median یا «میانه» نام دارد. همانطور که شاید از نامش حدس زده باشید منظور از میانه، پنجاهمین پرسنتایل در رتبهبندی خواهد بود.
برتری مفهوم 50th Percentile نسبت به میانگین نرخفریم در این است که اگر مقادیر بزرگ در رتبه بندی وجود داشته باشند روی آن تأثیر چندانی نمیگذارند. زیرا، در هر صورت این مقدار در وسط سایر مقادیر قرار میگیرد درحالی که در محاسبه متوسط نرخ فریم، مقادیر عجیب مثل ۵ یا ۲۰۰ فریمبرثانیه نیز تأثیرگذار هستند.
البته، اگر بازی غالباً به صورت روان اجرا شود، مقدار میانه و مقدار میانگین نرخفریم برابر خواهد شد.
بااین همه، به عقیدهی بسیار از افراد مشکل دیگری که در اندازهگیری FPS در بازی باید درنظر گرفته افتادگی و شکاف در مقدار Framettime در طول اجرای واقعی بازی است که میتواند به دلیل بارگذاری یا ذخیره بازی با آن مواجه شویم.
فرق نرخ نوسازی با فریم ریت
برخلاف نرخ فریم (FPS) نرخ نوسازی مستقیماً با مانیتور و در اصل با پنل نمایشگر ارتباط دارد. نرخ نوسازی درواقع، تعداد دفعاتی که نمایشگر مانیتور تازهسازی میشود را نشان میدهد و معیار اندازهگیری آن هرتز است.