অ্যান্ড্রয়েড এক্সআরের জন্য ইউনিটির সাথে বিকাশ করুন

প্রযোজ্য এক্সআর ডিভাইস
এই নির্দেশিকা আপনাকে এই ধরনের এক্সআর ডিভাইসগুলির জন্য অভিজ্ঞতা তৈরি করতে সাহায্য করে।
এক্সআর হেডসেট
তারযুক্ত এক্সআর চশমা

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

এই নির্দেশিকাটি অনুসরণ করে জানুন:

  • অ্যান্ড্রয়েড এক্সআর-এর জন্য ইউনিটি সাপোর্ট
    • ইউনিটি এক্সআর এর মৌলিক বিষয়গুলি
    • অ্যান্ড্রয়েড এক্সআর-এর জন্য অ্যাপ তৈরি ও প্রকাশ করা
    • অ্যান্ড্রয়েড এক্সআর-এর জন্য ইউনিটি প্যাকেজ
      • ইউনিটি ওপেনএক্সআর: অ্যান্ড্রয়েড এক্সআর প্যাকেজ
      • ইউনিটির জন্য অ্যান্ড্রয়েড এক্সআর এক্সটেনশন
      • বৈশিষ্ট্য এবং সামঞ্জস্য বিবেচনা
  • ইনপুট এবং মিথস্ক্রিয়া

অ্যান্ড্রয়েড এক্সআর-এর জন্য ইউনিটি সাপোর্ট

যখন আপনি Android XR-এর জন্য Unity অ্যাপ তৈরি করেন, তখন আপনি Unity 6-এর সর্বশেষ সংস্করণগুলিতে থাকা মিক্সড রিয়েলিটি টুলস এবং সক্ষমতাগুলির সুবিধা নিতে পারেন। এর মধ্যে রয়েছে মিক্সড রিয়েলিটি টেমপ্লেট, যা XR Interaction Toolkit , AR Foundation , এবং OpenXR Plugin ব্যবহার করে, যা আপনাকে দ্রুত কাজ শুরু করতে সাহায্য করে। Android XR-এর জন্য Unity দিয়ে অ্যাপ তৈরি করার সময়, আমরা আপনার রেন্ডার পাইপলাইন হিসেবে Universal Render Pipeline (URP) এবং গ্রাফিক্স এপিআই হিসেবে Vulkan ব্যবহারের পরামর্শ দিই। এই ফিচারগুলো আপনাকে Unity-র কিছু গ্রাফিক্স ফিচারের সুবিধা নিতে সাহায্য করে, যা শুধুমাত্র Vulkan-এর মাধ্যমেই সমর্থিত। এই সেটিংসগুলো কীভাবে কনফিগার করতে হয় সে সম্পর্কে আরও তথ্যের জন্য প্রজেক্ট সেটআপ গাইডটি পর্যালোচনা করুন।

ইউনিটি এক্সআর বেসিকস

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

অ্যান্ড্রয়েডের জন্য অ্যাপ তৈরি ও প্রকাশ করুন

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

অ্যান্ড্রয়েড এক্সআর-এর জন্য ইউনিটি প্যাকেজ

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

এই ছবিতে একটি উদাহরণ দেখানো হয়েছে, যেখানে আপনি ইউনিটির এডিটরের মাধ্যমে এই ফিচার গ্রুপগুলো সক্রিয় করতে পারেন।

চিত্র ১. ইউনিটি এক্সআর প্লাগ-ইন ম্যানেজমেন্ট স্ক্রিনের একটি উদাহরণ।

ইউনিটি ওপেনএক্সআর অ্যান্ড্রয়েড এক্সআর

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

ইউনিটির জন্য অ্যান্ড্রয়েড এক্সআর এক্সটেনশন

ইউনিটির জন্য অ্যান্ড্রয়েড এক্সআর এক্সটেনশনটি ইউনিটি ওপেনএক্সআর অ্যান্ড্রয়েড এক্সআর প্যাকেজের পরিপূরক হিসেবে কাজ করে এবং এতে অতিরিক্ত বৈশিষ্ট্য রয়েছে যা আপনাকে ইমারসিভ অভিজ্ঞতা তৈরি করতে সাহায্য করবে। এটি একা অথবা ইউনিটি ওপেনএক্সআর অ্যান্ড্রয়েড এক্সআর প্যাকেজের সাথে একত্রে ব্যবহার করা যেতে পারে।

এই প্যাকেজটি দিয়ে কাজ শুরু করতে, ইউনিটির জন্য অ্যান্ড্রয়েড এক্সআর এক্সটেনশন ইম্পোর্ট করার বিষয়ে আমাদের প্রোজেক্ট সেটআপ গাইড বা কুইকস্টার্ট অনুসরণ করুন।

বৈশিষ্ট্য এবং সামঞ্জস্য বিবেচনা

নিম্নলিখিত সারণিতে Unity OpenXR: Android XR প্যাকেজ এবং Android XR Extensions for Unity প্যাকেজ দ্বারা সমর্থিত বৈশিষ্ট্যগুলো বর্ণনা করা হয়েছে, এবং এটি ব্যবহার করে আপনি নির্ধারণ করতে পারবেন কোন প্যাকেজে আপনার প্রয়োজনীয় বৈশিষ্ট্যগুলো রয়েছে এবং সামঞ্জস্যতার বিষয়গুলো কী কী।

বৈশিষ্ট্য

ইউনিটি ওপেনএক্সআর: অ্যান্ড্রয়েড এক্সআর ফিচার স্ট্রিং

ইউনিটির জন্য অ্যান্ড্রয়েড এক্সআর এক্সটেনশন ফিচার স্ট্রিং

ব্যবহারের ক্ষেত্র এবং প্রত্যাশিত আচরণ

এআর সেশন

অ্যান্ড্রয়েড এক্সআর: এআর সেশন

  • ফিচার সেটিংসে অপটিমাইজ বাফার ডিসকার্ডস (ভুলকান) অন্তর্ভুক্ত রয়েছে

অ্যান্ড্রয়েড এক্সআর (এক্সটেনশন): সেশন ম্যানেজমেন্ট

  • ফিচার সেটিংসের মধ্যে রয়েছে সাবস্যাম্পলিং (ভালকান) এবং ইউআরপি স্পেসওয়ার্প (ভালকান)।

যেকোনো একটি প্যাকেজের ফিচার ব্যবহার করতে হলে, আপনাকে অবশ্যই সেই প্যাকেজের জন্য এআর সেশন ফিচারটি সক্রিয় করতে হবে। আপনি একই সাথে উভয় ফিচার সেট সক্রিয় করতে পারেন; স্বতন্ত্র ফিচারগুলো সেই অনুযায়ী দ্বন্দ্বগুলো সামলে নেবে।

ডিভাইস ট্র্যাকিং

প্রযোজ্য নয়

প্রযোজ্য নয়

ভৌত জগতে কোনো ডিভাইসের অবস্থান এবং ঘূর্ণন ট্র্যাক করতে ডিভাইস ট্র্যাকিং ব্যবহার করা হয়। XR Origin গেমঅবজেক্টটি তার XROrigin কম্পোনেন্ট এবং Camera ও TrackedPoseDriver যুক্ত গেমঅবজেক্ট হায়ারার্কি ব্যবহার করে স্বয়ংক্রিয়ভাবে ডিভাইস ট্র্যাকিং এবং ট্র্যাকযোগ্য বস্তুগুলোকে ইউনিটির স্থানাঙ্ক ব্যবস্থায় রূপান্তর করার কাজটি করে থাকে।

ক্যামেরা

অ্যান্ড্রয়েড এক্সআর: এআর ক্যামেরা

প্রযোজ্য নয়

এই ফিচারটি আলো অনুমান এবং পূর্ণ স্ক্রিন পাসথ্রু সমর্থন করে।

সমতল সনাক্তকরণ

অ্যান্ড্রয়েড এক্সআর: এআর প্লেন

অ্যান্ড্রয়েড এক্সআর (এক্সটেনশন): প্লেন

এই দুটি বৈশিষ্ট্য অভিন্ন; যেকোনো একটি ব্যবহার করুন। Android XR (Extensions): Plane অন্তর্ভুক্ত করা হয়েছে যাতে ডেভেলপাররা Unity OpenXR Android XR প্যাকেজের উপর নির্ভর না করেই Android XR (Extensions): Object Tracking এবং persistent anchors বৈশিষ্ট্যগুলো ব্যবহার করতে পারেন। ভবিষ্যতে, Android XR: AR Anchor-এর পক্ষে Android XR (Extensions): Plane সরিয়ে দেওয়া হবে।

বস্তু ট্র্যাকিং

প্রযোজ্য নয়

অ্যান্ড্রয়েড এক্সআর (এক্সটেনশন): অবজেক্ট ট্র্যাকিং

এই ফিচারটি একটি রেফারেন্স অবজেক্ট লাইব্রেরির সাথে একত্রে ব্যবহৃত হয়ে ভৌত পরিবেশে বস্তু শনাক্তকরণ এবং ট্র্যাক করার সুবিধা প্রদান করে।

মুখ ট্র্যাকিং

অ্যান্ড্রয়েড এক্সআর: এআর ফেস

  • শুধুমাত্র XR_ANDROID_eye_tracking
  • মুখ ট্র্যাকিং নেই

অ্যান্ড্রয়েড এক্সআর: মুখমণ্ডল ট্র্যাকিং

  • XR_ANDROID_face_tracking

অ্যান্ড্রয়েড এক্সআর-এর এআর ফেস (AR Face) ফিচারের মাধ্যমে অ্যাভাটারের চোখ দেখার সুবিধা দেওয়া হয়। অ্যান্ড্রয়েড এক্সআর-এর ফেস ট্র্যাকিং (Face Tracking) ফিচারের মাধ্যমে ব্যবহারকারীর মুখের অভিব্যক্তি দেখা যায়। এই দুটি ফিচার একসাথে ব্যবহার করা যেতে পারে।

রে কাস্টস

অ্যান্ড্রয়েড এক্সআর: এআর রেকাস্ট

  • প্লেন অ্যাঙ্কর
  • গভীরতা অ্যাঙ্কর

প্রযোজ্য নয়

এই বৈশিষ্ট্যটি আপনাকে একটি রশ্মি নিক্ষেপ করতে এবং ভৌত পরিবেশে শনাক্ত করা প্লেন ট্র্যাকেবল বা ডেপথ ট্র্যাকেবলের সাথে সেই রশ্মির ছেদবিন্দু গণনা করতে দেয়।

অ্যাঙ্কর

অ্যান্ড্রয়েড এক্সআর: এআর অ্যাঙ্কর

অ্যান্ড্রয়েড এক্সআর (এক্সটেনশন): অ্যাঙ্কর

  • বৈশিষ্ট্য সেটিংসের মধ্যে স্থায়িত্ব অন্তর্ভুক্ত রয়েছে।

উভয় ফিচারেই স্পেশিয়াল অ্যাঙ্কর এবং প্লেন অ্যাঙ্করের সাপোর্ট রয়েছে; যেকোনো একটি ফিচার ব্যবহার করুন। পারসিস্টেন্ট অ্যাঙ্করের জন্য Android XR (Extensions): Anchor ব্যবহার করুন। ভবিষ্যতে, Android XR (Extensions): Anchor ফিচারটি সরিয়ে দেওয়া হবে এবং অ্যাঙ্করের সমস্ত ফিচার Android XR: AR Anchor-এর অন্তর্ভুক্ত হবে।

অবরুদ্ধতা

অ্যান্ড্রয়েড এক্সআর: এআর অক্লুশন

  • পরিবেশের গভীরতা

প্রযোজ্য নয়

অক্লুশন আপনার অ্যাপের মিক্সড রিয়েলিটি কন্টেন্টকে পারিপার্শ্বিক বাস্তব বস্তুর আড়ালে লুকানো বা আংশিকভাবে আবৃত দেখাতে সাহায্য করে।

কর্মক্ষমতা মেট্রিক্স

অ্যান্ড্রয়েড এক্সআর পারফরম্যান্স মেট্রিক্স

প্রযোজ্য নয়

Android XR ডিভাইসগুলোর পারফরম্যান্স মেট্রিক্স অ্যাক্সেস করতে এই ফিচারটি ব্যবহার করুন।

গঠন স্তর

কম্পোজিশন লেয়ার সাপোর্ট (OpenXR প্লাগইন এবং XR কম্পোজিশন লেয়ার আবশ্যক)

অ্যান্ড্রয়েড এক্সআর: পাসথ্রু কম্পোজিশন লেয়ার

  • XR_ANDROID_composition_layer_passthrough_mesh

ইউনিটির কম্পোজিশন লেয়ার সাপোর্ট ব্যবহার করে সাধারণ কম্পোজিশন লেয়ার (যেমন কোয়াড, সিলিন্ডার, প্রজেকশন) তৈরি করা যায়। অ্যান্ড্রয়েড এক্সআর-এর ক্ষেত্রে, ইউনিটির গেমঅবজেক্ট থেকে ডেটা নিয়ে কাস্টম মেশসহ একটি পাসথ্রু লেয়ার তৈরি করতে পাসথ্রু কম্পোজিশন লেয়ার ব্যবহার করা যেতে পারে।

ফোবিয়েটেড রেন্ডারিং

ফোভিয়েটেড রেন্ডারিং (OpenXR প্লাগইন প্রয়োজন)

  • আই-ট্র্যাকড ফোবিয়েটেড রেন্ডারিং সমর্থন করে: উচ্চ রেজোলিউশনের এলাকাটি ব্যবহারকারী যেদিকে দেখছেন সেদিকে কেন্দ্র করে থাকে, ফলে এটি ব্যবহারকারীর কাছে কম স্পষ্ট হয়।

ফোভিয়েশন (উত্তরাধিকার)

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

অসীম রেফারেন্স স্পেস

প্রযোজ্য নয়

অ্যান্ড্রয়েড এক্সআর: সীমাহীন রেফারেন্স স্পেস

এই বৈশিষ্ট্যটি XRInputSubsystem-এর ট্র্যাকিং অরিজিন মোডকে ' Unbounded'- এ সেট করে। 'Unbounded' নির্দেশ করে যে XRInputSubsystem সমস্ত InputDevice-কে একটি ওয়ার্ল্ড অ্যাঙ্করের সাপেক্ষে ট্র্যাক করে, যা পরিবর্তন হতে পারে।

পরিবেশ মিশ্রণ মোড

প্রযোজ্য নয়

পরিবেশ মিশ্রণ মোড

এই ফিচারটি আপনাকে এক্সআর এনভায়রনমেন্ট ব্লেন্ড মোড সেট করতে দেয়, যা পাসথ্রু সক্রিয় থাকাকালীন ভার্চুয়াল চিত্রাবলী বাস্তব পরিবেশের সাথে কীভাবে মিশে যাবে তা নিয়ন্ত্রণ করে।

ইনপুট এবং মিথস্ক্রিয়া

অ্যান্ড্রয়েড এক্সআর বহু-মাধ্যম প্রাকৃতিক ইনপুট সমর্থন করে।

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

মিথস্ক্রিয়া প্রোফাইল

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

  1. প্রজেক্ট সেটিংস উইন্ডোটি খুলুন (মেনু: সম্পাদনা > প্রজেক্ট সেটিংস )।
  2. প্লাগ-ইন সেকশনটি প্রসারিত করতে (প্রয়োজন হলে) এক্সআর প্লাগ-ইন ম্যানেজমেন্ট-এ ক্লিক করুন।
  3. XR প্লাগ-ইনগুলির তালিকা থেকে OpenXR নির্বাচন করুন।
  4. ইন্টারঅ্যাকশন প্রোফাইলস বিভাগে, একটি প্রোফাইল যোগ করতে + বোতামটি নির্বাচন করুন।
  5. তালিকা থেকে যোগ করার জন্য প্রোফাইলটি নির্বাচন করুন।

হাতের মিথস্ক্রিয়া

হাতের মিথস্ক্রিয়া ( XR_EXT_hand_interaction ) OpenXR প্লাগইন দ্বারা সরবরাহ করা হয়, এবং আপনি হ্যান্ড ইন্টারঅ্যাকশন প্রোফাইল সক্রিয় করার মাধ্যমে ইউনিটি ইনপুট সিস্টেমে <HandInteraction> ডিভাইস লেআউটটি প্রকাশ করতে পারেন। OpenXR দ্বারা সংজ্ঞায়িত চারটি অ্যাকশন পোজ—"pinch", "poke", "aim", এবং "grip"—দ্বারা সমর্থিত হাতের ইনপুটের জন্য এই ইন্টারঅ্যাকশন প্রোফাইলটি ব্যবহার করুন। আপনার যদি অতিরিক্ত হাতের মিথস্ক্রিয়া বা হ্যান্ড ট্র্যাকিং কার্যকারিতার প্রয়োজন হয়, তবে এই পৃষ্ঠার XR Hands অংশটি দেখুন।

চোখের দৃষ্টির মিথস্ক্রিয়া

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

কন্ট্রোলার ইন্টারঅ্যাকশন

অ্যান্ড্রয়েড এক্সআর 6DoF কন্ট্রোলারগুলোর জন্য অকুলাস টাচ কন্ট্রোলার প্রোফাইল সমর্থন করে। এই উভয় প্রোফাইলই ওপেনএক্সআর প্লাগইন দ্বারা সরবরাহ করা হয়।

মাউস ইন্টারঅ্যাকশন

অ্যান্ড্রয়েড এক্সআর মাউস ইন্টারঅ্যাকশন প্রোফাইল ( XR_ANDROID_mouse_interaction ) ইউনিটির জন্য অ্যান্ড্রয়েড এক্সআর এক্সটেনশন দ্বারা সরবরাহ করা হয়। এটি ইউনিটি ইনপুট সিস্টেমে একটি <AndroidXRMouse> ডিভাইস লেআউট প্রকাশ করে।

পাম পোজ ইন্টারঅ্যাকশন

OpenXR প্লাগইনটি পাম পোজ ইন্টারঅ্যাকশন ( XR_EXT_palm_pose ) সমর্থন করে, যা ইউনিটি ইনপুট সিস্টেমের মধ্যে <PalmPose> লেআউটটি প্রকাশ করে। পাম পোজ আরও জটিল ব্যবহারের জন্য হ্যান্ড ট্র্যাকিং সম্পাদনকারী এক্সটেনশন বা প্যাকেজের বিকল্প হিসেবে তৈরি করা হয়নি; বরং এটি অ্যাপ-নির্দিষ্ট ভিজ্যুয়াল কন্টেন্ট, যেমন অ্যাভাটার ভিজ্যুয়াল, স্থাপন করতে ব্যবহার করা যেতে পারে। পাম পোজে হাতের তালুর অবস্থান এবং অভিমুখ উভয়ই অন্তর্ভুক্ত থাকে।

এক্সআর হ্যান্ডস

XR Hands প্যাকেজটি আপনাকে XR_EXT_hand_tracking এবং XR_FB_hand_tracking_aim ব্যবহার করে হ্যান্ড ট্র্যাকিং ডেটা অ্যাক্সেস করতে দেয় এবং হ্যান্ড ট্র্যাকিং থেকে হ্যান্ড জয়েন্ট ডেটাকে ইনপুট পোজে রূপান্তর করার জন্য একটি র‍্যাপার প্রদান করে। XR Hands প্যাকেজের ফিচারগুলো ব্যবহার করার জন্য, Hand Tracking Subsystem এবং Meta Hand Tracking Aim OpenXR ফিচারগুলো সক্রিয় করুন।

হাত ট্র্যাকিং সক্রিয় করার পদ্ধতি দেখানো উদাহরণ আপনার যদি হাতের ভঙ্গি বা জয়েন্টের আরও সূক্ষ্ম ডেটা অথবা কাস্টম জেসচার নিয়ে কাজ করার প্রয়োজন হয়, তাহলে XR hands প্যাকেজটি কার্যকর হতে পারে।

আপনার প্রোজেক্টে XR Hands সেট আপ করার বিষয়ে আরও বিস্তারিত জানতে ইউনিটির ডকুমেন্টেশন দেখুন।

মুখ ট্র্যাকিং আত্মবিশ্বাসের অঞ্চল

XR_ANDROID_face_tracking এক্সটেনশনটি মুখের তিনটি অঞ্চলের জন্য কনফিডেন্স ভ্যালু প্রদান করে: উপরের বাম, উপরের ডান এবং মুখের নিচের অংশ। এই ভ্যালুগুলো, যা ০ (কোনো কনফিডেন্স নেই) থেকে ১ (সর্বোচ্চ কনফিডেন্স) পর্যন্ত হয়ে থাকে, প্রতিটি অঞ্চলের জন্য ফেস ট্র্যাকিংয়ের নির্ভুলতা নির্দেশ করে।

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

‘মুখের নিচের অংশ’ বলতে চোখের নিচের সবকিছুকে বোঝায়, যার মধ্যে মুখ, চিবুক, গাল এবং নাক অন্তর্ভুক্ত। মুখের উপরের দুটি অঞ্চলের মধ্যে রয়েছে মুখের বাম ও ডান পাশের চোখ এবং ভ্রু-অঞ্চল।

নিম্নলিখিত C# কোড স্নিপেটটি একটি ইউনিটি স্ক্রিপ্টে কনফিডেন্স ডেটা কীভাবে অ্যাক্সেস এবং ব্যবহার করতে হয় তা প্রদর্শন করে:

using UnityEngine;
using Google.XR.Extensions;

public class FaceTrackingConfidence : MonoBehaviour
{
    void Update()
    {
      if (!XRFaceTrackingFeature.IsFaceTrackingExtensionEnabled.HasValue)
      {
        DebugTextTopCenter.text = "XrInstance hasn't been initialized.";
        return;
      }
      else if (!XRFaceTrackingFeature.IsFaceTrackingExtensionEnabled.Value)
      {
        DebugTextTopCenter.text = "XR_ANDROID_face_tracking is not enabled.";
        return;
      }

      for (int x = 0; x < _faceManager.Face.ConfidenceRegions.Length; x++)
      {
        switch (x)
        {
          case (int)XRFaceConfidenceRegion.Lower:
            regionText = "Bottom";
            break;
          case (int)XRFaceConfidenceRegion.LeftUpper:
            regionText = DebugTextConfidenceLeft;
            break;
          case (int)XRFaceConfidenceRegion.RightUpper:
            regionText = DebugTextConfidenceRight;
            break;
        }
    }
}

আরও তথ্যের জন্য, Android XR Extensions for Unity ডকুমেন্টেশন দেখুন।

হাত রেন্ডার করার একটি উপায় বেছে নিন

অ্যান্ড্রয়েড এক্সআর হাত রেন্ডার করার দুটি উপায় সমর্থন করে: একটি হ্যান্ড মেশ এবং একটি প্রিফ্যাব ভিজ্যুয়ালাইজার।

হাতের জাল

অ্যান্ড্রয়েড এক্সআর ইউনিটি প্যাকেজে একটি হ্যান্ড মেশ ফিচার রয়েছে যা XR_ANDROID_hand_mesh extension ব্যবহারের সুযোগ দেয়। হ্যান্ড মেশ ফিচারটি ব্যবহারকারীর হাতের জন্য মেশ সরবরাহ করে। হ্যান্ড মেশটিতে ত্রিভুজের শীর্ষবিন্দু থাকে যা একটি হাতের জ্যামিতিকে উপস্থাপন করে। এই ফিচারটি ভিজ্যুয়ালাইজেশনের জন্য ব্যবহারকারীর হাতের বাস্তব জ্যামিতিকে উপস্থাপনকারী একটি ব্যক্তিগতকৃত মেশ সরবরাহ করার উদ্দেশ্যে ব্যবহৃত হয়।

এক্সআর হ্যান্ডস প্রিফ্যাব

XR Hands প্যাকেজটিতে Hands visualiser নামক একটি স্যাম্পল রয়েছে, যেটিতে ব্যবহারকারীর হাতের প্রসঙ্গ-উপযোগী উপস্থাপনা রেন্ডার করার জন্য সম্পূর্ণরূপে রিগ করা বাম ও ডান হাত রয়েছে।

সিস্টেম অঙ্গভঙ্গি

অ্যান্ড্রয়েড এক্সআর-এ একটি সিস্টেম জেসচার রয়েছে, যার মাধ্যমে ব্যবহারকারীরা পেছনে ফিরে যেতে, লঞ্চার খুলতে বা চলমান অ্যাপগুলোর একটি সার্বিক চিত্র দেখতে পারেন। ব্যবহারকারী তার প্রধান হাত দিয়ে পিঞ্চ করে এই সিস্টেম মেনুটি সক্রিয় করতে পারেন।

যখন ব্যবহারকারী সিস্টেম নেভিগেশন মেনুর সাথে ইন্টারঅ্যাক্ট করেন, তখন অ্যাপ্লিকেশনটি শুধুমাত্র হেড ট্র্যাকিং ইভেন্টগুলিতে সাড়া দেবে। XR Hands প্যাকেজটি শনাক্ত করতে পারে কখন একজন ব্যবহারকারী নির্দিষ্ট কিছু কাজ সম্পাদন করেন, যেমন এই সিস্টেম নেভিগেশন মেনুর সাথে ইন্টারঅ্যাক্ট করা। AimFlags , SystemGesture , এবং DominantHand পরীক্ষা করলে আপনি জানতে পারবেন কখন এই সিস্টেম অ্যাকশনটি সম্পাদিত হয়েছে। AimFlags সম্পর্কে আরও তথ্যের জন্য, Unity-এর Enum MetaAimFlags ডকুমেন্টেশন দেখুন।

এক্সআর ইন্টারঅ্যাকশন টুলকিট

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


OpenXR™ এবং OpenXR লোগো হলো The Khronos Group Inc.-এর মালিকানাধীন ট্রেডমার্ক এবং এটি চীন, ইউরোপীয় ইউনিয়ন, জাপান ও যুক্তরাজ্যে ট্রেডমার্ক হিসেবে নিবন্ধিত।