রিফ্রেশ হার অপ্টিমাইজ করুন

Android 15 বিদ্যুত খরচ অপ্টিমাইজ করার জন্য গেমগুলির জন্য একটি ডিফল্ট 60Hz রিফ্রেশ রেট সেট করে। 120 FPS এর মতো উচ্চতর ফ্রেম রেট আনলক করতে, আপনাকে এখন স্পষ্টভাবে ফ্রেম রেট API বা Swappy লাইব্রেরি ব্যবহার করে তাদের অনুরোধ করতে হবে।

যাইহোক, ব্যাটারি স্তর বা ডিভাইসের তাপমাত্রার মত বিষয়গুলির উপর ভিত্তি করে সিস্টেম এই অনুরোধটিকে ওভাররাইড করতে পারে৷ যদিও উচ্চতর রিফ্রেশ রেট চাক্ষুষ মসৃণতা বাড়ায়, তারা আরও শক্তির দাবি করে এবং অতিরিক্ত তাপ উৎপন্ন করে। অতএব, ব্যবহারকারীদের তাদের পছন্দের রিফ্রেশ রেট বেছে নেওয়ার বিকল্প অফার করা এবং একটি সুষম ব্যবহারকারীর অভিজ্ঞতা নিশ্চিত করার জন্য পারফরম্যান্স সতর্কতার সাথে পর্যবেক্ষণ করা অত্যন্ত গুরুত্বপূর্ণ।

setFrameRate() API ব্যবহার করুন

setFrameRate() API গেম devsকে একটি নির্দিষ্ট ডিসপ্লে রিফ্রেশ রেট ব্যবহার করতে দেয়। এটি করার জন্য দুটি পদক্ষেপ রয়েছে:

  1. ডিভাইস এবং অ্যান্ড্রয়েড সংস্করণ সামঞ্জস্য যাচাই করুন।
  2. setFrameRate() ব্যবহার করে উচ্চ FPS এর জন্য অনুরোধ করুন।

ডিভাইস এবং অ্যান্ড্রয়েড সংস্করণ সামঞ্জস্য যাচাই করুন:

ডিভাইসটি 90Hz, 120Hz, বা অন্যান্য রিফ্রেশ রেট সমর্থন করে কিনা তা নির্ধারণ করতে Display.getSupportedModes() পদ্ধতি ব্যবহার করুন। ডিভাইসটি 60Hz এ সীমাবদ্ধ থাকলে, এই সীমা অতিক্রম করা সম্ভব নয়।

কোটলিন

val display = windowManager.defaultDisplay
val supportedModes = display.supportedModes
for (mode in supportedModes) {
  Log.d("DisplayInfo", "Supported mode: ${mode.physicalWidth}x${mode.physicalHeight}, ${mode.refreshRate}Hz")
}

উচ্চ FPS অনুরোধ করুন

যখন আপনার রেন্ডারিং লুপ শুরু হয়, গেম উইন্ডো ইনিশিয়ালাইজেশনের সময় বা টার্গেট FPS-এর ডিসপ্লে রিফ্রেশ রেট পরিবর্তন করার প্রয়োজন হয় তখন setFrameRate() চালু করুন।

এমনকি আপনি যদি উচ্চ হারের অনুরোধ করেন, তবুও সিস্টেমটি পাওয়ার সেভিং মোড বা থার্মাল থ্রটলিংয়ের মতো কারণগুলির কারণে রিফ্রেশ হারকে 60Hz-এ সীমাবদ্ধ করতে পারে। যদি আপনার গেমের রেন্ডারিং পারফরম্যান্স লক্ষ্য FPS-এ না পৌঁছায়, উচ্চতর রিফ্রেশ হারের অনুরোধ করা অপ্রয়োজনীয় শক্তি খরচ করতে পারে এবং ডিভাইসের তাপমাত্রা বাড়াতে পারে।

নিম্নলিখিত স্নিপেট প্রদর্শন করে কিভাবে setFrameRate() API-এর মাধ্যমে অতিরিক্ত উচ্চ রিফ্রেশ হার এড়াতে হয়।

কোটলিন

val targetFps = 120f
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
  window.setFrameRate(
      targetFps,
      Window.FrameRateCompatibility.FRAME_RATE_COMPATIBILITY_FIXED_SOURCE,
      0
  )
}

ফ্রেমরেট পৃষ্ঠাটি আরও পড়ার জন্য আরও বিশদ তথ্য সরবরাহ করে।

ফ্রেম পেসিং লাইব্রেরি ব্যবহার করুন

ফ্রেম পেসিং লাইব্রেরি , বা Swappy, একটি ওপেন-সোর্স লাইব্রেরি যা C/C++ অ্যান্ড্রয়েড গেম ইঞ্জিনগুলিতে VSync পরিচালনা এবং ফ্রেম শিডিউলিংকে সহজ করার জন্য ডিজাইন করা হয়েছে। এই টুলটি রিফ্রেশ রেট অপ্টিমাইজ করার প্রক্রিয়াটিকে স্ট্রীমলাইন করে, কার্যকরভাবে setFrameRate() মতো কার্যকারিতাগুলির উপর একটি উচ্চ-স্তরের বিমূর্ততা স্তর হিসাবে কাজ করে। উপরন্তু, Swappy অতিরিক্ত বৈশিষ্ট্য প্রদান করে যা আপনার গেমের সামগ্রিক মসৃণতা এবং কর্মক্ষমতা বাড়াতে পারে।

Swappy পৃষ্ঠাটি আরও বিস্তারিত তথ্য দেয়।

সেরা ফলাফলের জন্য অতিরিক্ত টিপস

নিম্নলিখিত বিভাগে বেশ কয়েকটি শীর্ষ টিপস রয়েছে:

  1. ডায়নামিক ফ্রেম রেট স্যুইচিং।
  2. কর্মক্ষমতা পর্যবেক্ষণ.
  3. সর্বোচ্চ প্রদর্শন রিফ্রেশ হারের উপর ভিত্তি করে FPS বিকল্প প্রদান করুন।

ডায়নামিক ফ্রেম রেট স্যুইচিং

পারফরম্যান্স এবং পাওয়ার খরচ উভয়ই অপ্টিমাইজ করতে, আপনার গেমে গতিশীল ফ্রেম রেট স্যুইচিং প্রয়োগ করার কথা বিবেচনা করুন। এই কৌশলটি আপনাকে চাহিদাপূর্ণ দৃশ্যের সময় মসৃণ গেমপ্লের জন্য 120Hz এর মতো উচ্চতর রিফ্রেশ রেট এবং কম নিবিড় মুহুর্তগুলিতে বা ব্যাটারি লাইফ একটি উদ্বেগ বা 60FPS-এর অধীনে লক্ষ্য করার সময় 60Hz-এর মতো নিম্ন হারের মধ্যে নির্বিঘ্নে স্থানান্তর করতে দেয়। ক্রমাগত 120Hz এ চললে অত্যধিক তাপ উৎপাদন এবং দ্রুত ব্যাটারি নিষ্কাশন হতে পারে, যার ফলে ব্যবহারকারীর অভিজ্ঞতা নেতিবাচক হতে পারে। বর্তমান রেন্ডারিং লোড এবং ডিভাইসের অবস্থার উপর ভিত্তি করে বুদ্ধিমত্তার সাথে রিফ্রেশ হার সামঞ্জস্য করে, আপনি চাক্ষুষ বিশ্বস্ততা এবং শক্তি দক্ষতার মধ্যে ভারসাম্য বজায় রাখতে পারেন।

কর্মক্ষমতা পর্যবেক্ষণ

আপনার গেমটি উচ্চতর রিফ্রেশ হারে সর্বোত্তমভাবে পারফর্ম করছে তা নিশ্চিত করতে, ফ্রেম কাউন্টার বা পারফরম্যান্স ওভারলের মতো পারফরম্যান্স পর্যবেক্ষণ সরঞ্জামগুলিকে একীভূত করুন। এই টুলগুলি আপনার গেমের প্রকৃত ফ্রেম রেট সম্পর্কে রিয়েল-টাইম প্রতিক্রিয়া প্রদান করে, আপনি ধারাবাহিকভাবে লক্ষ্য 120 FPS অর্জন করছেন কিনা তা যাচাই করার অনুমতি দেয়।

যদি আপনার ফ্রেমের হার উল্লেখযোগ্যভাবে ওঠানামা করে, তাহলে প্রদত্ত ডিভাইসে একটি কম অর্জনযোগ্য ফ্রেমরেট টার্গেট করার কথা বিবেচনা করুন। সর্বোচ্চ রিফ্রেশ হারের জন্য চেষ্টা করার সময় হতে পারে এমন পারফরম্যান্স হেঁচকি ছাড়াই এটি একটি মসৃণ অভিজ্ঞতা প্রদান করতে পারে।

সর্বোচ্চ প্রদর্শন রিফ্রেশ হারের উপর ভিত্তি করে FPS বিকল্প প্রদান করুন

আপনার গেমটি বর্তমান ডিভাইস দ্বারা সমর্থিত সর্বাধিক ডিসপ্লে রিফ্রেশ রেট সনাক্ত করা উচিত, যেমন 60Hz, 90Hz, বা 120Hz, এবং সেই অনুযায়ী FPS সেটিংস সীমিত করুন৷ উদাহরণস্বরূপ, যদি ডিভাইসটি শুধুমাত্র 60Hz পর্যন্ত সমর্থন করে, তাহলে প্লেয়ারকে বিভ্রান্ত না করার জন্য গেম সেটিংসে 60FPS-এর চেয়ে বেশি বিকল্পগুলিকে অক্ষম করার পরামর্শ দেওয়া হয়।