Skip to main content

[برای این آموزش خواننده باید با موتور بازی‌سازی یونیتی آشنایی داشته باشد.]

این مقاله‌ی آموزشی، به صورت گام به گام، انجام یک مثال از بازی‌های Augmented Reality را شرح می‌دهد.

گام اول:  دریافت بسته‌ی نرم‌افزاری Vuforia که محصولی از شرکت معروف Qualcomm می‌باشد و به صورت رایگان توزیع شده است. این بسته برای اندروید، iOS و  موتور یونیتی دارای افزونه است. برای دریافت این بسته می توانید به سایت Vuforia بروید و یا از طریق لینک زیر بسته را دانلود کنید .

Vuforia Unity Package

گام دوم: انتخاب یک تصویر با جزییات بالا که Vuforia بتواند به‌آسانی جزئیات آن را تشخیص دهد. تصویری که در زیر می‌بیند،‌ نمونه‌ی مناسبی از این گونه تصاویر است که برای این آموزش انتخاب شده است.

9003562295302725539

قدم سوم: از طریق پورتال، عکس مورد نظرمان را آپلود و دیتاستی که برای پکیج Vuforia قابل فهم باشد را دانلود می کنیم .

لینک پورتال 

برای سادگی دیتاست عکس بالا را در لینک زیر برایتان قرار دادم.

لینک دیتاست

قدم چهارم: یک پروژه یونیتی بسازید و پکیج Vuforia را import کنید.

سپس از فولدر زیر Prefab های ARCamera و ImageTarget را بکشید و توی Scene بیندازید.

Assets/Qualcomm Augmented Reality/Prefabs/

دقت کنید که MainCamera قبلی که توی Scene بوده را غیرفعال کنید یا پاک کنید .

حالا بازی را اجرا کنید . بازی شما باید دقیقا تصویر دوربین شما را نشان بدهد .

قدم پنجم: دیتاست را Import کنید . 

حالا باید روی Prefab ای به نام ImageTarget کلیک کنید و از طریق تنظیمات دیتاست مورد نظر را انتخاب کنید . به این شکل :

5581328652916997645

الان فقط کافیه که یک Qube بسازید و آن را به عنوان بچه  ImageTarget قرار بدید . با این کار به محض اینکه دوربین عکس را تشخیص بدهد مکعب شما در آن نقطه نمایش داده خواهد شد.

5505966800694601039

قدم بعدی این است که روی Prefab  دوربین یعنی ARCamera کلیک کنید و تیک این تنطیمات رو بزنید . 

4459280210413081997

دیگه چیزی نمونده !

یادتون نره که برای اینکه بتوانید تاثیرش را ببینید به یک پرینت از عکس  احتیاج دارید ، البته می توانید عکس را با موبایل هم لود کنید و جلوی دوربین کامپیوتر قرار بدید تا نتیجه ش را ببینید .

پروژه با یونیتی ۴.۵ درست شده و نیازی هم به یونیتی پرو ندارد .

لینک پروژه نهایی

لینک خروجی اندروید

امین سجودی

دانشجوی مهندسی فناوری اطلاعات