问题
what makes the ARCore supported device supports ARCore? Which Features Makes This Device Support ArCore? What is difference between ARCore Device And Other non Supported Device?
回答1:
What happens is not about how new the mobile is, but if this mobile had some tests and mesures when it was design and build.
- What it means, you cellphone today need some hardware like:
Accelerometer: measures acceleration, which is change in speed divided by time. Simply put, it’s the measure of change in velocity. Acceleration forces can be static/continuous—like gravity—or dynamic, such as movement or vibrations.
Gyroscope: measures and/or maintains orientation and angular velocity. When you change the rotation of your phone while using an AR experience, the gyroscope measures that rotation and ARCore ensures that the digital assets respond correctly.
Phone Camera: with mobile AR, your phone camera supplies a live feed of the surrounding real world upon which AR content is overlaid. In addition to the camera itself, ARCore-capable phones like the Google Pixel rely on complementary technologies like machine learning, complex image processing, and computer vision to produce high-quality images and spatial maps for mobile AR.
Magnetometer: gives smartphones a simple orientation related to the Earth's magnetic field. Because of the magnetometer, your phone always knows which direction is North, allowing it to auto-rotate digital maps depending on your physical orientation. This device is key to location-based AR apps.
GPS: a global navigation satellite system that provides geolocation and time information to a GPS receiver, like in your smartphone. For ARCore-capable smartphones, this device helps enable location-based AR apps.
Display: the display on your smartphone is important for crisp imagery and displaying 3D rendered assets. For instance, Google Pixel XL’s display specification is 5.5" AMOLED QHD (2560 x 1440) 534ppi display, which means that the phone can display 534 pixels per inch—making for rich, vivid images.
You can find this information and more on the Introduction to Augmented Reality and ARCore by Google AR & VR
回答2:
In order to get AR experience, ARCore-compatible device must have 4 sensors:
- Accelerometer
- Gyroscope
- Back RGB Camera
- Magnetometer (it'll be supported in the future)
If your smartphone doesn't have a gyroscope (or it has a virtual gyroscope) that measures an orientation (rotation) in space – your Android device is considered as ARCore-incompatible. Every ARCore-compatible device must fulfil 3D tracking using 6 degrees of freedom (XYZ position and XYZ rotation).
When you're developing AR apps for Google Play Store you should write a code that checks that ARCore compatibility.
How to perform runtime checks.
Check whether ARCore is supported (for AR Optional apps only).
AR Optional apps can use
ArCoreApk.checkAvailability()
to determine if the current device supports ARCore. On devices that do not support ARCore, AR Optional apps should disable AR related functionality and hide associated UI elements:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Enable AR related functionality on ARCore supported devices only.
maybeEnableArButton();
}
void maybeEnableArButton() {
ArCoreApk.Availability availability = ArCoreApk.getInstance().checkAvailability(this);
if (availability.isTransient()) {
// Re-query at 5Hz while compatibility is checked in the background.
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
maybeEnableArButton();
}
}, 200);
}
if (availability.isSupported()) {
mArButton.setVisibility(View.VISIBLE);
mArButton.setEnabled(true);
// indicator on the button.
} else { // Unsupported or unknown.
mArButton.setVisibility(View.INVISIBLE);
mArButton.setEnabled(false);
}
}
回答3:
AR core requires devices with 6 Degrees of freedom , unsupported devices usually have 3 degrees of freedom (DOF).
来源:https://stackoverflow.com/questions/52566166/why-arcore-supported-device-limited