গেম মোড API

গেম মোড এপিআই ব্যবহারকারীকে তার সংশ্লিষ্ট গেম মোড নির্বাচন করার মাধ্যমে সর্বোত্তম পারফরম্যান্স বা দীর্ঘতম ব্যাটারি লাইফের জন্য গেমটি অপ্টিমাইজ করার সুযোগ দেয়।

বিকল্পভাবে, যে গেমগুলো ডেভেলপাররা আর আপডেট করছে না, সেগুলোর পারফরম্যান্স উন্নত করার জন্য আপনি গেম মোডে হস্তক্ষেপের অনুরোধ জমা দিতে পারেন।

গেম মোড এপিআই এবং ইন্টারভেনশনগুলো নিম্নলিখিত স্থানে উপলব্ধ:

প্রতিটি গেম গেম মোড এপিআই-এর আচরণ প্রয়োগ করতে পারে, ওইএম-দের কাছে গেম মোড হস্তক্ষেপের সেটিংস প্রস্তাব করতে পারে, অথবা গেম মোড হস্তক্ষেপ থেকে বিরত থাকতে পারে

সেটআপ

আপনার গেমে গেম মোড এপিআই ব্যবহার করতে, নিম্নলিখিতগুলি করুন:

  1. অ্যান্ড্রয়েড ১৩ এসডিকে ডাউনলোড ও ইনস্টল করুন।

  2. AndroidManifest.xml ফাইলে, <application> এলিমেন্টের মধ্যে appCategory অ্যাট্রিবিউট সেট করে আপনার অ্যাপটিকে একটি গেম হিসেবে ঘোষণা করুন:

android:appCategory="game"
  1. আপনার প্রধান অ্যাক্টিভিটিতে এটি যোগ করে বর্তমান গেম মোড সম্পর্কে জানুন:

জাভা

// Only call this for Android 12 and higher devices
if ( Build.VERSION.SDK_INT >= Build.VERSION_CODES.S ) {
  // Get GameManager from SystemService
  GameManager gameManager = Context.getSystemService(GameManager.class);

  // Returns the selected GameMode
  int gameMode = gameManager.getGameMode();
}

কোটলিন

// Only call this for Android 12 and higher devices
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
  // Get GameManager from SystemService
  val gameManager: GameManager? = context.getSystemService(Context.GAME_SERVICE) as GameManager?

  // Returns the selected GameMode
  val gameMode = gameManager?.gameMode
}
সমর্থিত গেম মোড বর্ণনা
অসমর্থিত গেমটি গেম মোড এপিআই-এর জন্য সমর্থন ঘোষণা করে না এবং এটি গেম মোড ইন্টারভেনশন সমর্থন করে না।
মান ব্যবহারকারী কোনো গেম মোড নির্বাচন করেননি অথবা তিনি স্ট্যান্ডার্ড মোড নির্বাচন করেছেন।
কর্মক্ষমতা কম ব্যাটারি লাইফ এবং কোয়ালিটির বিনিময়ে সর্বনিম্ন ল্যাটেন্সির ফ্রেম রেট প্রদান করে।
ব্যাটারি কম চিত্রমান বা ফ্রেম রেটের বিনিময়ে দীর্ঘতম সম্ভাব্য ব্যাটারি লাইফ প্রদান করে।
  1. onResume ফাংশনে গেম মোডের অবস্থা জানার জন্য কোড যোগ করুন:

    ব্যবহারকারী কর্তৃক ব্যাটারি মোড সেট করার উদাহরণ

সর্বোত্তম অনুশীলন

যদি আপনার গেমটি ইতিমধ্যেই একাধিক ফিডেলিটি এবং ফ্রেম রেট টার্গেট সমর্থন করে, তাহলে আপনার পারফরম্যান্স এবং ব্যাটারি সেভার মোডের জন্য উপযুক্ত সেটিংস শনাক্ত করা উচিত:

  • ডিভাইসের সর্বোচ্চ ফ্রেম রেট ধারাবাহিকভাবে অর্জন করতে, ছবির গুণমান সামান্য কমিয়ে আনার কথা বিবেচনা করুন।

  • ব্যাটারির আয়ু বাড়াতে: কম ডিসপ্লে রিফ্রেশ রেট (যেমন ৩০Hz বা ৬০Hz) বেছে নেওয়ার কথা বিবেচনা করুন এবং সেই কমানো রেটকে টার্গেট করতে ফ্রেম পেসিং ব্যবহার করুন

ফার্স্ট-পার্সন শুটার, মাল্টিপ্লেয়ার অনলাইন ব্যাটল এরিনা (MOBA), এবং রোল-প্লেয়িং গেম (RPG)-এর মতো হাই-ফিডেলিটি গেমগুলির ক্ষেত্রে, ব্যবহারকারীর নিমগ্নতা সর্বোচ্চ পর্যায়ে নিয়ে যেতে আপনার উচ্চ ও ধারাবাহিক ফ্রেম রেট অর্জনের দিকে মনোযোগ দেওয়া উচিত।

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

গেম মোডগুলির জন্য সমর্থন ঘোষণা করুন

গেম মোডের জন্য সমর্থন ঘোষণা করতে এবং OEM-দের দ্বারা করা যেকোনো গেম মোড হস্তক্ষেপকে অগ্রাহ্য করতে, প্রথমে আপনার AndroidManifest.xml ফাইলের <application> এলিমেন্টে গেম মোড কনফিগারেশনটি যোগ করুন:

<application>
    <meta-data android:name="android.game_mode_config"
               android:resource="@xml/game_mode_config" />
  ...
</application>

এরপর আপনার প্রোজেক্টের res/xml/ ডিরেক্টরিতে game_mode_config.xml নামে একটি ফাইল তৈরি করুন এবং তাতে নিম্নলিখিত বিষয়বস্তু যোগ করুন:

<?xml version="1.0" encoding="UTF-8"?>
<game-mode-config
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:supportsBatteryGameMode="true"
    android:supportsPerformanceGameMode="true"
/>

গেম মোড পরিবর্তন করুন

গেম মোড পরিবর্তন করার জন্য, আপনি গেম ড্যাশবোর্ড (পিক্সেল ডিভাইসে উপলব্ধ) অথবা OEM-দের দেওয়া অনুরূপ অ্যাপ্লিকেশন ব্যবহার করতে পারেন। বিকল্পভাবে, আপনি ডেভেলপমেন্টের সময় গেম মোড শেল কমান্ড ব্যবহার করতে পারেন।

আপনি যদি গেম ড্যাশবোর্ড ব্যবহার করেন এবং আপনার গেম চালু করার সময় অপ্টিমাইজেশন আইকনটি প্রদর্শিত না হয়, তাহলে আপনাকে আপনার অ্যাপটি গুগল প্লে কনসোলে আপলোড করতে এবং প্লে স্টোরের মাধ্যমে ইনস্টল করতে হতে পারে। প্লে স্টোরে অ্যাপ টেস্টিং সম্পর্কে তথ্যের জন্য, ‘অভ্যন্তরীণভাবে অ্যাপ বান্ডেল এবং APK শেয়ার করুন’ দেখুন।

Game Dashboard Activity! চিত্র ১। একটি পিক্সেল ডিভাইসে চলমান গেমের উপরে গেম ড্যাশবোর্ডটি দেখানো হচ্ছে।

চিত্র ১-এ, চলমান গেমটির গেম মোড অপটিমাইজেশন উইজেট থেকে পরিবর্তন করা যায়। উইজেটে যেমন দেখানো হয়েছে, গেমটি বর্তমানে PERFORMANCE মোডে চলছে।

ডেভেলপমেন্টের সময়, যদি আপনি গেম ড্যাশবোর্ড ছাড়া কোনো ডিভাইস ব্যবহার করেন এবং প্রস্তুতকারক প্রতিটি অ্যাপের জন্য গেম মোড সেট করার কোনো উপায় না দেয়, তাহলে আপনি adb-এর মাধ্যমে গেম মোডের স্ট্যাটাস পরিবর্তন করতে পারেন।

adb shell cmd game mode [standard|performance|battery] <PACKAGE_NAME>

নমুনা অ্যাপ্লিকেশন

গেম মোড এপিআই স্যাম্পলটি তুলে ধরেছে, কীভাবে আপনি আপনার অ্যাপে প্রায় ২৫% শক্তি সাশ্রয় করতে এফপিএস এবং রেন্ডার রেজোলিউশন ক্যাপ অপ্টিমাইজ করতে পারেন।

পরবর্তী

যখন গেম আপডেট প্রদান করা সম্ভব হয় না, তখন গেমের পারফরম্যান্স উন্নত করার জন্য ‘গেম মোড ইন্টারভেনশন’ পড়ুন।