কল অফ ডিউটি ​​ওয়ারজোন মোবাইল ভাল গ্রাফিক্সের জন্য ভলকান ব্যবহার করে

কল অফ ডিউটি ​​ওয়ারজোন মোবাইল থেকে গেমের শিরোনামের লোগোর স্ক্রিনশট।

কল অফ ডিউটি: ওয়ারজোন মোবাইল হল জনপ্রিয় কল অফ ডিউটি ​​ফ্র্যাঞ্চাইজিতে একটি প্রথম-ব্যক্তি অ্যাকশন গেম৷ অত্যন্ত জনপ্রিয় কনসোল এবং পিসি গেমের মোবাইল উপলব্ধি একটি দুর্দান্ত প্লেয়ার অভিজ্ঞতা প্রদানের জন্য মোবাইল নিম্ন-স্তরের API এর সুবিধা নেয়।

একটি প্রযুক্তিগত দৃষ্টিকোণ থেকে, মোবাইল বাস্তবায়নের লক্ষ্য হল কনসোল সংস্করণের যতটা সম্ভব কাছাকাছি বাস্তবায়নকে রাখা এবং গ্রাফিক্স পাইপলাইন এবং টুলচেন বর্তমান কনসোল এবং পিসি শিরোনামগুলির সাথে সামঞ্জস্যপূর্ণ থাকা নিশ্চিত করার সাথে সাথে Android মোবাইল ডিভাইসের বিস্তৃত পরিসরকে সমর্থন করা বিষয়বস্তু

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

Vulkan , একটি আধুনিক ক্রস-প্ল্যাটফর্ম 3D গ্রাফিক্স API, Android এ টাস্ক গ্রাফ রেন্ডারারের জন্য ব্যাকএন্ড রেন্ডারিং ইন্টারফেস হিসাবে নির্বাচিত হয়েছিল৷

চিত্র 1. ওভারলেড গ্রাফিক্স সহ বিস্তারিত পটভূমি।

Vulkan API এর সুবিধা

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

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

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

বিদ্যমান প্ল্যাটফর্ম API এর সাথে সামঞ্জস্যপূর্ণ

Vulkan ধারণাগতভাবে কল অফ ডিউটির জন্য ব্যবহৃত বিদ্যমান API-এর মতো: ওয়ারজোন , সুস্পষ্ট রিসোর্স ম্যানেজমেন্ট, মেমরি অ্যালিয়াসিং, অনুরূপ কম্পিউট পাইপলাইন, এবং বাইন্ডলেস রিসোর্স অ্যাক্সেস সহ। মিলগুলি অ্যাক্টিভিশনকে রেন্ডারারকে কনসোল এবং পিসি রেন্ডারারের সাথে কাঠামোগতভাবে সামঞ্জস্যপূর্ণ রাখার অনুমতি দেয়, ভলকানের সাথে ইন্টারফেসে শুধুমাত্র ব্যাকএন্ড পরিবর্তনের প্রয়োজন হয়।

DXC থেকে SPIR-V সংকলন ব্যবহার করে সম্পূর্ণ বৈশিষ্ট্য সেট সহ বিদ্যমান এইচএলএসএল-ভিত্তিক শেডারগুলির জন্য সমর্থন অ্যান্ড্রয়েডকে অ্যাক্টিভিশনের বিদ্যমান বিল্ড পাইপলাইনে একীভূত করার অনুমতি দেয়। প্রক্রিয়াটি তার চ্যালেঞ্জ ছাড়া নয়, তবে এটি এখনও একটি পুনর্লিখন এবং একাধিক সংস্করণ বা ভাষা বজায় রাখার জন্য ব্যয়িত ওভারহেডের চেয়ে বেশি উপকারী।

চিত্র 2. জটিল রেন্ডারিং পরিবেশ।
চিত্র 3. উচ্চ বিশ্বস্ত বিষয়বস্তুর রেন্ডারিং।

কল অফ ডিউটিতে ব্যবহৃত ভলকান বৈশিষ্ট্য: ওয়ারজোন মোবাইল

  • রিসোর্স অ্যালিয়াসিং এবং স্পষ্ট বাধা নিয়ন্ত্রণ রেন্ডারিং টাস্ক গ্রাফটিকে স্ট্যাটিক বরাদ্দের তুলনায় রেন্ডার লক্ষ্যগুলির জন্য মেমরির প্রয়োজনীয়তা উল্লেখযোগ্যভাবে হ্রাস করতে সক্ষম করে।
    • নমনীয়তা রেন্ডার কাজগুলিতে মোবাইল-বান্ধব অনুশীলনের নিরবচ্ছিন্ন ব্যবহারের অনুমতি দেয়।
    • মূল বৈশিষ্ট্য হিসাবে রেন্ডার-পাস রেন্ডারারকে সাধারণ মোবাইল GPU আর্কিটেকচারের জন্য সর্বোত্তম সিদ্ধান্ত নিতে দেয়। এই সিদ্ধান্তগুলির অধিকাংশই অন্যান্য প্ল্যাটফর্মে লাভ প্রদান করে।
    • গতিশীল দৃশ্য রেজোলিউশন টাস্ক গ্রাফ দ্বারা ডিফল্টরূপে সমর্থিত, কর্মক্ষমতা এবং শক্তি খরচের কিছু নিয়ন্ত্রণ সক্ষম করে।
  • বিস্তৃত কম্পিউট-ভিত্তিক কুলিং সহ সম্পূর্ণ GPU পাইপলাইন দৃশ্যের জটিলতাকে উল্লেখযোগ্যভাবে বৃদ্ধি করতে সক্ষম করে।
    • টাইল-ভিত্তিক বিলম্বিত রেন্ডারারকে টার্গেট করার জন্য কুলিং গ্রানুলারিটির ভারসাম্য বজায় রাখা।
    • বটলনেক ত্রিভুজ গণনার বিপরীতে জটিল গণনা কাজের চাপ।
      • GPU পাইপলাইন বিভিন্ন পরিস্থিতিতে মাথায় রেখে ডিজাইন করা হয়েছে।
      • কুলিং গ্রানুলারিটি পরিবর্তন করার বিকল্প।
  • খুব বড় বর্ণনাকারী সেটগুলি সামঞ্জস্যপূর্ণ হার্ডওয়্যারে সম্পূর্ণ বাঁধাইবিহীন রেন্ডারিংয়ের অনুমতি দেয়, যা ফলস্বরূপ, সংশ্লিষ্ট কর্মক্ষমতা, শক্তি এবং তাপীয় সুবিধাগুলির সাথে CPU ড্র কল তৈরির ব্যয়কে উল্লেখযোগ্যভাবে হ্রাস করে।
  • HW কনফিগারার সর্বোত্তম ব্যবহারকারীর অভিজ্ঞতার জন্য নির্দিষ্ট ডিভাইস মডেলের উপর ভিত্তি করে বিশ্বস্ততা সেটিংসে টুইকগুলি সক্ষম করে
    • ব্যবহারকারীরা মোড কনফিগার করে: সেরা পারফরম্যান্স, সেরা গুণমান, বা ব্যাটারি সাশ্রয়।
  • ডিভাইস-নির্দিষ্ট শেডার সেট ডিজাইন বিভিন্ন GPU প্রিসেট (গুণমান এবং বিশ্বস্ততা সেটিংস) এর জন্য বিভিন্ন সেট শেডার প্রদান করে। HW কনফিগারেশন গেমটিকে ডিভাইসের জন্য সেরা শেডার সেট বেছে নিতে সাহায্য করে।
    • পাইপলাইন অবজেক্ট তৈরির প্রয়োজনীয়তার সাথে অত্যন্ত কনফিগারযোগ্য শেডারগুলির সংমিশ্রণ বিস্ফোরণ হ্রাস করতে সহায়তা করে।
    • পুরানো ফোন এবং ড্রাইভারগুলিকে টার্গেট করতে ফলব্যাক নন-বাইন্ডলেস শেডার সেটগুলি অন্তর্ভুক্ত করে যা অনেকগুলি শেডার সংস্থান সমর্থন করে না।
  • ড্রাইভার পার্থক্য মোকাবেলা করতে বিশেষীকরণ ধ্রুবকের স্মার্ট ব্যবহার .
    • ড্রাইভারের বেশিরভাগ শেডার কম্পাইলার বাগগুলি স্পেশালাইজেশন কনস্ট্যান্ট ব্যবহার করে কাজ করা হয়।
    • ডিভাইস-নির্দিষ্ট শেডার সেটের সংখ্যার বিপরীতে ভারসাম্য।
চিত্র 4. বিস্তৃত কম্পিউট-ভিত্তিক কলিং সহ সম্পূর্ণ GPU পাইপলাইন জটিল দৃশ্যগুলিকে সক্ষম করে৷

প্রোফাইলিং এবং ডিবাগিং

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

ভলকানের সাথে উচ্চ বিশ্বস্ততা

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