গুগল আরকোরের সাথে একটি অগমেন্টেড রিয়েলিটি অ্যান্ড্রয়েড অ্যাপ তৈরি করুন

লেখক: Laura McKinney
সৃষ্টির তারিখ: 7 Lang L: none (month-011) 2021
আপডেটের তারিখ: 1 জুলাই 2024
Anonim
গুগল আরকোরের সাথে একটি অগমেন্টেড রিয়েলিটি অ্যান্ড্রয়েড অ্যাপ তৈরি করুন - অ্যাপস
গুগল আরকোরের সাথে একটি অগমেন্টেড রিয়েলিটি অ্যান্ড্রয়েড অ্যাপ তৈরি করুন - অ্যাপস

কন্টেন্ট


সিনফর্ম প্লাগইন সহ 3 ডি মডেল আমদানি করা হচ্ছে

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

সিনফর্ম প্লাগইন একটি উচ্চ-স্তরের এপিআই সরবরাহ করে যা আপনি স্ট্যান্ডার্ড অ্যান্ড্রয়েড উইজেট, আকার বা উপকরণ থেকে বা 3 ডি সংস্থান থেকে .OBJ বা .FBX ফাইলগুলি থেকে রেন্ডারডেবলগুলি তৈরি করতে ব্যবহার করতে পারেন।

আমাদের প্রকল্পে, আমরা অ্যান্ড্রয়েড স্টুডিওতে একটি .OBJ ফাইল আমদানি করার জন্য সিনফর্ম প্লাগইন ব্যবহার করব। আপনি যখনই সিনফর্ম ব্যবহার করে কোনও ফাইল আমদানি করবেন তখন এই প্লাগইনটি স্বয়ংক্রিয়ভাবে আসবে:

  • সম্পদ ফাইলটিকে একটি .sfb ফাইলে রূপান্তর করুন। এটি একটি রানটাইম-অপ্টিমাইজড দৃশ্যাবলী বাইনারি ফর্ম্যাট (.sfb) যা আপনার APK এ যুক্ত হয়েছে এবং তারপরে রানটাইমে লোড হয়েছে। আমরা একটি রেন্ডারেবল তৈরি করতে এই .sfb ফাইলটি ব্যবহার করব, যা মেসস, উপকরণ এবং টেক্সচার সমন্বিত রয়েছে এবং বাড়ানো দৃশ্যের মধ্যে যে কোনও জায়গায় স্থাপন করা যেতে পারে।
  • একটি .sfa ফাইল তৈরি করুন। এটি একটি সম্পদ বিবরণী ফাইল, যা একটি পাঠ্য ফাইল যা .sfb ফাইলটির মানব-পঠনযোগ্য বিবরণ ধারণ করে। মডেলটির উপর নির্ভর করে আপনি .sfa ফাইলের অভ্যন্তরে পাঠ্য সম্পাদনা করে এর উপস্থিতি পরিবর্তন করতে পারবেন।


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

সিনফর্ম প্লাগইন ইনস্টল করা

সিনফর্ম প্লাগইনটিতে অ্যান্ড্রয়েড স্টুডিও ৩.১ বা তার বেশি প্রয়োজন। আপনি যদি অ্যান্ড্রয়েড স্টুডিওর কোন সংস্করণটি ব্যবহার করছেন তা নিশ্চিত না হন তবে টুলবারটি থেকে "অ্যান্ড্রয়েড স্টুডিও> অ্যান্ড্রয়েড স্টুডিও সম্পর্কে" নির্বাচন করুন। পরবর্তী পপআপটিতে আপনার অ্যান্ড্রয়েড স্টুডিও ইনস্টলেশন সম্পর্কিত সংস্করণ নম্বর সহ কিছু প্রাথমিক তথ্য রয়েছে।

সিনফর্ম প্লাগইন ইনস্টল করতে:

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


দৃশ্যটি ইউএক্স এবং জাভা 8: আপনার প্রকল্পের নির্ভরতা আপডেট করা

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

নির্ভরতা {বাস্তবায়ন ফাইলত্রী (দির: লিবস, অন্তর্ভুক্ত:) বাস্তবায়ন androidTestImplementation androidx.test.espresso: espresso-core: 3.1.1 // Sceneform UX ইউএক্স রিসোর্স সরবরাহ করে, আরফ্রেগমেন্ট // বাস্তবায়ন "com.google.ar.sceneform.ux: দৃশ্যপট-ux: 1.7.0" বাস্তবায়ন "কম com android.support :appcompat-v7:28.0.0 "}

দৃশ্যটি জাভা 8 থেকে ভাষা গঠন ব্যবহার করে, তাই আমাদের জাভা 8-তে আমাদের প্রকল্পের উত্সের সামঞ্জস্যতা এবং টার্গেটের সামঞ্জস্যতাও আপডেট করতে হবে:

সংকলন অধ্যায়গুলি {উত্সের সামঞ্জস্যতা জাভা ভার্সন ERS ভার্সন_1_8 লক্ষ্যসংশ্লিষ্টতা জাভা সংস্করণ V ভার্সন_1_8}

শেষ অবধি, আমাদের সিনফর্ম প্লাগইন প্রয়োগ করতে হবে:

প্লাগইন প্রয়োগ করুন: com.google.ar.sceneform.plugin

আপনার সম্পন্ন বিল্ড.gradle ফাইলটির কিছু দেখতে হবে:

প্লাগইন প্রয়োগ করুন: com.android.application android {compileSdkVersion 28 defaultConfig {applicationId "com.jessicathornsby.arcoredemo" minSdkVersion 23 targetSdkVersion 28 versionCode 1 versionName "1.0" testInstrumentationRunner "androidC.Connerity-Upuration.Cunnerit-CunerititrationConnerit- জাভা ভার্সন.ভি.এস.আর.আর.আই.এন.ভি.আর। .2 বাস্তবায়ন androidx.constraintlayout: নিয়ন্ত্রণ ar.sceneform.ux: দৃশ্যপট-ux: 1.7.0 "বাস্তবায়ন" com.android.support:appcompat-v7:28.0.0 "plugin প্লাগইন প্রয়োগ করুন: com.google.ar .sceneform.plugin

আরএফ্রেগমেন্টের সাথে অনুমতিগুলির জন্য অনুরোধ করা হচ্ছে

আমাদের অ্যাপ্লিকেশনটি তার আশেপাশের বিশদ বিশ্লেষণ করতে এবং বাস্তব বিশ্বে 3D মডেলের অবস্থান ব্যবহার করবে। আমাদের অ্যাপ্লিকেশনটির ক্যামেরাটি অ্যাক্সেস করার আগে এটির জন্য ক্যামেরার অনুমতি প্রয়োজন, সুতরাং আপনার প্রকল্পের ম্যানিফেস্ট খুলুন এবং নিম্নলিখিতগুলি যুক্ত করুন:

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

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

এআর প্রয়োজনীয় বা orচ্ছিক?

এআর কার্যকারিতা ব্যবহার করে এমন দুটি ধরণের অ্যাপ্লিকেশন রয়েছে:

1.আর আবশ্যক

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

যেহেতু আমাদের আবেদন না এআরकोर দরকার, ম্যানিফেস্টটি খুলুন এবং নিম্নলিখিতগুলি যুক্ত করুন:

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

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

সুসংবাদটি হ'ল আমরা আরএফ্রেগমেন্টটি ব্যবহার করছি, যা স্বয়ংক্রিয়ভাবে পরীক্ষা করে নেয় যে এআরकोर ইনস্টল করা আছে এবং তৈরি হওয়ার আগে আপ টু ডেট up প্রতি এআর অধিবেশন - সুতরাং আবারও, এটি হ'ল আমাদের ম্যানুয়ালি প্রয়োগ করতে হবে না।

2. এআর ptionচ্ছিক

যদি আপনার অ্যাপ্লিকেশনটিতে এআর বৈশিষ্ট্যগুলি অন্তর্ভুক্ত থাকে তবে এটির মূল কার্যকারিতা সরবরাহের জন্য অপরিহার্য নয় তবে আপনি এই অ্যাপ্লিকেশনটিকে "এআর ptionচ্ছিক" হিসাবে চিহ্নিত করতে পারেন Your আপনার অ্যাপ্লিকেশনটি তখন গুগল আরকোর রানটাইমে উপস্থিত রয়েছে কিনা তা পরীক্ষা করতে পারে এবং এর অক্ষম করে দেয় ডিভাইসগুলিতে এআর বৈশিষ্ট্যগুলি যা আরকোর সমর্থন করে না।

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

যদি এআরকোর আপনার অ্যাপে গুরুত্বপূর্ণ না হয় তবে আপনি নিম্নলিখিতটি আপনার ম্যানিফেস্টে যুক্ত করতে পারেন:

আমার ম্যানিফেস্টটি উন্মুক্ত থাকাকালীন আমি মেইনএকটিভিটির হ্যান্ডলেন্ট ওরিয়েন্টেশনটি কৃপণভাবে পরিবর্তনগুলি নিশ্চিত করতে অ্যান্ড্রয়েড: কনফিগারেশনস এবং অ্যান্ড্রয়েড: স্ক্রিন ওরিয়েন্টেশনও যুক্ত করছি।

আপনার ম্যানিফেস্টে এগুলি যুক্ত করার পরে, সম্পূর্ণ করা ফাইলটি এমন কিছু দেখতে পাওয়া উচিত:

আপনার বিন্যাসে আরফ্রেগমেন্ট যুক্ত করুন

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

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

আপনি নিয়মিত অ্যান্ড্রয়েড ফ্রেগমেন্টের মতো একটি লেআউট ফাইলে আরফ্রেগমেন্ট খণ্ডটি যুক্ত করতে পারেন, সুতরাং আপনার কার্যকলাপ_মন.এক্সএমএল ফাইলটি খুলুন এবং একটি "com.google.ar.sceneform.ux.ArFraament" উপাদান যুক্ত করুন।

গুগলের পলি ব্যবহার করে 3 ডি মডেল ডাউনলোড করা হচ্ছে

আপনি রেন্ডারেবলস তৈরি করতে পারেন এমন বিভিন্ন উপায় রয়েছে তবে এই নিবন্ধে আমরা একটি 3D সম্পদ ফাইল ব্যবহার করব।

দৃশ্যাবলী অ্যানিমেশন সহ বা ছাড়াই .OBJ, .glTF, এবং .FBX ফর্ম্যাটে 3 ডি সংস্থানগুলিকে সমর্থন করে। প্রচুর জায়গাগুলি যেখানে আপনি এই সমর্থিত বিন্যাসগুলির মধ্যে একটিতে 3 ডি মডেল অর্জন করতে পারবেন তবে এই টিউটোরিয়ালে আমি একটি .OBJ ফাইল ব্যবহার করব, যা গুগলের পোলির সংগ্রহশালা থেকে ডাউনলোড হয়েছে।

পলি ওয়েবসাইটের দিকে যান এবং Oওবিজে ফর্ম্যাটে (আমি এই টি-রেক্স মডেলটি ব্যবহার করছি), আপনি যে সম্পদটি ব্যবহার করতে চান তা ডাউনলোড করুন।

  • ফোল্ডারটি আনজিপ করুন, যাতে আপনার মডেলের উত্স সম্পদ ফাইল (.OBJ, .FBX, বা .glTF) থাকা উচিত। মডেলটির উপর নির্ভর করে, এই ফোল্ডারে কিছু মডেল নির্ভরতা থাকতে পারে, যেমন .mtl, .bin, .png, বা .jpeg ফর্ম্যাটের ফাইল।

অ্যান্ড্রয়েড স্টুডিওতে 3 ডি মডেল আমদানি করা হচ্ছে

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

  • একটি "স্যাম্প্লেডেটা" ফোল্ডার তৈরি করুন। স্যাম্প্লেডাটা হ'ল ডিজাইনের সময় নমুনা ডেটার জন্য একটি নতুন ফোল্ডার প্রকার যা আপনার APK এ অন্তর্ভুক্ত হবে না তবে এটি অ্যান্ড্রয়েড স্টুডিও সম্পাদকটিতে উপলব্ধ থাকবে।
  • আসল .OBJ সম্পদ ফাইলটিকে আপনার "স্যাম্প্লেডেটা" ফোল্ডারে টেনে আনুন।
  • .OBJ ফাইলে দৃশ্যের আমদানি এবং রূপান্তর সম্পাদন করুন, যা .sfa এবং .sfb ফাইল উত্পন্ন করবে।

যদিও এটি আরও সোজা মনে হতে পারে, না .OBJ ফাইলটিকে সরাসরি আপনার প্রকল্পের "রেজিস" ডিরেক্টরিতে টানুন এবং ফেলে দিন, কারণ এটি অকারণে আপনার APK এ মডেলটি অন্তর্ভুক্ত করবে।

অ্যান্ড্রয়েড স্টুডিও প্রকল্পগুলিতে ডিফল্টরূপে একটি "নমুনা" ফোল্ডার থাকে না, সুতরাং আপনাকে ম্যানুয়ালি একটি তৈরি করতে হবে:

  • আপনার প্রকল্পের "অ্যাপ" ফোল্ডারটি কন্ট্রোল-ক্লিক করুন।
  • "নতুন> নমুনা ডেটা ডিরেক্টরি" নির্বাচন করুন এবং "স্যাম্প্লেডেটা" নামে একটি ফোল্ডার তৈরি করুন।
  • আপনি আগে ডাউনলোড করেছেন এমন 3D মডেল ফাইলগুলিতে নেভিগেট করুন। উত্স সম্পদ ফাইল (.OBJ, .FBX, বা .glTF) সন্ধান করুন এবং তারপরে এটিকে "স্যাম্পলেডাটা" ডিরেক্টরিতে রেখে ড্রপ করুন।
  • আপনার মডেলটির কোনও নির্ভরতা রয়েছে কিনা তা পরীক্ষা করুন (যেমন .mtl, .bin, .png, বা .jpeg ফর্ম্যাটগুলির ফাইল)। যদি আপনি এই ফাইলগুলির কোনও খুঁজে পান তবে তারপরে এগুলিকে টানুন এবং "নমুনা" ফোল্ডারে রেখে দিন।
  • অ্যান্ড্রয়েড স্টুডিওতে, আপনার 3 ডি মডেল উত্স ফাইল (.OBJ, .FBX, বা .glTF) এ ক্লিক করুন এবং তারপরে "দৃশ্য দৃশ্য সম্পদ আমদানি করুন" নির্বাচন করুন।

  • পরবর্তী উইন্ডোটি সিনফর্মটি যে ফাইলগুলি উত্পন্ন করতে চলেছে সে সম্পর্কে কিছু তথ্য প্রদর্শন করে যার ফলে ফলাফল প্রাপ্ত .sfa ফাইলটি আপনার প্রকল্পে সংরক্ষণ করা হবে; আমি "কাঁচা" ডিরেক্টরিটি ব্যবহার করব।
  • আপনি যে তথ্য প্রবেশ করেছেন তাতে খুশি হলে, "সমাপ্তি" এ ক্লিক করুন।

এই আমদানিটি আপনার প্রকল্পে কয়েকটি পরিবর্তন করে। আপনি যদি আপনার বিল্ড.gradle ফাইলটি খোলেন, তবে আপনি দেখতে পাবেন যে দৃশ্যের প্লাগইনটি প্রকল্প নির্ভরতা হিসাবে যুক্ত করা হয়েছে:

নির্ভরতা {শ্রেণিপথ com.android.tools.build:gradle:3.5.0-alpha06 শ্রেণিপথ com.google.ar.sceneform: প্লাগইন: 1.7.0 // নোট: আপনার অ্যাপ্লিকেশন নির্ভরতা এখানে রাখবেন না; এগুলি // স্বতন্ত্র মডিউল বিল্ড.gradle ফাইলগুলিতে belong belong

আপনার মডিউল স্তরের বিল্ড.gradle ফাইলটি খুলুন এবং আপনি আপনার আমদানি করা 3D মডেলের জন্য একটি নতুন দৃশ্যাংশ.সেট () এন্ট্রি পাবেন:

প্লাগইন প্রয়োগ করুন: com.google.ar.sceneform.plugin // আমদানির সময় আপনি যে "উত্স সম্পদ পথ" নির্দিষ্ট করেছেন // দৃশ্যে.অ্যাসেট (স্যাম্প্লেডাটা / ডাইনোসর.ওবজ, // আপনি "আমদানি চলাকালীন নির্দিষ্ট" উপাদান পথ "// ডিফল্ট , // আমদানির সময় আপনি যে ".sfa আউটপুট পাথ" উল্লেখ করেছেন // স্যাম্প্লেডাটা / ডাইনোসর.এসএফএ, // আপনি যে ".sfb আউটপুট পাথ" আমদানি করার সময় নির্দিষ্ট করেছেন // এসসিআর / প্রধান / সম্পদ / ডায়নোসর)

যদি আপনি আপনার "স্যাম্প্লেডেটা" এবং "কাঁচা" ফোল্ডারগুলি একবার দেখে থাকেন তবে আপনি দেখতে পাবেন যে সেগুলিতে যথাক্রমে নতুন .sfa এবং .sfb ফাইল রয়েছে।

আপনি অ্যান্ড্রয়েড স্টুডিওর নতুন সিনফর্ম ভিউয়ারে .sfa ফাইলটি পূর্বরূপ দেখতে পারেন:

  • অ্যান্ড্রয়েড স্টুডিও মেনু বার থেকে "দেখুন> সরঞ্জামগুলি উইন্ডোজ> দর্শক" নির্বাচন করুন।
  • বাম-হাতের মেনুতে, আপনার .sfa ফাইলটি নির্বাচন করুন। আপনার 3D মডেলটি এখন ভিউয়ার উইন্ডোতে উপস্থিত হওয়া উচিত।

আপনার 3D মডেল প্রদর্শন করুন

আমাদের পরবর্তী কাজটি একটি এআর সেশন তৈরি করছে যা এর চারপাশটি বোঝে এবং ব্যবহারকারীকে একটি বাড়ানো দৃশ্যে 3 ডি মডেল স্থাপনের অনুমতি দেয়।

এটি আমাদের নিম্নলিখিত করা প্রয়োজন:

1. একটি আরফ্রেগমেন্ট সদস্য ভেরিয়েবল তৈরি করুন

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

নিম্নলিখিত স্নিপেটে, আমি আরফ্রেগমেন্টের জন্য সদস্য ভেরিয়েবল তৈরি করছি এবং তারপরে এটি অনক্রিট () পদ্ধতিতে শুরু করছি:

প্রাইভেট আরফ্রেগমেন্ট @ ওভাররাইড সুরক্ষিত অকার্যকর অনক্রিট (বান্ডেল সেভড ইনস্ট্যান্সস্টেট) {সুপার.অনক্রিয়েট (সেভড ইনস্ট্যান্সস্টেট); ... ... ...} setContentView (R.layout.activity_main); আরকোরেফ্র্যাগমেন্ট = (আরফ্রেগমেন্ট) // ফ্র্যাগমেন্ট ম্যানেজার ব্যবহার করে টুকরোটি সন্ধান করুন // getSupportFragmentManager ()। findFragmentById (R.id.main_fragment);

2. একটি মডেলরেেন্ডেবল তৈরি করুন

আমাদের এখন আমাদের .sfb ফাইলটিকে মডেলরেেন্ডেবলে রূপান্তর করতে হবে, যা শেষ পর্যন্ত আমাদের 3 ডি অবজেক্টকে রেন্ডার করবে।

এখানে, আমি আমার প্রকল্পের রেজ / কাঁচা / ডাইনোসর .এসএফবি ফাইল থেকে মডেলরেন্ডারেবল তৈরি করছি:

বেসরকারী মডেলরেনডেবল ডাইনো রেন্ডারেবল; ... ... ... মডেলরেন্ডেবল.বিল্ডার () .সেটসোর্স (এটি, আর.আর.ওডিনোসৌর)। বিল্ড () .উত্তর গ্রহণ করুন (উপস্থাপনযোগ্য -> ডাইনো রেনডেবল = রিন্টারযোগ্য)। এক্সেসপ্যাটিলি (থ্রোয়েবল -> {লগ.ই ( ট্যাগ, "উপস্থাপনযোগ্য লোড করতে অক্ষম"); নাল ফেরান;}); }

৩. ব্যবহারকারীর ইনপুটটিতে সাড়া দিন

এআরফ্রেগমেন্টটিতে ট্যাপ, টানা, চিম্টি, এবং মোড়ড়ের অঙ্গভঙ্গির জন্য অন্তর্নির্মিত সমর্থন রয়েছে।

আমাদের অ্যাপ্লিকেশনটিতে, ব্যবহারকারী একটি বিমানটিকে একটি ট্যাপ দিয়ে একটি আরকোর প্লেনে একটি 3D মডেল যুক্ত করবে।

এই কার্যকারিতাটি সরবরাহ করার জন্য, আমাদের কলব্যাকটি নিবন্ধিত করতে হবে যা যখনই বিমানটি ট্যাপ করা হয় তখনই তাকে ডাকা হবে:

#CoreFragment.setOnTapArPlaneListener ((হিটরেসাল্ট হিটরেসাল্ট, প্লেন প্লেন, মোশনইভেন্ট মোশনএভেন্ট)) -> {যদি (ডাইনো রেন্ডারেবল == নাল) {ফিরে;}

4. আপনার মডেল অ্যাঙ্কর

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

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

এআরসিএনভিউ উপাদানটির একটি দৃশ্যের সাথে এটি সংযুক্ত রয়েছে, যা রেন্ডার করা দরকার এমন সমস্ত নোড সমন্বিত একটি পিতামাতার-শিশু ডেটা কাঠামো।

আমরা অ্যাঙ্করনোড টাইপের একটি নোড তৈরি করে শুরু করতে যাচ্ছি যা আমাদের আরসিনভিউয়ের প্যারেন্ট নোড হিসাবে কাজ করবে।

সমস্ত অ্যাঙ্কর নোড একই বাস্তব বিশ্বের অবস্থানে থেকে যায়, তাই অ্যাঙ্কর নোড তৈরি করে আমরা নিশ্চিত করছি যে আমাদের 3 ডি মডেলগুলি বাড়ানো দৃশ্যের মধ্যে স্থির থাকবে।

আসুন আমাদের অ্যাঙ্কর নোড তৈরি করুন:

অ্যাঙ্করনোড অ্যাঙ্করনোড = নতুন অ্যাঙ্করনোড (অ্যাঙ্কর);

তারপরে আমরা getArSceneView () ব্যবহার করে একটি আরসিনভিউ পুনরুদ্ধার করতে এবং এটিকে অ্যাঙ্করনোডের সাথে সংযুক্ত করতে পারি:

anchorNode.setParent (arCoreFragment.getArSceneView () getScene ()।);

5. সরানো, স্কেলিং এবং ঘোরানোর জন্য সমর্থন যুক্ত করুন

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

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

ট্রান্সফরমবলনোড ট্রান্সফর্মবলনোড = নতুন ট্রান্সফর্মবলনোড (আরকোরফ্রেগমেন্ট.সেট ট্রান্সফরমেশনসিস্টেম ()); // অ্যাঙ্করনোড // ট্রান্সফরমবলনোড.সেট প্যারেন্ট (অ্যাঙ্করনোড) এ ট্রান্সফর্মবলনোড সংযুক্ত করুন; transformableNode.setRenderable (dinoRenderable); // নোডটি নির্বাচন করুন // ট্রান্সফর্মবলনোড.সलेक्ट (); }); }

মেইনএ্যাকটিভিটি সম্পন্ন হয়েছে

উপরের সমস্তগুলি সম্পাদন করার পরে, আপনার মেইনএ্যাকটিভিটির কিছু দেখতে এমন হওয়া উচিত:

আমদানি android.app.Activity; আমদানি android.app.ActivityManager; আমদানি androidx.appcompat.app.appCompatActivity; আমদানি android.content.Context; আমদানি android.net.Uri; আমদানি android.os.Build; আমদানি android.os.Build.VERSION_CODES; আমদানি android.os.Bundle; আমদানি android.util.Log; আমদানি android.view.MotionEvent; আমদানি androidx.annotation.RequiresApi; com.google.ar.core.Ancor আমদানি করুন; আমদানি com.google.ar.core.HitResult; আমদানি com.google.ar.core.Plane; com.google.ar.sceneform.AunchorNode আমদানি করুন; com.google.ar.sceneform.rendering.ModelRenderable আমদানি করুন; com.google.ar.sceneform.ux.ArFrament আমদানি করুন; com.google.ar.sceneform.ux.TransformableNode আমদানি করুন; সার্বজনীন শ্রেণীর মেইনএকটিভিটি অ্যাপকম্প্যাটএটিভিটি প্রসারিত করে {ব্যক্তিগত স্ট্যাটিক ফাইনাল স্ট্রিং TAG = MainActivity.class.getSimpleName (); বেসরকারী স্থিতিশীল চূড়ান্ত ডাবল MIN_OPENGL_VERSION = 3.0; // মডেলরেেন্ডেবল // প্রাইভেট মডেলরেেন্ডেবল ডাইনোরেেন্ডেবলের জন্য সদস্য ভেরিয়েবল তৈরি করুন; // আরফ্রেগমেন্টের জন্য সদস্য ভেরিয়েবল তৈরি করুন // প্রাইভেট আরফ্রেগমেন্ট আরকোরফ্র্যাগমেন্ট; @RequiresApi (এপিআই = VERSION_CODES.N) @ ওভাররাইড সুরক্ষিত অকার্যকর অনক্রিট (বান্ডেল সেভড ইনস্ট্যান্সস্টেট) {সুপার.অনক্রিয়েট (সেভড ইনস্ট্যান্সস্টেট); যদি (! চেক ডিভাইস ((এটি))) {ফেরত; } সেটকন্টেন্টভিউ (R.layout.activity_main); আরকোরেফ্র্যাগমেন্ট = (আরফ্রেগমেন্ট) // টুকরাটি সন্ধান করুন, টুকরো টুকরো ব্যবস্থাপক ব্যবহার করে // getSupportFragmentManager () getFragmentById (R.id.main_fragment); যদি (বিল্ড.ভি.এস.আর.এস.ডি.এনপিটি> = ভার্সন_কোডেস.এন) {// মডেলরেন্ডারেবল // মডেলরেন্ডারেবল.বিল্ডার ()। সেটসোর্স (এটি, আর.আর.ও.ডিনোসর)। বিল্ড () .পরিবর্তনযোগ্য (উপস্থাপনযোগ্য -> ডাইনো রেন্ডারেবল = রেন্ডারেবল) ) .অনুপাতিকভাবে (// যদি কোনও ত্রুটি দেখা দেয় ... // নিক্ষেপযোগ্য -> {//... তারপর লগক্যাট // লগকে নীচে মুদ্রণ করুন (TAG, "উপস্থাপনযোগ্য লোড করতে অক্ষম"); নাল ফিরে;} ); } // অনট্যাপ ইভেন্টের জন্য শুনুন // আরকোরফ্রেগমেন্ট.সেটঅনট্যাপআরপ্ল্লেইনলাইস্টার ((হিটরেসাল্ট হিটরেসাল্ট, প্লেন প্লেন, মোশনইভেন্ট মোশনইভেন্ট)) -> {যদি (ডিনোরেেন্ডারেবল == নাল) {ফেরত; ch অ্যাঙ্কর অ্যাঙ্কর = হিটরেসাল্ট ক্রেইট অ্যাঞ্চার () প্রকারের নোড অ্যাঙ্করনোড // অ্যাঙ্করনোড অ্যাঙ্করনোড = নতুন অ্যাঙ্করনোড (অ্যাঙ্কর); // অ্যাঙ্করনোডকে দৃশ্যের সাথে যুক্ত করুন // অ্যাঙ্করনোড.সেটপ্যারেন্ট (আরকোরফ্রেগমেন্ট.সেটআরসিউনভিউ ()। getScene ()); // টাইপ ট্রান্সফর্মেবল নোড তৈরি করুন ট্রান্সফরমবলনোড ট্রান্সফর্মবেলনোড = নতুন ট্রান্সফর্মবলনোড (আরকোয়ারফ্রেগমেন্ট.সেট ট্রান্সফরমেশন সিস্টেম ()); // অ্যাঙ্কারনোড // ট্রান্সফর্মবলনোড.সেটপ্যারেন্ট (অ্যাঙ্করনোড) এর সাথে ট্রান্সফর্মবলনডকে সংযুক্ত করুন; // রেন্ডারেবল / ট্রান্সফর্মবলনোড.সেট্রেন্ডেবল সংযুক্ত করুন; / transformableNode.select ();}); } পাবলিক স্ট্যাটিক বুলিয়ান চেক ডিভাইস (চূড়ান্ত ক্রিয়াকলাপ ক্রিয়াকলাপ) {// ডিভাইসটি অ্যান্ড্রয়েড মার্শমালো বা তার আগে চলমান থাকলে ... // যদি (বিল্ড.ভি.এস.আর.এস.ডি.এন.পি. <ভার্সন_কোডেস.এন) {//... তবে নিম্নলিখিতটি মুদ্রণ করুন লগক্যাট // লগ.ই (ট্যাগ, "দৃশ্যের জন্য অ্যান্ড্রয়েড এন বা তার বেশি প্রয়োজন"); activity.finish (); প্রত্যাবর্তন মিথ্যা; Open স্ট্রিং ওপেনগ্লিভিসরশনস্ট্রিং = ((অ্যাক্টিভিটি ম্যানেজার) ক্রিয়াকটিজিটসিসটেম সার্ভিস (কনটেক্সট.এ্যাকটিভিটি_সर्ভিসিস)) .getDeviceConfigrationInfo () // ওপেনগিএল এর সংস্করণ পরীক্ষা করুন // .getGlEsVersion (); // ডিভাইসটি যদি ওপেনগিএল ইএস 3.0 এর চেয়ে কম কিছু চলমান থাকে ... // যদি (Double.parseDouble (openGlVersionString) <MIN_OPENGL_VERSION) .. //... তবে নিম্নলিখিতটি লগক্যাট // লগইনে মুদ্রণ করুন (TAG, " ওপেনজিএল ইএস 3.0 বা উচ্চতর প্রয়োজন "); activity.finish (); প্রত্যাবর্তন মিথ্যা; সত্য প্রত্যাবর্তন; }}

আপনি সম্পূর্ণ প্রকল্পটি গিটহাব থেকে ডাউনলোড করতে পারেন।

আপনার গুগল আরকোর সংযোজনিত বাস্তবতা অ্যাপ্লিকেশন পরীক্ষা করা

আপনি এখন একটি শারীরিক, সমর্থিত অ্যান্ড্রয়েড ডিভাইসে আপনার অ্যাপ্লিকেশনটি পরীক্ষা করতে প্রস্তুত। যদি আপনার কাছে এমন কোনও ডিভাইস নেই যা ARCore সমর্থন করে, তবে আপনার এআর অ্যাপটি অ্যান্ড্রয়েড এমুলেটরটিতে পরীক্ষা করা সম্ভব (কিছুটা অতিরিক্ত কনফিগারেশন সহ, যা আমরা পরবর্তী বিভাগে আচ্ছাদিত করব)।

আপনার প্রকল্প পরীক্ষা করতে শারীরিক অ্যান্ড্রয়েড ডিভাইস:

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

  • একবার আপনি এই বিন্দুর অবস্থান নিয়ে খুশি হয়ে গেলে, তাদেরকে একটি টোকা দিন - আপনার 3D মডেলটি এখন আপনার নির্বাচিত বিমানে প্রদর্শিত হবে!

  • শারীরিকভাবে মডেলটির চারদিকে ঘোরাতে চেষ্টা করুন; আপনার চারপাশের উপর নির্ভর করে আপনি এর চারপাশে পুরো 360 ডিগ্রি করতে সক্ষম হতে পারেন। আপনার এটিও পরীক্ষা করা উচিত যে অবজেক্টটি এমন ছায়া ingালছে যা বাস্তব বিশ্বের আলোক উত্সগুলির সাথে সামঞ্জস্যপূর্ণ।

একটি অ্যান্ড্রয়েড ভার্চুয়াল ডিভাইসে এআরकोर পরীক্ষা করা

আপনার আরকোর অ্যাপ্লিকেশনগুলিকে একটি অ্যান্ড্রয়েড ভার্চুয়াল ডিভাইস (এভিডি) এ পরীক্ষা করতে আপনার অ্যান্ড্রয়েড এমুলেটর সংস্করণ ২ 27.২.৯ বা তার বেশি হতে হবে। আপনাকে অবশ্যই আপনার এভিডিতে গুগল প্লে স্টোরটিতে সাইন ইন করতে হবে এবং ওপেনজিএল ইএস 3.0 বা উচ্চতর সক্ষম থাকতে হবে।

ওপেনজিএল ইএস ৩.০ বা তার বেশি বর্তমানে আপনার এভিডিতে সক্ষম হয়েছে কিনা তা পরীক্ষা করতে:

  • আপনার এভিডি স্বাভাবিক হিসাবে চালু করুন।
  • একটি নতুন টার্মিনাল উইন্ডো (ম্যাক) বা কমান্ড প্রম্পট (উইন্ডোজ) খুলুন।
  • ডিরেক্টরি পরিবর্তন করুন ("সিডি") সুতরাং টার্মিনাল / কমান্ড প্রম্পটটি আপনার অ্যান্ড্রয়েড এসডিকে "অ্যাডাব" প্রোগ্রামের অবস্থানের দিকে নির্দেশ করছে, উদাহরণস্বরূপ আমার কমান্ডটি এরকম দেখাচ্ছে:

সিডি / ব্যবহারকারী / জেসিকাথর্নসবি / গ্রন্থাগার / অ্যান্ড্রয়েড / এসডিকে / প্ল্যাটফর্ম-সরঞ্জামগুলি

  • আপনার কীবোর্ডের "এন্টার" কী টিপুন।
  • টার্মিনালে পরবর্তী কমান্ডটি অনুলিপি / আটকান এবং তারপরে "এন্টার" কী টিপুন:

./adb লগক্যাট | গ্রেপ উদাহরণস্বরূপ

যদি টার্মিনালটি "ভার 3 3" বা তার বেশি হয়, তবে ওপেনজিএল ইএস সঠিকভাবে কনফিগার করা হয়েছে। যদি টার্মিনাল বা কমান্ড প্রম্পট 3.0 এর আগে কিছু প্রদর্শন করে, তবে আপনাকে ওপেনজিএল ইএস 3.0 সক্ষম করতে হবে:

  • আপনার এভিডিতে ফিরে যান।
  • অ্যান্ড্রয়েড এমুলেটরের পাশাপাশি ভাসমান "বর্ধিত নিয়ন্ত্রণ" বোতামগুলির স্ট্রিপটি সন্ধান করুন এবং তারপরে "সেটিংস> উন্নত" নির্বাচন করুন select
  • "ওপেনজিএল ইএস এপিআই স্তর> রেন্ডারার সর্বাধিক (ওপেনগিএল ইএস ৩.১ পর্যন্ত)" নেভিগেট করুন।
  • এমুলেটর পুনরায় চালু করুন।

টার্মিনাল / কমান্ড প্রম্পট উইন্ডোতে, নিম্নলিখিত কমান্ডটি অনুলিপি / আটকান এবং তারপরে "এন্টার" কী টিপুন

./adb লগক্যাট | গ্রেপ উদাহরণস্বরূপ

আপনার এখন "ভার 3 3" বা তারও বেশি ফল পাওয়া উচিত, যার অর্থ ওপেনজিএল ইএস সঠিকভাবে কনফিগার করা হয়েছে।

অবশেষে, নিশ্চিত হয়ে নিন যে আপনার এভিডি আরকোরের অতি সাম্প্রতিক সংস্করণটি চলছে:

  • এআরকোরের গিটহাব পৃষ্ঠায় চলে আসুন এবং এমুলেটরটির জন্য আরকোরের সর্বশেষতম ডাউনলোডটি ডাউনলোড করুন। উদাহরণস্বরূপ, সর্বাধিক সাম্প্রতিক প্রকাশের সময় "ARCore_1.7.0.x86_for_emulator.apk" ছিল
  • আপনার চলমান এভিডি তে APK টেনে আনুন।

কোনও এভিডিতে আপনার প্রকল্পটি পরীক্ষা করতে, আপনার অ্যাপ্লিকেশনটি ইনস্টল করুন এবং অনুরোধ জানানো হলে এভিডির "ক্যামেরা" এ অ্যাক্সেস দিন।

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

আপনি "অপশন" (ম্যাকোস) বা "আল্ট" (লিনাক্স বা উইন্ডোজ) কীগুলি টিপে এবং তারপরে নীচের কীবোর্ড শর্টকাটগুলি ব্যবহার করে ভার্চুয়াল কক্ষের চারপাশে ভার্চুয়াল ক্যামেরাটি সরিয়ে নিতে পারেন:

  • বাম বা ডানে সরান। এ বা ডি টিপুন
  • নীচে বা উপরে সরান। প্রশ্ন বা ই টিপুন।
  • এগিয়ে বা পিছনে সরান। ডাব্লু বা এস টিপুন।

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

মোড়ক উম্মচন

এই নিবন্ধে, আমরা এআরकोर এবং সিনফর্ম প্লাগইন ব্যবহার করে একটি সাধারণ অগমেন্টেড রিয়েলিটি অ্যাপ্লিকেশন তৈরি করেছি।

আপনি যদি নিজের প্রকল্পগুলিতে গুগল আরকোর ব্যবহার করার সিদ্ধান্ত নেন, তবে নীচের মন্তব্যে আপনার তৈরিগুলি ভাগ করে নেওয়ার বিষয়ে নিশ্চিত হন!

শাওমি মহাদেশটির সম্প্রসারণ চালিয়ে যাওয়ার জন্য একটি নিবেদিত আফ্রিকান বিভাগ চালু করেছে বলে জানা গেছে।চীনা ব্র্যান্ডের ফোনগুলি বর্তমানে পরিবেশকদের মাধ্যমে মহাদেশে কেনার জন্য উপলব্ধ onএকটি প্রত্যক্ষ পদ্...

গত শুক্রবারে এমআইইউআই ফোরামগুলি গ্রহণ করে, একটি শাওমি পণ্য পরিচালক এই কোম্পানির অ্যান্ড্রয়েড কি আপডেট রোডম্যাপ ঘোষণা করলেন।রোডম্যাপ অনুসারে, 10 শাওমি এবং রেডমি ডিভাইসগুলি 2019 এর শেষ নাগাদ অ্যান্ড্রয...

পোর্টালের নিবন্ধ