במדריך הזה נראה לכם איך להשתמש ב-Google Cardboard XR Plugin for Unity כדי ליצור חוויות מציאות מדומה (VR) משלכם.
אפשר להשתמש ב-Cardboard SDK כדי להפוך טלפון נייד לפלטפורמת VR. מכשיר נייד יכול להציג סצנות תלת-ממדיות עם עיבוד סטריאוסקופי, לעקוב אחרי תנועות הראש ולהגיב להן, ולקיים אינטראקציה עם אפליקציות על ידי זיהוי מתי המשתמש לוחץ על לחצן הצפייה.
כדי להתחיל, תשתמשו ב-HelloCardboard, משחק הדגמה שמציג את התכונות העיקריות של Cardboard SDK. במשחק, המשתמשים מסתכלים מסביב לעולם וירטואלי כדי למצוא ולאסוף אובייקטים. המדריך הזה מסביר איך:
- הגדרת סביבת הפיתוח
- הורדה ובנייה של אפליקציית ההדגמה
- סריקת קוד ה-QR של משקפי Cardboard כדי לשמור את הפרמטרים שלהם
- מעקב אחרי תנועות הראש של המשתמש
- עיבוד תמונות סטריאוסקופיות על ידי הגדרת העיוות הנכון לכל עין
- הפעלה והשבתה של מצב VR
הגדרת סביבת הפיתוח
דרישות התוכנה:
- Unity 6000.0.23f1 ואילך
- חשוב לוודא שכוללים את התמיכה ב-Build של Android ו-iOS במהלך ההתקנה.
- חשוב להתקין את גרסת התיקון 23f1 ואילך.
- צריך להתקין את Git ולוודא שקובץ ההפעלה
git
מופיע במשתנה הסביבהPATH
. פרטים נוספים זמינים במסמכי התיעוד בנושא תמיכה ב-git במנהל החבילות של Unity.
ייבוא ה-SDK ויצירת פרויקט חדש
כדי לייבא את Unity SDK וליצור פרויקט חדש, פועלים לפי השלבים הבאים.
- פותחים את Unity ויוצרים פרויקט חדש מסוג 3D.
- ב-Unity, עוברים אל Window (חלון) > Package Manager (מנהל החבילות).
- לוחצים על + ובוחרים באפשרות הוספת חבילה מכתובת URL של git.
- מדביקים את
https://github.com/googlevr/cardboard-xr-plugin.git
בשדה להזנת טקסט.
החבילה צריכה להתווסף לחבילות המותקנות. - עוברים לחבילה Google Cardboard XR Plugin for Unity. בקטע Samples, בוחרים באפשרות Import into Project.
הנכסים לדוגמה צריכים להיטען אלAssets/Samples/Google Cardboard/<version>/Hello Cardboard
.
הגדרת סצנה ב-HelloCardboard
- עוברים אל
Assets/Samples/Google Cardboard/<version>/Hello Cardboard/Scenes
, בוחרים באפשרות Add Open Scenes (הוספת סצנות פתוחות) ובוחרים באפשרות HelloCardboard כדי לפתוח את סצנת הדוגמה. - פותחים את התפריט שכבות ובוחרים באפשרות עריכת שכבות....
- מגדירים שכבה חדשה בשם Interactive.
- לוחצים על אובייקט המשחק Treasure כדי לפתוח את חלון Inspector. מגדירים את השכבה שלו כ'אינטראקטיבית'. אם מופיע חלון קופץ עם השאלה אם רוצים להגדיר את השכבה כאינטראקטיבית גם לכל אובייקטי הבן, לוחצים על 'כן, שינוי אובייקטי הבן'.
- לוחצים על GameObject Player > Camera > CardboardReticlePointer כדי לפתוח את חלון Inspector. בתסריט Cardboard reticle pointer (סמן של כוונת ב-Cardboard), בוחרים באפשרות Interactive (אינטראקטיבי) בתור Reticle Interaction Layer Mask (מסכת שכבת האינטראקציה של הכוונת).
הגדרת הגדרות build ב-Android
עוברים אל File (קובץ) > Build Settings (הגדרות Build).
- בוחרים באפשרות Android ולוחצים על החלפת פלטפורמה.
- בוחרים באפשרות הוספת סצנות פתוחות ובוחרים באפשרות HelloCardboard.
הגדרות הנגן
עוברים אל עריכה > הגדרות הפרויקט....
קביעת ההגדרות של הרזולוציה וההצגה
עוברים אל Player (נגן) > Resolution and Presentation (רזולוציה והצגה).
- מגדירים את כיוון ברירת המחדל ללרוחב משמאל או ללרוחב מימין.
- משביתים את האפשרות אופטימיזציה של קצב הפריימים.
קביעת הגדרות אחרות
עוברים אל Player > Other Settings (נגן > הגדרות אחרות).
- בוחרים באפשרות
OpenGLES2
,OpenGLES3
אוVulkan
, או בכל שילוב שלהן בממשקי API של גרפיקה. - בוחרים באפשרות
Android 8.0 'Oreo' (API level 26)
ואילך ברמת ה-API המינימלית. - בוחרים באפשרות
API level 35
ומעלה ברמת ה-API לטירגוט. - בוחרים באפשרות
IL2CPP
בScripting Backend. - בוחרים את הארכיטקטורות הרצויות על ידי בחירה באפשרות
ARMv7
,ARM64
או בשתיהן בארכיטקטורות יעד. - בוחרים באפשרות
Require
בקטע גישה לאינטרנט. - לוחצים על
Input System Package (New)
בטיפול פעיל בקלט. - מציינים את הדומיין של החברה בשדה שם החבילה.
- אם נבחר
Vulkan
בתור Graphics API:- מבטלים את הסימון בתיבה Apply display rotation during rendering (החלת סיבוב המסך במהלך הרינדור) ב-Vulkan Settings (הגדרות Vulkan).
- בוחרים באפשרות
ETC2
בפורמט דחיסה של טקסטורה.
- בוחרים באפשרות
Activity
ומבטלים את הסימון שלGameActivity
בApplication Entry Point.
קביעת הגדרות פרסום
עוברים אל Player > Publishing Settings.
- בקטע Build, בוחרים באפשרות
Custom Main Gradle Template
ואז באפשרותCustom Gradle Properties Template
. מוסיפים את השורות הבאות לקטע dependencies (יחסי תלות) בקובץ
Assets/Plugins/Android/mainTemplate.gradle
:implementation 'androidx.appcompat:appcompat:1.6.1' implementation 'com.google.android.gms:play-services-vision:20.1.3' implementation 'com.google.android.material:material:1.12.0' implementation 'com.google.protobuf:protobuf-javalite:3.19.4'
מוסיפים את השורות הבאות לקובץ
Assets/Plugins/Android/gradleTemplate.properties
:android.enableJetifier=true android.useAndroidX=true
הגדרת ההגדרות של XR Plug-in Management (ניהול פלאגינים של XR)
עוברים אל XR Plug-in Management (ניהול תוספים של XR).
- בוחרים באפשרות
Cardboard XR Plugin
בקטע ספקי תוספים.
בניית הפרויקט
עוברים אל File (קובץ) > Build Settings (הגדרות Build).
- בוחרים באפשרות Build (בנייה), או בוחרים מכשיר ואז באפשרות Build and Run (בנייה והרצה).
הגדרת הגדרות הפרויקט ב-iOS
עוברים אל File (קובץ) > Build Settings (הגדרות Build).
- בוחרים באפשרות iOS ואז באפשרות החלפת פלטפורמה.
- בוחרים באפשרות הוספת סצנות פתוחות ובוחרים באפשרות HelloCardboard.
הגדרות הנגן
עוברים אל עריכה > הגדרות הפרויקט....
קביעת ההגדרות של הרזולוציה וההצגה
עוברים אל Player (נגן) > Resolution and Presentation (רזולוציה והצגה).
- מגדירים את כיוון ברירת המחדל ללרוחב משמאל או ללרוחב מימין.
קביעת הגדרות אחרות
עוברים אל Player > Other Settings (נגן > הגדרות אחרות).
- בקטע תיאור השימוש במצלמה, כותבים
Cardboard SDK requires camera permission to read the QR code (required to get the encoded device parameters).
. - בשדה גרסת המינימום של iOS, כותבים
12.0
. - מציינים את הדומיין של החברה בשדה שם החבילה.
- מסמנים את האפשרויות
Top Edge
,Left Edge
ו-Right Edge
בקטע השהיית תנועות המערכת בקצוות.
הגדרת ההגדרות של XR Plug-in Management (ניהול פלאגינים של XR)
עוברים אל XR Plug-in Management (ניהול תוספים של XR).
- בוחרים באפשרות
Cardboard XR Plugin
בקטע ספקי תוספים.
בניית הפרויקט
עוברים אל File (קובץ) > Build Settings (הגדרות Build).
- בוחרים באפשרות Build (בנייה) או Build and Run (בנייה והרצה).
מרכוז מחדש
Cardboard SDK מאפשר לכם למרכז מחדש את מעקב הראש באמצעות Recenter()
.
כדי לנסות את התכונה באמצעות האפליקציה לדוגמה:
- מזיזים את המכשיר למיקום שרוצים למרכז מחדש (משתמשים בתנוחה חדשה של הראש כשמסתכלים קדימה).
- מחזיקים את ההדק של מכשיר Cardboard למשך שלוש שניות לפחות.
- משחררים את הטריגר.
- הפוזה הראשונית מוצגת עכשיו בכיוון שאליו המצלמה מכוונת.
הפעלה והשבתה של מצב VR
ממשק ה-API של Unity XR Plugin Management מאפשר להפעיל או להשבית את מצב VR עבור Google Cardboard XR Plugin for Unity. מסמכי משתמש קצה ודוגמאות לשימוש זמינים במסמכי משתמש הקצה של Unity.
הסצנה VrMode בדוגמה HelloCardboard מציגה שימוש בסיסי ב-API שצוין למעלה. בסצנה הזו, אפשר להשבית את מצב VR בלחיצה על יציאה
, ולהפעיל אותו שוב בלחיצה על כל מקום במסך. פרטים על אופן הביצוע מופיעים בקובץ VrModeController.cs.
השלבים הבאים
- מעיינים בהנחיות המיתוג של Cardboard.