Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(547)

Side by Side Diff: device/vr/android/cardboard/cardboard_vr_device.cc

Issue 2029703002: Moving VR service from /content/browser to /device (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/browser/vr/android/cardboard/cardboard_vr_device.h" 5 #include "device/vr/android/cardboard/cardboard_vr_device.h"
6 6
7 #include <math.h> 7 #include <math.h>
8 #include <algorithm> 8 #include <algorithm>
9 9
10 #include "base/android/context_utils.h" 10 #include "base/android/context_utils.h"
11 #include "base/android/jni_android.h" 11 #include "base/android/jni_android.h"
12 #include "base/android/jni_array.h" 12 #include "base/android/jni_array.h"
13 #include "base/android/jni_string.h" 13 #include "base/android/jni_string.h"
14 #include "base/strings/string_util.h" 14 #include "base/strings/string_util.h"
15 #include "base/strings/utf_string_conversions.h" 15 #include "base/strings/utf_string_conversions.h"
16 #include "base/time/time.h" 16 #include "base/time/time.h"
17 #include "base/trace_event/trace_event.h" 17 #include "base/trace_event/trace_event.h"
18 #include "jni/CardboardVRDevice_jni.h" 18 #include "jni/CardboardVRDevice_jni.h"
19 #include "ui/gfx/transform.h" 19 #include "ui/gfx/transform.h"
20 #include "ui/gfx/transform_util.h" 20 #include "ui/gfx/transform_util.h"
21 21
22 using base::android::AttachCurrentThread; 22 using base::android::AttachCurrentThread;
23 23
24 namespace content { 24 namespace device {
25 25
26 bool CardboardVRDevice::RegisterCardboardVRDevice(JNIEnv* env) { 26 bool CardboardVRDevice::RegisterCardboardVRDevice(JNIEnv* env) {
27 return RegisterNativesImpl(env); 27 return RegisterNativesImpl(env);
28 } 28 }
29 29
30 CardboardVRDevice::CardboardVRDevice(VRDeviceProvider* provider) 30 CardboardVRDevice::CardboardVRDevice(VRDeviceProvider* provider)
31 : VRDevice(provider) { 31 : VRDevice(provider) {
32 JNIEnv* env = AttachCurrentThread(); 32 JNIEnv* env = AttachCurrentThread();
33 j_cardboard_device_.Reset(Java_CardboardVRDevice_create( 33 j_cardboard_device_.Reset(Java_CardboardVRDevice_create(
34 env, base::android::GetApplicationContext())); 34 env, base::android::GetApplicationContext()));
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
78 // Cardboard devices always assume a mirrored FOV, so this is just the left 78 // Cardboard devices always assume a mirrored FOV, so this is just the left
79 // eye FOV with the left and right degrees swapped. 79 // eye FOV with the left and right degrees swapped.
80 right_eye->fieldOfView = blink::mojom::VRFieldOfView::New(); 80 right_eye->fieldOfView = blink::mojom::VRFieldOfView::New();
81 right_eye->fieldOfView->upDegrees = fov[0]; 81 right_eye->fieldOfView->upDegrees = fov[0];
82 right_eye->fieldOfView->downDegrees = fov[1]; 82 right_eye->fieldOfView->downDegrees = fov[1];
83 right_eye->fieldOfView->leftDegrees = fov[3]; 83 right_eye->fieldOfView->leftDegrees = fov[3];
84 right_eye->fieldOfView->rightDegrees = fov[2]; 84 right_eye->fieldOfView->rightDegrees = fov[2];
85 85
86 float ipd = Java_CardboardVRDevice_getIpd(env, j_cardboard_device_.obj()); 86 float ipd = Java_CardboardVRDevice_getIpd(env, j_cardboard_device_.obj());
87 87
88 left_eye->offset= mojo::Array<float>::New(3); 88 left_eye->offset = mojo::Array<float>::New(3);
89 left_eye->offset[0] = ipd * -0.5f; 89 left_eye->offset[0] = ipd * -0.5f;
90 left_eye->offset[1] = 0.0f; 90 left_eye->offset[1] = 0.0f;
91 left_eye->offset[2] = 0.0f; 91 left_eye->offset[2] = 0.0f;
92 92
93 right_eye->offset = mojo::Array<float>::New(3); 93 right_eye->offset = mojo::Array<float>::New(3);
94 right_eye->offset[0] = ipd * 0.5f; 94 right_eye->offset[0] = ipd * 0.5f;
95 right_eye->offset[1] = 0.0f; 95 right_eye->offset[1] = 0.0f;
96 right_eye->offset[2] = 0.0f; 96 right_eye->offset[2] = 0.0f;
97 97
98 ScopedJavaLocalRef<jintArray> j_screen_size(env, env->NewIntArray(2)); 98 ScopedJavaLocalRef<jintArray> j_screen_size(env, env->NewIntArray(2));
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
147 pose->position[2] = decomposed_transform.translate[2]; 147 pose->position[2] = decomposed_transform.translate[2];
148 148
149 return pose; 149 return pose;
150 } 150 }
151 151
152 void CardboardVRDevice::ResetPose() { 152 void CardboardVRDevice::ResetPose() {
153 Java_CardboardVRDevice_resetSensor(AttachCurrentThread(), 153 Java_CardboardVRDevice_resetSensor(AttachCurrentThread(),
154 j_cardboard_device_.obj()); 154 j_cardboard_device_.obj());
155 } 155 }
156 156
157 } // namespace content 157 } // namespace device
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698