Step-by-step instructions
Select a smartphone
To create a viewer profile, you’ll need a suitable smartphone for viewing the lens calibration VR scene. Samsung Galaxy S6 (Android) and Apple iPhone 6 Plus (iOS) are recommended.
If you are using a different smartphone, ensure it meets minimal requirements:
- The smartphone should have the Google Chrome 44+ browser on Android, or Mobile Safari 8+ browser on iOS.
- The smartphone screen should be bigger than the total visible screen area (i.e. bigger than the smartphone screen facing apertures) on your viewer.
This phone’s screen is not large enough for viewer profile creation: | This phone has a large enough screen for viewer profile creation: |
View the VR calibration scene on your smartphone
To begin calibrating your viewer profile, open the viewer profile generator on your desktop browser. Scan the QR code on the tool’s homepage using a smartphone:
When the VR calibration scene opens on your phone, tap the screen once to show it in full screen. If you see a popup that says "Mobile device display properties unknown", then the phone cannot be used for calibration because the physical screen size info is unavailable.
With the scene displayed full-screen on your smartphone, insert the smartphone into your viewer. Proceed to the next step to continue calibrating your viewer profile.
Enter details in viewer profile generator tool
In the viewer profile generator on your desktop, begin entering the requested details.
Company and viewer details
Enter the company and viewer names that will be visible to the users during the viewer "pairing" and other flows in Google Cardboard-compatible apps
Enter input parameters
Enter information about your viewer's input parameters into the viewer profile generator on your desktop.
Primary button types
Describe the Primary button type on your device:
Primary button types include:- NONE - Your device has no inputs and the smartphone screen is not accessible. Similarly, choose NONE if your device has a separate Bluetooth controller and no other built-in inputs.
- TOUCH - No inputs, but the user can touch the smartphone screen with the finger without taking the phone out of the viewer.
- INDIRECT_TOUCH - A mechanical input which is ultimately registered as a screen touch, but the user's finger is not touching the screen directly.
- MAGNET - A Google Cardboard-like magnetic input. We no longer recommend magnet based inputs as they tend to work less reliably than e.g. conductive or capacitive inputs due to magnetometer variance within smartphones. Moving forward, we will not be certifying or featuring viewers with magnet inputs and support within future versions of Cardboard apps will be limited.
Enter physical viewer parameters
Describe the physical viewer parameters so that the phones can render VR viewports at the correct positions on the screen. Make sure that your parameters are correct using the lens calibration VR scene that is currently open on your smartphone.
You can use the "arrow up" and "arrow down" keys on your keyboard to fine tune any numerical values in the form.
Measure the distance between the smartphone screen and the lenses of your viewer using a ruler or a caliper, and enter the distance in millimeters into the "Screen to lens distance (mm)" field.
If your viewer comes with an adjustable inter-lens distance to accommodate varying IPDs, measure the average distance between the screen and the lenses.
Measure the distance between the centers of your viewer's lenses using a ruler or a caliper, and enter this distance in millimeters into the "Inter-lens distance (mm)" field.
If your viewer comes with an adjustable inter-lens distance to accommodate varying IPDs, measure the average distance between the screen and the lenses.
After measuring and entering the inter-lens distance into the viewer profile form, ensure that your eyes can clearly converge on red lens center markers in the scene. Here are a couple of criteria that can help you to determine whether the inter-lens distance is entered correctly:
- Correct inter-lens distance: When viewed in your VR headset, the red lens center markers appear sharp and clear. Your eyes are able to converge on the lens center markers in a relaxed state, and you do not feel eye strain when converging on the markers.
- The inter-lens distance should be equal to the distance between the lens center markers when measured with a ruler or a caliper.
- Incorrect inter-lens distance: When viewing in your VR headset, the lens center markers might appear blurry or duplicated. In extreme cases, you might be seeing two separate lens separate markers instead of one.
- If this is the case, re-measure the inter-lens distance on your physical viewer and readjust the values in the "Inter-lens distance" field.
Choose whether the smartphone screen is aligned to the bottom or to the top of your viewer when the smartphone is inserted, or whether the smartphone is always vertically centered with respect to lenses.
Here are more detailed explanations for different screen vertical alignment options:
- BOTTOM: Choose this option if a smartphone is always aligned with the bottom plane of your viewer when fully inserted, or if the viewer attaches to the bottom of the phone.
This option applies for most viewers, including the original Google Cardboard. - TOP: Choose this option if the smartphone is aligned with the top plane of your viewer when fully inserted, or if the viewer attaches to the top of the phone.
- CENTER: Choose this option if the center of the smartphone screen is always vertically aligned with the center of the lenses in your viewer.
If you chose "BOTTOM" or "TOP" options for "Screen vertical alignment", measure the tray to lens-center distance from the bottom/top of your viewer planes respectively and enter it into the "Tray to lens-center distance (mm)" field.
To ensure that you have entered the screen vertical distance correctly, verify that the red markers appear in the vertical center of the visible field-of-view, when viewed through your VR headset.
Here are a couple of criteria that can help you to determine whether the tray to lens center distance is entered correctly:
- Correct tray to lens center distance: when viewed in your VR headset, the red lens center marker appears vertically centered. (Verify this by viewing the scene with both eyes, and then closing one eye at a time).
- Incorrect tray to lens-center distance: When viewing in your VR headset, the lens center markers appear not centered vertically.
- Note: If this is the case, re-measure the tray to lens-center distance on your physical viewer, and make sure that you have chosen a correct "Screen vertical alignment" option.
Google Cardboard SDKs for Unity and Android can automatically correct for the radial lens distortion. The typical lenses used for mobile VR headsets exhibit pincushion distortion:
This type of radial distortion can be corrected using Brown's distortion model:
This type of radial distortion can be corrected using Brown's distortion model:
where is the distorted image point, is the undistorted image point, is the distortion center (principal point), and is the distortion coefficient.
Google Cardboard SDKs approximate the ideal distortion model by exposing and coefficients.
If you know your lens distortion k1 and k2 coefficients, insert them into the "Distortion coefficients" field:
To empirically establish these coefficients or to double-check that the coefficients which you have entered are correct, open the VR scene on your smartphone as described above and insert it into your viewer. Adjust the coefficients until the scene looks correct.
If the coefficients are correct, the straight lines in the virtual world should still appear straight when you are looking at them through the lenses. Similarly, right (90°) angles should still appear as right angles when looking at them through the lenses. These conditions should hold both in the center of your field-of-view and in the periphery.
Here are a couple of criteria that can help you to determine whether the lens distortion coefficients are entered correctly:
- Correct coefficients: When viewed in your VR headset, all angles appear to be 90° and all the lines are straight.
- Incorrect coefficients: Lines do not appear straight or angles do not appear right at some parts of the field of view when viewing the scene in the VR headset.
To configure the advanced viewer parameters, select the checkbox "Advanced viewer parameters" at the top right corner of "Viewer parameters" form:
Within the advanced viewer parameters, you can configure the field-of-view for your left lens. However, changing the field-of-view angles results only in a slight rendering optimization on large screen size smartphones. For most viewers these fields should be set to 50° or more.
Also, within the advanced viewer parameters you can configure whether your viewer contains some embedded magnets. Selecting the magnet checkbox will inform all apps built using the Cardboard SDKs that the smartphone's magnetometer should not be used. Note: We strongly recommend that you refrain from using magnets. Viewers with magnet based input will not be certified moving forward.
Generate your profile
After completing details for each of the sections above, click on the "Generate Profile" button. The resulting page contains a generated viewer profile which you can use with Cardboard-compatible applications.
Verify your profile
To verify that the QR profile has been generated successfully:
- Open the Google Cardboard app
- Select the 3 dots button in the top right corner of the screen.
- Click on "Switch viewer"
- Scan the generated QR code.
If the profile generation went well, all of the Google Cardboard apps should now be adapted to work perfectly in your new VR viewer!
Before you close the tool, copy and paste the viewer profile URI (starts with http://google.com/cardboard/cfg?p=...) from the "Save or load viewer parameters" section to somewhere safe.
The viewer profile generator will persist the viewer profiles between the sessions, but the URI can be shared between your teammates and across multiple machines.