بهینه سازی بهره وری انرژی، بهینه سازی بهره وری انرژی

بازی‌های اندروید عمدتاً بر روی دستگاه‌های باتری‌دار مانند تلفن یا تبلت بازی می‌شوند. بهره وری انرژی بازی خود را بهینه کنید تا به کاربران کمک کنید بازی شما را طولانی تر انجام دهند و به آنها اعتماد به نفس برای شروع یک جلسه بازی حتی زمانی که دستگاه آنها کاملاً شارژ نشده است را به آنها بدهید.

از نرخ تازه سازی نمایشگر بهینه استفاده کنید

نرخ تازه سازی صفحه نمایش سرعتی است که در آن صفحه نمایش دستگاه می تواند برای نمایش اطلاعات جدید تغییر کند. به‌طور سنتی، دستگاه‌های دستی از نرخ تازه‌سازی 60 هرتز استفاده می‌کردند و محتوای نمایشگر را 60 بار در ثانیه به‌روزرسانی می‌کردند. دستگاه‌های مدرن اغلب دارای نمایشگرهایی با نرخ تازه‌سازی بالاتر هستند که می‌توانند در فرکانس‌های 90 یا 120 هرتز به‌روزرسانی شوند. نرخ‌های تازه‌سازی بالاتر منجر به تجربه‌های کاربر روان‌تر برای اقداماتی مانند اسکرول می‌شود، اما مصرف انرژی پنل نمایشگر را افزایش می‌دهد.

بازی ها معمولا دارای نرخ فریم هدف 30 یا 60 فریم در ثانیه هستند. اگر نرخ رفرش نمایشگر بالاتر از نرخ فریم هدف بازی باشد، هیچ سودی از نرخ تازه سازی بالاتر وجود ندارد، فقط مصرف انرژی را افزایش می دهد. در دستگاه‌های با نرخ تازه‌سازی بالا، نرخ تازه‌سازی نمایشگر را طوری تنظیم کنید که تا حد امکان با نرخ فریم هدف بازی شما مطابقت داشته باشد.

کتابخانه سرعت قاب Swappy را ادغام یا فعال کنید

کیت توسعه بازی اندروید (AGDK) شامل یک کتابخانه تنظیم فریم به نام Swappy است. Swappy نرخ تازه سازی نمایشگر دستگاه را بهینه می کند تا با نرخ فریم بازی شما تا حد امکان مطابقت داشته باشد. اگر از یک موتور بازی سفارشی استفاده می‌کنید، راهنمای Frame Pacing Library را مرور کنید تا یاد بگیرید چگونه کتابخانه را با موتور خود ادغام کنید.

Swappy قبلاً در موتور Unreal ( Frame Pacing برای دستگاه‌های تلفن همراه ) و موتور Unity ( PlayerSettings.Android.optimizedFramePacing ) ادغام شده است و در صورت فعال بودن در پروژه بازی‌تان، نرخ تازه‌سازی نمایشگر را بهینه می‌کند.

API نرخ فریم اندروید را فراخوانی کنید

به عنوان جایگزینی برای یکپارچه سازی کتابخانه سرعت فریم، از API نرخ فریم اندروید برای تنظیم مستقیم نرخ تازه سازی نمایشگر استفاده کنید.

از Vulkan API برای گرافیک استفاده کنید

اندروید از دو API گرافیکی پشتیبانی می‌کند: OpenGL ES API قدیمی‌تر و Vulkan API جدیدتر. Vulkan اکنون API گرافیکی اولیه در اندروید است و کارآمدتر از OpenGL ES است. برای اطلاعات بیشتر در مورد مزایای Vulkan و نحوه استفاده از آن، به استفاده از Vulkan برای گرافیک مراجعه کنید.

به شرایط حرارتی دستگاه پاسخ دهید

استفاده زیاد از CPU و GPU دستگاه باعث تولید گرما می شود. با گرم شدن دستگاه، راندمان برق کاهش می یابد. اگر دستگاهی بیش از حد داغ شود، سرعت CPU و GPU را کاهش می دهد تا مصرف برق را کاهش دهد و اجازه دهد دستگاه خنک شود. این رفتار که به آن فشار حرارتی گفته می شود، بر عملکرد بازی شما و میزان تخلیه باتری آن تأثیر می گذارد. از Android Thermal API برای نظارت بر وضعیت حرارتی دستگاه استفاده کنید تا حجم کاری بازی خود را تنظیم کنید تا از انقباض حرارتی جلوگیری کنید.

حالت بازی دستگاه را پرس و جو کنید

حالت بازی قابلیتی است که به کاربر امکان می‌دهد ترجیح دهد که عملکرد را با عمر باتری، عمر باتری با عملکرد، یا یک پیش‌فرض خنثی را انتخاب کند. اگر بازی شما از پیکربندی‌های عملکرد متغیر پشتیبانی می‌کند، از Game Mode API برای بررسی این اولویت استفاده کنید و تنظیمات بازی خود را مطابق با آن تغییر دهید.

منابع اضافی

نمایه ساز قدرت اندروید استودیو

نمونه آزمایشی بازده انرژی یونیتی (GitHub)

،

بازی‌های اندروید عمدتاً بر روی دستگاه‌های باتری‌دار مانند تلفن یا تبلت بازی می‌شوند. بهره وری انرژی بازی خود را بهینه کنید تا به کاربران کمک کنید بازی شما را طولانی تر انجام دهند و به آنها اعتماد به نفس برای شروع یک جلسه بازی حتی زمانی که دستگاه آنها کاملاً شارژ نشده است را به آنها بدهید.

از نرخ تازه سازی نمایشگر بهینه استفاده کنید

نرخ تازه سازی صفحه نمایش سرعتی است که در آن صفحه نمایش دستگاه می تواند برای نمایش اطلاعات جدید تغییر کند. به‌طور سنتی، دستگاه‌های دستی از نرخ تازه‌سازی 60 هرتز استفاده می‌کردند و محتوای نمایشگر را 60 بار در ثانیه به‌روزرسانی می‌کردند. دستگاه‌های مدرن اغلب دارای نمایشگرهایی با نرخ تازه‌سازی بالاتر هستند که می‌توانند در فرکانس‌های 90 یا 120 هرتز به‌روزرسانی شوند. نرخ‌های تازه‌سازی بالاتر منجر به تجربه‌های کاربر روان‌تر برای اقداماتی مانند اسکرول می‌شود، اما مصرف انرژی پنل نمایشگر را افزایش می‌دهد.

بازی ها معمولا دارای نرخ فریم هدف 30 یا 60 فریم در ثانیه هستند. اگر نرخ رفرش نمایشگر بالاتر از نرخ فریم هدف بازی باشد، هیچ سودی از نرخ تازه سازی بالاتر وجود ندارد، فقط مصرف انرژی را افزایش می دهد. در دستگاه‌های با نرخ تازه‌سازی بالا، نرخ تازه‌سازی نمایشگر را طوری تنظیم کنید که تا حد امکان با نرخ فریم هدف بازی شما مطابقت داشته باشد.

کتابخانه سرعت قاب Swappy را ادغام یا فعال کنید

کیت توسعه بازی اندروید (AGDK) شامل یک کتابخانه تنظیم فریم به نام Swappy است. Swappy نرخ تازه سازی نمایشگر دستگاه را بهینه می کند تا با نرخ فریم بازی شما تا حد امکان مطابقت داشته باشد. اگر از یک موتور بازی سفارشی استفاده می‌کنید، راهنمای Frame Pacing Library را مرور کنید تا یاد بگیرید چگونه کتابخانه را با موتور خود ادغام کنید.

Swappy قبلاً در موتور Unreal ( Frame Pacing برای دستگاه‌های تلفن همراه ) و موتور Unity ( PlayerSettings.Android.optimizedFramePacing ) ادغام شده است و در صورت فعال بودن در پروژه بازی‌تان، نرخ تازه‌سازی نمایشگر را بهینه می‌کند.

API نرخ فریم اندروید را فراخوانی کنید

به عنوان جایگزینی برای یکپارچه سازی کتابخانه سرعت فریم، از API نرخ فریم اندروید برای تنظیم مستقیم نرخ تازه سازی نمایشگر استفاده کنید.

از Vulkan API برای گرافیک استفاده کنید

اندروید از دو API گرافیکی پشتیبانی می‌کند: OpenGL ES API قدیمی‌تر و Vulkan API جدیدتر. Vulkan اکنون API گرافیکی اولیه در اندروید است و کارآمدتر از OpenGL ES است. برای اطلاعات بیشتر در مورد مزایای Vulkan و نحوه استفاده از آن، به استفاده از Vulkan برای گرافیک مراجعه کنید.

به شرایط حرارتی دستگاه پاسخ دهید

استفاده زیاد از CPU و GPU دستگاه باعث تولید گرما می شود. با گرم شدن دستگاه، راندمان برق کاهش می یابد. اگر دستگاهی بیش از حد داغ شود، سرعت CPU و GPU را کاهش می دهد تا مصرف برق را کاهش دهد و اجازه دهد دستگاه خنک شود. این رفتار که به آن فشار حرارتی گفته می شود، بر عملکرد بازی شما و میزان تخلیه باتری آن تأثیر می گذارد. از Android Thermal API برای نظارت بر وضعیت حرارتی دستگاه استفاده کنید تا حجم کاری بازی خود را تنظیم کنید تا از انقباض حرارتی جلوگیری کنید.

حالت بازی دستگاه را پرس و جو کنید

حالت بازی قابلیتی است که به کاربر امکان می‌دهد ترجیح دهد که عملکرد را با عمر باتری، عمر باتری با عملکرد، یا یک پیش‌فرض خنثی را انتخاب کند. اگر بازی شما از پیکربندی‌های عملکرد متغیر پشتیبانی می‌کند، از Game Mode API برای بررسی این اولویت استفاده کنید و تنظیمات بازی خود را مطابق با آن تغییر دهید.

منابع اضافی

نمایه ساز قدرت اندروید استودیو

نمونه آزمایشی بازده انرژی یونیتی (GitHub)