জিওস্পেশিয়াল ক্রিয়েটর ইন ইউনিটিতে শুরু করুন

ARCore Geospatial Creator for Unity আপনাকে Unity Editor-এ Geospatial কন্টেন্টের প্রিভিউ দেখতে দেয়, Google Maps ডেটাকে একটি নতুন 3D টাইলস ফর্ম্যাটে দেখিয়ে। এটি আপনাকে আপনার অ্যাপ তৈরির সময় বাস্তব জগতে কন্টেন্ট কোথায় স্থাপন করা হবে তা কল্পনা করতে সাহায্য করে।

জিওস্পেশিয়াল ক্রিয়েটারটি AR ফাউন্ডেশনের জন্য ARCore এক্সটেনশনের অংশ হিসেবে উপলব্ধ। এই কুইকস্টার্ট আপনাকে দেখাবে কিভাবে ARCore জিওস্পেশিয়াল স্যাম্পল অ্যাপে জিওস্পেশিয়াল AR কন্টেন্ট যোগ করতে ইউনিটিতে জিওস্পেশিয়াল ক্রিয়েটার ব্যবহার করতে হয়।

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

পূর্বশর্ত

AR অভিজ্ঞতা তৈরির জন্য আপনার ইউনিটি পরিবেশ কনফিগার করতে "AR ফাউন্ডেশনের জন্য ARCore এক্সটেনশনের সাথে শুরু করা" অনুসরণ করুন।

যদিও ARCore এক্সটেনশনগুলি ইউনিটির পূর্ববর্তী সংস্করণগুলিকে সমর্থন করে, Geospatial Creator-এর জন্য ইউনিটি 2021.3 বা তার পরবর্তী সংস্করণ প্রয়োজন।

API অনুমোদন

ARCore Geospatial API এবং Google Map Tiles API ব্যবহার করার জন্য আপনাকে API অ্যাক্সেস সেট আপ করতে হবে।

গুগল ম্যাপ টাইলস এপিআই

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

API সক্ষম করতে এবং Map Tiles সম্পর্কে আরও জানতে Map Tiles API পৃষ্ঠাটি দেখুন।

ARCore জিওস্পেশিয়াল API

রানটাইমের সময় আপনার অ্যাপ ARCore Geospatial API ব্যবহার করে Geospatial Anchor তৈরি এবং তাদের সাথে ইন্টারঅ্যাক্ট করতে পারে।

জিওস্পেশিয়াল এপিআই সক্ষম করতে, আপনার অ্যাপ্লিকেশনে ARCore এপিআই সেট আপ করুন। আপনি কীলেস (প্রস্তাবিত) অথবা API কী অনুমোদন পদ্ধতি ব্যবহার করতে পারেন।

জিওস্পেশিয়াল নমুনা অ্যাপটি প্রসারিত করুন

এই নির্দেশিকার জন্য, আমরা আপনাকে দেখাবো কিভাবে ARCore Geospatial Sample অ্যাপে Geospatial Content যোগ করার জন্য Geospatial Creator ব্যবহার করবেন।

ভূ-স্থানিক নমুনা কনফিগার করুন

প্রথমে, ARCore Geospatial Sample অ্যাপের সাথে পরিচিত হন। একটি নতুন Unity প্রজেক্টে, Unity Package Manager খুলুন এবং ARCore Extensions প্যাকেজটি নির্বাচন করুন। Package Manager বিস্তারিত প্যানেলে, Samples প্রসারিত করুন এবং Geospatial Sample আপনার Unity প্রজেক্টে আমদানি করুন।

অ্যাপটি চালানোর আগে, আপনার প্রোজেক্টে ARCore এবং Geospatial কার্যকারিতা সক্ষম করতে হবে। Edit > Project Settings... > XR Plug-in Management ব্যবহার করুন। Android এর জন্য ARCore প্লাগ-ইন প্রদানকারী এবং/অথবা iOS এর জন্য ARKit প্লাগ-ইন প্রদানকারী সক্ষম করতে উপযুক্ত বাক্সগুলিতে টিক চিহ্ন দিন।

তারপর, Edit > Project Settings... > XR Plug-in Management থেকে, ARCore Extensions প্যানেলটি খুলুন। নিশ্চিত করুন যে "Geospatial" চেক করা আছে (আপনার এখনও Geospatial Creator সক্ষম করার প্রয়োজন নেই), এবং আপনার API শংসাপত্রগুলি প্রবেশ করান। আরও বিস্তারিত জানার জন্য Android এবং iOS এর জন্য "Enable the Geospatial Unity API" ডকুমেন্টেশনটি দেখুন।

ARCore ব্যবহার করে এমন যেকোনো Unity অ্যাপের জন্য আরও কিছু প্ল্যাটফর্ম-নির্দিষ্ট প্লেয়ার সেটিংস প্রয়োজন। প্রয়োজনীয় পরিবর্তনের জন্য আমাদের ডক্সের প্লেয়ার সেটিংস কনফিগার করুন বিভাগটি দেখুন।

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

এরপর, আমরা দেখাবো কিভাবে ইউনিটি এডিটরের মধ্যে থেকে অত্যাধুনিক AR কন্টেন্ট তৈরি এবং ভিজ্যুয়ালাইজ করার জন্য Geospatial Creator ব্যবহার করতে হয়। এই কন্টেন্টটি আপনার অ্যাপে বিশ্বের নির্দিষ্ট অক্ষাংশ/দ্রাঘিমাংশ অবস্থানে প্রদর্শিত হবে।

প্রয়োজনীয় নির্ভরতা যোগ করুন

জিওস্পেশিয়াল ক্রিয়েটর ইউনিটি এডিটরের সিন উইন্ডোতে গুগল ম্যাপ টাইলস রেন্ডার করার জন্য সিজিয়াম নামক একটি তৃতীয় পক্ষের ইউনিটি প্যাকেজ ব্যবহার করে। জিওস্পেশিয়াল ক্রিয়েটর বৈশিষ্ট্যগুলি সক্ষম করার আগে, আসুন আপনার প্রকল্পে সিজিয়াম প্যাকেজ যুক্ত করি।

আমরা Cesium এর GitHub পৃষ্ঠা থেকে Cesium for Unity প্যাকেজের সর্বশেষ সংস্করণ ইনস্টল করার পরামর্শ দিচ্ছি:

  1. Cesium for Unity-এর প্রি-কম্পাইল করা .tgz সংস্করণটি তাদের GitHub Releases পৃষ্ঠা থেকে ডাউনলোড করুন। Cesium for Unity প্যাকেজের বর্তমান প্রস্তাবিত সংস্করণ হল 1.1.0।
  2. ইউনিটির "উইন্ডো" মেনুতে ক্লিক করে, তারপর "প্যাকেজ ম্যানেজার" নির্বাচন করে ইউনিটি প্যাকেজ ম্যানেজার খুলুন।
  3. "+" আইকনে ক্লিক করুন এবং "টারবল থেকে প্যাকেজ যোগ করুন" নির্বাচন করুন।
  4. ধাপ ১-এ ডাউনলোড করা Cesium for Unity .tgz ফাইলটি নির্বাচন করুন।
  5. আপনাকে অতিরিক্ত নির্ভরতা ইনস্টল করার জন্য অনুরোধ করা হতে পারে, যেমন টেক্সট মেশ প্রো।

Add a .tgz package with Unity Package Manager

জিওস্পেশিয়াল ক্রিয়েটর সক্ষম করুন

আপনি এখন জিওস্পেশিয়াল ক্রিয়েটর সক্ষম করতে প্রস্তুত:

  1. বিল্ড সেটিংস ডায়ালগ থেকে, নিশ্চিত করুন যে আপনার নির্বাচিত প্ল্যাটফর্মটি হয় "Android" অথবা "iOS"। জিওস্পেশিয়াল ক্রিয়েটর বৈশিষ্ট্যগুলি এই মুহূর্তে অন্যান্য প্ল্যাটফর্মের জন্য উপলব্ধ নয়।
  2. প্রজেক্ট সেটিংস > XR প্লাগ-ইন ম্যানেজমেন্ট > ARCore এক্সটেনশনে নেভিগেট করুন।
  3. যদি আপনি আগের ধাপে আপনার ARCore Android এবং/অথবা iOS API কী(গুলি) সেট না করে থাকেন, তাহলে এখনই তা করতে ভুলবেন না।
  4. "Geospatial" এবং "Geospatial Creator" উভয় টগলই সক্ষম করুন। Geospatial Creator টগল সক্ষম করতে ক্লিক করার পরে, আপনার প্রকল্পটি Geospatial Creator এর সাথে সামঞ্জস্যপূর্ণ কিনা তা নিশ্চিত করার জন্য একটি নন-মডাল উইজার্ড প্রদর্শিত হবে।
  5. উইজার্ডে "সমাপ্তি" এ ক্লিক করুন।

উইজার্ডটি শেষ করার পর, ইউনিটি আপনার স্ক্রিপ্টগুলির একটি সংকলন ট্রিগার করবে। চালিয়ে যাওয়ার আগে পুনঃসংকলন সম্পূর্ণ হওয়ার জন্য অপেক্ষা করুন। (যদি আপনার নির্বাচিত প্ল্যাটফর্মটি "Android" বা "iOS" না হয়, তাহলে এখনই এর মধ্যে একটিতে স্যুইচ করুন।)

ম্যাপ টাইলস সহ একটি জিওস্পেশিয়াল ক্রিয়েটর অরিজিন যোগ করুন

আপনার দৃশ্যের জন্য ঠিক একটি "জিওস্পেশিয়াল ক্রিয়েটর অরিজিন" অবজেক্ট প্রয়োজন। এই অবজেক্টটি বাস্তব-বিশ্বের অক্ষাংশ, দ্রাঘিমাংশ এবং উচ্চতার মানগুলিকে ইউনিটি গেম স্থানাঙ্কে রূপান্তর করার জন্য রেফারেন্স পয়েন্ট হিসাবে ব্যবহৃত হয়।

আপনার দৃশ্যে একটি Geospatial Creator Origin যোগ করতে, Game Object > XR > Geospatial Creator Origin নির্বাচন করুন। নতুন তৈরি বস্তুর জন্য একটি georeference প্রয়োজন, যা একটি নির্দিষ্ট অক্ষাংশ, দ্রাঘিমাংশ এবং উচ্চতাকে গেম স্থানাঙ্কে উৎপত্তির অবস্থানের সাথে সংযুক্ত করে। আপনার Geospatial Creator Origin এর Inspector pane থেকে, Add Cesium Georeference Component বোতামে ক্লিক করে একটি georeference যোগ করুন।

Add the Geospatial Creator Origin GameObject

আপনার AR অবজেক্টের রেফারেন্স পয়েন্ট হওয়ার পাশাপাশি, Cesium Georeference দৃশ্যে একটি Cesium 3D Tileset অবজেক্ট যোগ করে। এই অবজেক্টটি এডিটরের সিন ভিউতে Google Map Tiles রেন্ডার করবে, যার ফলে আপনি ঠিক কোথায় আপনার AR কন্টেন্ট প্রদর্শিত হবে তা কল্পনা করতে পারবেন। Geospatial Creator Origin এর ইন্সপেক্টরে একটি ক্ষেত্র আছে যেখানে আপনি আগে সেট আপ করা Map Tiles API কী যোগ করতে পারেন। এই কী সেট করার পরে, আপনি Scene View-এ ম্যাপ টাইলস লোড হতে দেখতে পাবেন।

এখন আপনার অ্যাপে যেখানে AR কন্টেন্ট দেখাতে চান তার কাছাকাছি অক্ষাংশ, দ্রাঘিমাংশ এবং উচ্চতা ক্ষেত্রগুলি পরিবর্তন করুন।

এডিটরের সিন ভিউতে এখন আপনার মূল অক্ষাংশ এবং দ্রাঘিমাংশে ম্যাপ টাইলগুলি দেখানো উচিত। রানটাইমে, আমরা ধরে নিচ্ছি যে আপনার অ্যাপটি AR ক্যামেরা ব্যবহার করবে, তাই Geospatial Creator ইতিমধ্যেই "EditorOnly" ট্যাগ দিয়ে Cesium 3D Map Tileset অবজেক্টটি কনফিগার করেছে। এই কারণে, আপনার গেমে রানটাইমে টাইলগুলি ডাউনলোড বা রেন্ডার করা হবে না। এটি Cesium3DTileset অবজেক্টের ইন্সপেক্টর থেকে পরিবর্তন করা যেতে পারে। Cesium এর Georeference এবং 3D Tileset GameObjects সম্পর্কে আরও জানতে, Cesium for Unity ডকুমেন্টেশন দেখুন।

একটি জিওস্পেশিয়াল ক্রিয়েটর অ্যাঙ্কর যোগ করুন এবং রাখুন

আপনি এখন আপনার দৃশ্যে AR কন্টেন্ট স্থাপন করতে প্রস্তুত! আপনার দৃশ্যের শ্রেণিবিন্যাসে একটি অ্যাঙ্কর যোগ করতে GameObject > XR > Geospatial Creator Anchor এ ক্লিক করুন। অ্যাঙ্করের ইন্সপেক্টর থেকে, আপনি একটি সঠিক অক্ষাংশ, দ্রাঘিমাংশ এবং উচ্চতা নির্দিষ্ট করতে পারেন। বস্তুর রূপান্তর অবিলম্বে আপনার দৃশ্যের সঠিক অবস্থানে আপডেট হবে এবং আপনি দেখতে পাবেন যে বস্তুটি বিশ্বের ঠিক কোথায় প্রদর্শিত হবে।

Add the Geospatial Creator Anchor

অ্যাঙ্করের অক্ষাংশ এবং দ্রাঘিমাংশ ঠিক করার সময়, কাছাকাছি একটি স্থান বেছে নিন যাতে আপনি রানটাইমে এটি সঠিক স্থানে আছে কিনা তা যাচাই করতে সক্ষম হন। জিওস্পেশিয়াল ক্রিয়েটর অ্যাঙ্করের উচ্চতা নির্ধারণ করার সময়, আপনার কাছে তিনটি বিকল্প রয়েছে:

  • ভূখণ্ড নির্দিষ্ট অক্ষাংশ এবং দ্রাঘিমাংশে স্থল স্তরে নোঙ্গর স্থাপন করে। ভূমি স্তর রানটাইমে ভিজ্যুয়াল পজিশনিং সিস্টেম দ্বারা নির্ধারিত হয়। আপনি যদি ARCore এর ভূ-স্থানিক API গুলিতে নতুন হন, তাহলে "ভূখণ্ড" একটি ভাল পছন্দ, কারণ নোঙ্গরটি সরাসরি মাটিতে উচ্চ মাত্রার উল্লম্ব নির্ভুলতার সাথে সমাধান করা হবে। "উচ্চতা অফসেট" ক্ষেত্রটি আপনাকে মিটারে একটি নির্দিষ্ট পরিমাণে ভূমি স্তরের উপরে বা নীচে নোঙ্গর স্থাপন করতে দেয়। উদাহরণস্বরূপ, "1.0" এর অফসেট নির্দিষ্ট করার ফলে নোঙ্গরটি ভূখণ্ডের এক মিটার উপরে "ভাসমান" হয়।
  • ছাদের উপরিভাগে প্রদত্ত অক্ষাংশ এবং দ্রাঘিমাংশে যেকোনো কাঠামোর উপরে অ্যাঙ্কর স্থাপন করা হয়। ভূখণ্ডের অ্যাঙ্করের মতো, "উচ্চতা অফসেট" ক্ষেত্রটি আপনাকে ছাদের অবস্থানের সাপেক্ষে মিটারে অ্যাঙ্করটিকে উপরে বা নীচে সরাতে দেয়।
  • WGS84 স্থানাঙ্ক ব্যবস্থার উপর ভিত্তি করে নোঙ্গরটিকে মিটারে একটি নির্দিষ্ট পরম উচ্চতায় স্থাপন করে। এইভাবে বস্তুটি স্থাপন করার জন্য কিছু পরীক্ষা-নিরীক্ষা এবং ত্রুটির প্রয়োজন হতে পারে, কারণ WSG84-এ "0" উচ্চতা অগত্যা গড় সমুদ্রপৃষ্ঠ নির্দেশ করে না এবং GPS-এর উচ্চতার সাথে মেলে নাও পারে। এছাড়াও, রেন্ডার করা 3D টাইলসের অক্ষাংশ এবং দ্রাঘিমাংশ অত্যন্ত নির্ভুল হলেও, 3D টাইলসকে রেফারেন্স হিসাবে ব্যবহার করে বস্তুটিকে ভূমি স্তরে স্থাপন করার চেষ্টা করলে কয়েক মিটার পর্যন্ত উচ্চতার ত্রুটি হতে পারে।

বিভিন্ন ধরণের ARCore Geospatial Anchors সম্পর্কে আরও জানতে, Geospatial Developer Guide দেখুন।

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

অ্যাঙ্করে জ্যামিতি যোগ করুন

যদি আপনি এখন অ্যাপটি তৈরি করে চালান, তাহলে আপনার AR সক্ষম অ্যাপে অ্যাঙ্করটি দেখতে পাবেন না। কারণ এর সাথে কোনও জ্যামিতি সংযুক্ত নেই। আসুন অ্যাঙ্করে একটি সাধারণ 3D প্রিমিটিভ যোগ করি: দৃশ্যের অনুক্রমের মধ্যে, আপনার AR Geospatial Creator Anchor অবজেক্টে ডান ক্লিক করুন। প্রসঙ্গ মেনু থেকে, 3D Object > Cube নির্বাচন করুন। আপনার দৃশ্যের দৃশ্যে আপনার অ্যাঙ্করের চাইল্ড হিসেবে একটি ধূসর ঘনক দেখতে পাবেন। আপনি যদি এডিটরে অবজেক্টের অবস্থান বা ঘূর্ণন সরানোর সিদ্ধান্ত নেন, তাহলে আমরা চাইল্ড Cube প্রিমিটিভের পরিবর্তে রুট অ্যাঙ্কর অবজেক্টটি সরানোর পরামর্শ দিচ্ছি। এটি অক্ষাংশ / দ্রাঘিমাংশ থেকে গেম স্থানাঙ্কে অনুবাদে ত্রুটি কমাতে সাহায্য করবে।

A Geospatial Creator Anchor with a Cube primitive

অবশ্যই, আপনি অ্যাঙ্করে আরও জটিল জ্যামিতি এবং ইচ্ছামত উপাদান এবং শিশুও যোগ করতে পারেন।

আপনার অ্যাপ তৈরি করুন এবং চালান

বাস্তব জগতে আপনার অবস্থান দেখার সময় এসেছে! আপনার অ্যাপ তৈরি করে চালানোর চেষ্টা করুন, তারপর সেই স্থানে চলে যান যেখানে আপনি কিউবটি দেখতে পাবেন। এটি কি সেখানে আছে? অভিনন্দন, আপনি জিওস্পেশিয়াল ক্রিয়েটরের সাথে আরও জটিল AR অভিজ্ঞতা তৈরি করতে প্রস্তুত!

যদি আপনার কোন সমস্যা হয়, তাহলে সমস্যা সমাধানের নির্দেশিকা দেখুন।

বিভিন্ন জ্যামিতি সহ অতিরিক্ত AR Geospatial Creator Anchors যোগ করার এখনই উপযুক্ত সময়। একাধিক ছাদ এবং ভূখণ্ডের অ্যাঙ্কর এবং তাদের অফসেট নিয়ে পরীক্ষা-নিরীক্ষা করে দেখুন। অ্যানিমেট করতে বা বস্তুর সাথে ইন্টারঅ্যাকশন সক্ষম করতে স্ক্রিপ্ট যোগ করুন।

জিওস্পেশিয়াল ক্রিয়েটর অ্যাঙ্কর এবং ARGeospatialAnchor ক্লাস বোঝা

জটিল এবং ইন্টারেক্টিভ AR অভিজ্ঞতা তৈরি করার সময়, Geospatial Creator Anchors এবং ARCore-এর ARGeospatialAnchor C# ক্লাসের মধ্যে সম্পর্ক বোঝা সহায়ক:

রানটাইমে শুধুমাত্র ARAnchorManager এর যেকোনো একটি ফাংশন ব্যবহার করে একটি ARGeospatialAnchor তৈরি করা যেতে পারে, এবং AR সেশন স্থিতিশীল হওয়ার পরেই এটি তৈরি করা যেতে পারে। একটি Geospatial Creator Anchor কে আপনার দৃশ্যে বিদ্যমান একটি প্লেসহোল্ডার হিসেবে ভাবা যেতে পারে, যা AR সেশনটি ARGeospatialAnchor অবজেক্টগুলি সমাধান করার জন্য প্রস্তুত হওয়ার জন্য অপেক্ষা করে। একবার সেশন প্রস্তুত হয়ে গেলে, প্লেসহোল্ডার স্বয়ংক্রিয়ভাবে ARAnchorManager ARGeospatialAnchor তৈরি এবং সমাধান করার জন্য কল করবে।

রানটাইম অ্যাঙ্কর সমাধান হওয়ার পরপরই, আপনার দৃশ্যের অনুক্রমের Geospatial Creator Anchor নতুন GameObject-এর সাথে একটি শিশু হিসাবে নিজেকে সংযুক্ত করবে। এর অর্থ হল Geospatial Creator Anchor-এর যেকোনো উপাদান বা শিশু নতুন ARGeospatialAnchor GameObject-এর উপ-উপাদান বা নাতি-নাতনি হয়ে যাবে। উদাহরণস্বরূপ, Geospatial Creator Anchor-এর সাথে সংযুক্ত একটি জ্যামিতি আদিম transform ARGeospatialAnchor এর transform থেকে উত্তরাধিকারসূত্রে প্রাপ্ত হবে এবং তাই রানটাইম AR সেশনে প্রত্যাশিত স্থানে স্থাপন করা হবে।

রানটাইমের সময় যদি আপনার নির্দিষ্ট ARGeospatialAnchor GameObjects সনাক্ত করার প্রয়োজন হয়, তাহলে আপনি দৃশ্যে এমন বস্তু অনুসন্ধান করতে পারেন যার name বৈশিষ্ট্য Geospatial Creator ব্যবহার করে তৈরি অ্যাঙ্করের সাথে মিলে যায়। যদি AR সেশনটি শুরু করা হয়, তাহলে সেই বস্তুর parent হবে সংশ্লিষ্ট ARGeospatialAnchor অবজেক্ট।

সমস্যা সমাধান

আমার নোঙ্গর কেন নড়ছে?

আপনি লক্ষ্য করতে পারেন, বিশেষ করে যখন অ্যাপটি প্রথম চালু হয়, তখন অ্যাঙ্করটি ধীরে ধীরে "ড্রিফট" হতে পারে, এমনকি হঠাৎ করে কয়েক মিটার লাফিয়ে উঠতে পারে। এটি তখন ঘটে যখন VPS সেশন এখনও ক্যামেরার সঠিক অবস্থান নির্ধারণ এবং পরিমার্জন করছে। একাধিক ফ্রেমের উপর অনুভূমিক এবং উল্লম্ব নির্ভুলতা উন্নত হওয়ার সাথে সাথে, অ্যাঙ্করটি আরও সঠিক অবস্থানে পুনরায় আঁকা হয়, যা নড়াচড়ার মায়া দেয়। অবস্থানের নির্ভুলতা একটি নির্দিষ্ট থ্রেশহোল্ডে পৌঁছানো পর্যন্ত আপনি বস্তুটিকে ভিন্নভাবে (অথবা একেবারেই নয়) রেন্ডার করতে চাইতে পারেন। এটি করার জন্য, আপনি বর্তমান ফ্রেম আপডেটের নির্ভুলতা নির্ধারণ করতে ARCoreEarthManager.CameraGeospatialPose বৈশিষ্ট্যটি অনুসন্ধান করতে পারেন।

আমার নোঙরটি ভুল উচ্চতায় কেন দেখাচ্ছে?

জিওস্পেশিয়াল ক্রিয়েটর অ্যাঙ্করগুলির জন্য "ম্যানুয়াল" উচ্চতার ধরণ ব্যবহার করার সময়, অ্যাঙ্করের উচ্চতা WGS84 অনুসারে (মিটারে) সেট করা হবে। একটি নির্দিষ্ট স্থানে, মানচিত্রের টাইলসগুলিতে প্রদর্শিত দৃশ্যমান স্থল স্তর এবং গুগলের ভিজ্যুয়াল পজিশনিং সিস্টেম (VPS) দ্বারা রিপোর্ট করা প্রকৃত স্থল স্তরের মধ্যে কয়েক মিটার পর্যন্ত পার্থক্য থাকতে পারে। যদি রানটাইমে কোনও জিওস্পেশিয়াল অ্যাঙ্কর ভুলভাবে অবস্থিত বলে মনে হয়, তাহলে আমরা নমুনা অ্যাপে ডিবাগিং ওভারলে ব্যবহার করে ব্যক্তিগতভাবে VPS উচ্চতা যাচাই করার পরামর্শ দিচ্ছি। তারপরে আপনি সেই অবস্থানের পরিচিত VPS উচ্চতার সাথে মিল করার জন্য ইউনিটি এডিটরে উচ্চতা পরিবর্তন করতে পারেন।

সম্পাদকের দৃশ্য দৃশ্যে মানচিত্রের টাইলগুলি সঠিকভাবে রেন্ডার হচ্ছে না।

যদি Cesium3DTileset টাইল লোড করছে বলে মনে হয়, কিন্তু আপনার দৃশ্যের দৃশ্যে সেগুলি সলিড ম্যাজেন্টা রঙে রেন্ডার করা হয়, তাহলে আপনার প্রকল্পে ইউনিটির শেডার গ্রাফ প্যাকেজ যোগ করুন। এই প্যাকেজটি Cesium-এর জন্য প্রয়োজনীয়, যদিও ইউনিটির বিল্ট-ইন রেন্ডারার ব্যবহারকারী প্রকল্পগুলিতে এটি ডিফল্টরূপে অন্তর্ভুক্ত থাকে না।

Shader Graph যোগ করতে, Unity Package Manager ( Window > Package Manager ) খুলুন। Package Manager উইন্ডোর উপরে ড্রপডাউন মেনু থেকে "Packages: Unity Registry" নির্বাচন করে নিশ্চিত করুন যে আপনি Unity Package Registry-এ উপলব্ধ প্যাকেজগুলি ব্রাউজ করছেন। com.unity.shadergraph প্যাকেজটি অনুসন্ধান করুন এবং সর্বশেষ সংস্করণটি ইনস্টল করুন। প্যাকেজ লোড হয়ে গেলে, 3D টাইলগুলি পুনরায় লোড হবে এবং সিন ভিউতে সঠিকভাবে রেন্ডার হবে।

অ্যাপটি রানটাইমে ক্যামেরা ভিউয়ের পরিবর্তে একটি কালো স্ক্রিন প্রদর্শন করে

ইউনিটির ইউনিভার্সাল রেন্ডারিং পাইপলাইন (URP) ডিফল্টরূপে AR ক্যামেরার জন্য কনফিগার করা থাকে না। যদি আপনি রানটাইমে ক্যামেরা আউটপুটের পরিবর্তে একটি কালো স্ক্রিন দেখতে পান, তাহলে আপনার দৃশ্যের প্রতিটি URP রেন্ডারারে AR Background Renderer Feature যোগ করতে হবে।

Add the AR Background Renderer Feature

বৈশিষ্ট্যটি যোগ করতে, আপনার প্রকল্পে "রেন্ডারার" অনুসন্ধান করুন। প্রতিটি URP রেন্ডারার বস্তুর জন্য, ইন্সপেক্টরে "রেন্ডারার বৈশিষ্ট্য যোগ করুন" বোতামে ক্লিক করুন এবং AR ব্যাকগ্রাউন্ড রেন্ডারার যোগ করুন।

উৎপত্তিস্থল থেকে দূরে স্থাপিত অ্যাঙ্করগুলি কেন ভুলভাবে স্থাপন করা হয়েছে বলে মনে হয়?

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