How To Create Vr Content For Google Cardboard
This guide shows you how to use the Google Cardboard XR Plugin for Unity for Unity to create your own Virtual Reality (VR) experiences.
You can use the Cardboard SDK to turn a smartphone into a VR platform. A smartphone can display 3D scenes with stereoscopic rendering, track and react to head movements, and interact with apps by detecting when the user presses the viewer button.
To get started, you'll use HelloCardboard, a demo game that demonstrates the core features of the Cardboard SDK. In the game, users look around a virtual world to find and collect objects. It shows you how to:
- Set up your development environment
- Download and build the demo app
- Scan the QR code of a Cardboard viewer to save its parameters
- Track the user's head movements
- Render stereoscopic images by setting the correct distortion for each eye
- Turn VR mode on and off
Set up your development environment
Software requirements:
- Unity 2019.4.25f1 or later
- Make sure to include Android and iOS Build Support during installation.
- Git must be installed and the
git
executable must be on thePATH
environment variable. See Unity's package manager git support docs for more details.
Import the SDK and create a new project
Follow these steps to import the Unity SDK and create a new project.
- Open Unity and create a new 3D project.
- In Unity, go to Window > Package Manager.
- Click + and select Add package from git URL.
- Paste
https://github.com/googlevr/cardboard-xr-plugin.git
into the text entry field.
The package should be added to the installed packages. - Navigate to the Google Cardboard XR Plugin for Unity package. In the Samples section, choose Import into Project.
The sample assets should be loaded intoAssets/Samples/Google Cardboard/<version>/Hello Cardboard
. - Navigate to
Assets/Samples/Google Cardboard/<version>/Hello Cardboard/Scenes
, select Add Open Scenes, and choose HelloCardboard to open the sample scene.
Configuring Android project settings
Navigate to File > Build Settings.
- Select Android and choose Switch Platform.
- Select Add Open Scenes and choose HelloCardboard.
Player Settings
Resolution and Presentation
Navigate to Project Settings > Player > Resolution and Presentation.
- Set the Default Orientation to Landscape Left or Landscape Right.
- Disable Optimized Frame Pacing.
Other Settings
Navigate to Project Settings > Player > Other Settings.
- Choose
OpenGLES2
, orOpenGLES3
, or both in Graphics APIs. - Select
IL2CPP
in Scripting Backend. - Select desired architectures by choosing
ARMv7
,ARM64
, or both in Target Architectures. - Select
Require
in Internet Access. - Specify your company domain under Package Name.
Publishing Settings
Navigate to Project Settings > Player > Publishing Settings.
- In the Build section, select
Custom Main Gradle Template
andCustom Gradle Properties Template
. -
Add the following lines to the dependencies section of
Assets/Plugins/Android/mainTemplate.gradle
:implementation 'androidx.appcompat:appcompat:1.0.0' implementation 'androidx.constraintlayout:constraintlayout:1.1.3' implementation 'com.google.android.gms:play-services-vision:15.0.2' implementation 'com.google.android.material:material:1.0.0' implementation 'com.google.protobuf:protobuf-javalite:3.10.0'
-
Add the following lines to
Assets/Plugins/Android/gradleTemplate.properties
:android.enableJetifier=true android.useAndroidX=true
If Target API Level is set to API Level 29
or Automatic (highest installed)
(resulting in API Level 29), the following steps are also required:
- Select 'Custom Main Manifest' in the Build section.
-
Add the following attribute to the
application
tag ofAssets/Plugins/Android/AndroidManifest.xml
:<application android:requestLegacyExternalStorage="true" ... > ... </application>
XR Plug-in Management Settings
Navigate to Project Settings > XR Plug-in Management.
- Select
Cardboard XR Plugin
under Plug-in Providers.
Build your project
Navigate to File > Build Settings.
- Select Build, or choose a device and select Build and Run.
Configuring iOS project settings
Navigate to File > Build Settings.
- Select iOS and choose Switch Platform.
- Select Add Open Scenes and choose HelloCardboard.
Player Settings
Resolution and Presentation
Navigate to Project Settings > Player > Resolution and Presentation.
- Set the Default Orientation to Landscape Left or Landscape Right.
Other Settings
Navigate to Project Settings > Player > Other Settings.
- Disable the Auto Graphics API option.
- Choose
OpenGLES2
, orOpenGLES3
, orMetal
, or any combination of them in Graphics APIs. - In Camera Usage Description, write
Cardboard SDK requires camera permission to read the QR code (required to get the encoded device parameters).
. - In Target minimum iOS Version, write
12.0
. - Specify your company domain under Package Name.
XR Plug-in Management Settings
Navigate to Project Settings > XR Plug-in Management.
- Select
Cardboard XR Plugin
under Plug-in Providers.
Build your project
Navigate to File > Build Settings.
- Select Build or Build and Run.
Recentering
The Cardboard SDK allows you to recenter the head tracker using Recenter()
.
Follow these steps to try it out using the sample application:
- Move the device to the position you want to recenter (use as new looking forward head pose).
- Hold the trigger of your Cardboard device active for at least three seconds.
- Release the trigger.
- The initial pose is now in the direction the camera is pointing.
Turning VR mode on and off
The Unity XR Plugin Management API lets you turn VR mode on or off for the Google Cardboard XR Plugin for Unity. End-user documentation and usage examples are available in Unity's End-user documentation.
The VrMode scene in HelloCardboard sample shows a basic usage of the aformentioned API. In this scene, VR mode can be turned off by tapping exit , and can be turned on again just by tapping anywhere on the screen. Check VrModeController.cs for details about how this is performed.
Next steps
- Review the Cardboard branding guidelines.
How To Create Vr Content For Google Cardboard
Source: https://developers.google.com/cardboard/develop/unity/quickstart
Posted by: burtonegary1949.blogspot.com
0 Response to "How To Create Vr Content For Google Cardboard"
Post a Comment