Mir 2 ফ্রেম পেসিং লাইব্রেরি ব্যবহার করে রেন্ডারিং কর্মক্ষমতা উন্নত করে

মীর 2: রাজার প্রত্যাবর্তন

Mir 2: Return of the King হল একটি উচ্চ মানের লিজেন্ড আইপি মোবাইল গেম যা Actoz Soft দ্বারা অনুমোদিত এবং HK ZHILI YAOAN LIMITED ইউনিটি গেম ইঞ্জিন ব্যবহার করে ডেভেলপ করেছে।

এই গেমটি শুধুমাত্র কোরিয়ান ফ্যান্টাসি এমএমওআরপিজি-র প্রতিনিধি মির 2- এর অনুভূতিগুলিকে পুরোপুরি পুনরুদ্ধার করে না, তবে এটি অনেক জনপ্রিয় গেমের বিষয়বস্তুও অফার করে, যেমন সরঞ্জাম সংগ্রহ, বড় আকারের বালি আক্রমণ এবং অন্যান্য মূল গেমপ্লে।

গেমটি এর ফ্রেম হারের স্থায়িত্ব উন্নত করতে, মসৃণ রেন্ডারিং অর্জন করতে এবং উল্লেখযোগ্যভাবে তাদের অ্যান্ড্রয়েড ভাইটাল (ধীর সেশন মেট্রিক) উন্নত করতে Android ফ্রেম পেসিং লাইব্রেরি (Swappy) ব্যবহার করেছে।

অ্যান্ড্রয়েড ভাইটালে স্লো সেশন চালু হয়েছে

Google Play কনসোলে স্লো সেশন হল একটি Android ভাইটাল মেট্রিক। একটি ধীর সেশনে 25% এর বেশি ধীর ফ্রেম থাকে৷ একটি ফ্রেম ধীর হয় যদি এটি হয়:

  1. 20fps-এ, এটি পূর্ববর্তী ফ্রেমের পরে 50ms এর মধ্যে উপস্থাপিত হয় না।

  2. 30fps-এ, এটি পূর্ববর্তী ফ্রেমের পরে 34ms এর মধ্যে উপস্থাপিত হয় না।

যথাসময়ে, প্লে ব্যবহারকারীদের এমন গেমগুলি থেকে দূরে রাখতে শুরু করবে যেগুলি তাদের ফোনে 20 FPS অর্জন করতে পারে না।

একটি ফ্রেম ডেভেলপারের টার্গেট ফ্রেমের সময়ের চেয়ে স্ক্রিনে দীর্ঘায়িত হতে পারে বা রেন্ডার করতে পারে এমন অনেক কারণ রয়েছে৷ গেমটি সিপিইউ বা জিপিইউ বাউন্ড, অতিরিক্ত উত্তাপ (থার্মাল থ্রটলিং ঘটাতে পারে) হতে পারে, অথবা গেমের ফ্রেমরেট এবং ডিভাইসের ডিসপ্লে রিফ্রেশ রেট এর মধ্যে অমিল থাকতে পারে।

ফ্রেম পেসিং লাইব্রেরি কি?

অ্যান্ড্রয়েড ফ্রেম পেসিং লাইব্রেরি , যা সোয়াপি নামেও পরিচিত, এটি AGDK লাইব্রেরির অংশ। Swappy OpenGL এবং Vulkan গেমগুলিকে Android-এ মসৃণ রেন্ডারিং এবং সঠিক ফ্রেম পেসিং অর্জনে সহায়তা করে।

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

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

কিভাবে Mir 2 ফ্রেম পেসিং লাইব্রেরির সাথে রেন্ডারিং কর্মক্ষমতা উন্নত করেছে

Mir 2 ( 미르2: 왕의 귀환 ) অস্থির রেন্ডারিং পারফরম্যান্সের সাথে একটি সমস্যার সম্মুখীন হয়েছিল যেখানে তারা 20 FPS এর একটি ফ্রেমরেট থ্রেশহোল্ডে 40% ধীর সেশন অনুভব করেছিল, যা Google Play-এর 20% থ্রেশহোল্ডের চেয়ে অনেক বেশি৷

চিত্র 1. ফ্রেম পেসিং লাইব্রেরি সংহত করার আগে ধীর সেশন মেট্রিক।

Mir 2 ( 미르2: 왕의 귀환 ) একটি উচ্চ বিশ্বস্ততা গ্রাফিক গেম, কিছু ডিভাইস একটি স্থিতিশীল FPS বজায় রাখার জন্য চ্যালেঞ্জের সম্মুখীন হচ্ছে। তাদের ফ্রেম রেট ডিস্ট্রিবিউশন দেখায় যে প্রচুর সেশন 20fps এর চেয়ে কম FPS এ চলছে।

চিত্র 2. ফ্রেম পেসিং লাইব্রেরি সংহত করার আগে গেমটির FPS বিতরণ।
প্রতিটি বালতি সেশনের শতাংশের প্রতিনিধিত্ব করে যেখানে তাদের ফ্রেমগুলির 75% বালতি লেবেলের চেয়ে দ্রুত ছিল।

যখন ডিসপ্লে ওয়ার্কলোড অ্যাপ্লিকেশন ওয়ার্কলোডের চেয়ে বেশি সময় নেয়, তখন একটি সারিতে অতিরিক্ত ফ্রেম যোগ করা হয়। এটি আবারও তোতলামির দিকে নিয়ে যায় এবং বাফার-স্টাফিংয়ের কারণে একটি অতিরিক্ত লেটেন্সি ফ্রেমের দিকে নিয়ে যেতে পারে।

চিত্র 3. লম্বা ফ্রেম B 2টি ফ্রেমের জন্য ভুল পেসিং দেয়—A এবং B।

ফ্রেম পেসিং লাইব্রেরি সিঙ্ক ফেন্স ( EGL_KHR_fence_sync এবং VkFence ) ব্যবহার করে এটির সমাধান করে অ্যাপ্লিকেশনে ওয়েট ইনজেক্ট করার জন্য যা ডিসপ্লে পাইপলাইনকে ধরতে দেয়, পিছনের চাপ তৈরি করার অনুমতি না দিয়ে। ফ্রেম A এখনও একটি অতিরিক্ত ফ্রেম উপস্থাপন করে, কিন্তু ফ্রেম B এখন সঠিকভাবে উপস্থাপন করে।

চিত্র 4. ফ্রেম C এবং D উপস্থাপনের জন্য অপেক্ষা করছে।

মীর 2 অপ্টিমাইজড ফ্রেম পেসিং বৈশিষ্ট্যের অন্তর্নির্মিত ইউনিটির সুবিধার মাধ্যমে সহজেই ফ্রেম পেসিং লাইব্রেরিকে সংহত করেছে। এই কর্মের ফলে তাদের রেন্ডারিং কর্মক্ষমতার উল্লেখযোগ্য উন্নতি হয়েছে, বিশেষত স্লো সেশন মেট্রিক 40% থেকে 10% এ নেমে এসেছে।

চিত্র 5. ফ্রেম পেসিং লাইব্রেরি একীভূত করার পরে ধীর সেশনের উন্নতি।

লাইব্রেরি একত্রিত করার পরে Mir2-এর জন্য ধীর সেশনের সংখ্যা উল্লেখযোগ্যভাবে হ্রাস করা হয়েছে।

চিত্র 6. ফ্রেম পেসিং একীভূত করার পরে গেমের FPS বিতরণ।
প্রতিটি বালতি সেশনের শতাংশের প্রতিনিধিত্ব করে যেখানে তাদের ফ্রেমগুলির 75% বালতি লেবেলের চেয়ে দ্রুত ছিল।

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

নেটিভ গেম ইঞ্জিনগুলিতে ফ্রেম পেসিং লাইব্রেরি কীভাবে ব্যবহার করবেন

আপনার গেমে অ্যান্ড্রয়েড ফ্রেম পেসিং লাইব্রেরি সংহত করতে নিম্নলিখিত নির্দেশিকাগুলি দেখুন:

ইউনিটি গেম ইঞ্জিনে ফ্রেম পেসিং লাইব্রেরি কীভাবে ব্যবহার করবেন

ইউনিটি তাদের ইঞ্জিনে অ্যান্ড্রয়েড ফ্রেম পেসিং লাইব্রেরি সংহত করেছে। ইউনিটিতে এই বৈশিষ্ট্যটি সক্ষম করতে, প্রজেক্ট সেটিংস > প্লেয়ার > অ্যান্ড্রয়েডের জন্য সেটিংস > রেজোলিউশন এবং উপস্থাপনার অধীনে অপ্টিমাইজড ফ্রেম পেসিং চেকবক্সটি চেক করুন:

চিত্র 7. ইউনিটি ইঞ্জিনে ফ্রেম পেসিং সক্ষম করুন।

বিকল্পভাবে, আপনার লজিক কোডে অপ্টিমাইজড ফ্রেম পেসিং বিকল্পটি প্রোগ্রাম্যাটিকভাবে সক্ষম করুন যাতে ইউনিটি ফ্রেম হারে কম বৈচিত্র্যের জন্য ফ্রেমগুলিকে সমানভাবে বিতরণ করতে দেয়, মসৃণ গেমপ্লে তৈরি করে।

অবাস্তব গেম ইঞ্জিনে ফ্রেম পেসিং লাইব্রেরি কীভাবে ব্যবহার করবেন

অবাস্তব 4.25 এবং পরে অ্যান্ড্রয়েড ফ্রেম পেসিং লাইব্রেরি সংহত করে, যা অ্যান্ড্রয়েড গেম ডেভেলপমেন্ট কিটের অংশ। মোবাইল ফ্রেম পেসিং নিবন্ধটি ব্যাখ্যা করে যে কীভাবে অ্যান্ড্রয়েড ফ্রেম পেসিং লাইব্রেরি সক্ষম করা যায় এবং কীভাবে C++ কোড থেকে ফ্রেম পেসিং নিয়ন্ত্রণ করা যায়।