Cambia el aspecto de tu contenido según el tipo de pantalla

Dispositivos de realidad extendida correspondientes
Esta guía te ayuda a crear experiencias para estos tipos de dispositivos de realidad extendida.
Visores de realidad extendida
Lentes de realidad extendida con cable
Lentes con audio y
pantalla

Los diferentes tipos de dispositivos tienen distintos tipos de características de pantalla. Tu app puede verificar las características de la pantalla del dispositivo en el que se ejecuta para adaptar el contenido y asegurarse de que se muestre de la mejor manera posible.

Los tipos de modos de fusión de pantalla

Un valor DisplayBlendMode describe cómo se superponen las imágenes sobre el mundo real. La tecnología de visualización cambia radicalmente la forma en que el contenido digital se combina con el mundo físico.

Combinación aditiva

Cuando el modo de fusión de pantalla actual es ADDITIVE, los píxeles negros aparecen transparentes. Suelen usarlo los dispositivos con lentes transparentes que permiten que el entorno del usuario pase directamente a sus ojos. El dispositivo solo puede agregar más luz a la superficie.

En concreto, esto significa que el contenido virtual se agrega al mundo real sumando los valores de píxeles de cada uno de los componentes rojo, verde y azul. Se ignora el canal alfa, y los píxeles negros aparecen transparentes.

Combinación alfa

Cuando el modo de combinación de pantalla actual es ALPHA_BLEND, el contenido virtual se agrega al mundo real mediante la combinación alfa de los valores de píxeles según el componente alfa. Este es el caso de los visores de RE, que usan una pantalla opaca para renderizar el contenido. Se puede controlar el brillo de cada píxel y se puede configurar para que aparezcan negros. Según el entorno espacial activo, estos píxeles pueden representar el mundo real a través de una transmisión de la cámara o un entorno digital.

No se muestra

Cuando el modo de combinación de pantalla actual es NO_DISPLAY, el dispositivo no puede mostrar ningún píxel.

Obtén el DisplayBlendMode actual

Para verificar el DisplayBlendMode activo, usa XrDevice.getPreferredDisplayBlendMode:

val preferredDisplayBlendMode =
    XrDevice.getCurrentDevice(session).getPreferredDisplayBlendMode()
when (preferredDisplayBlendMode) {
    ADDITIVE -> {
        // Virtual content is added to the real world by adding the pixel values for each of
        // Red, Green, and Blue components. Alpha is ignored. Black pixels will appear transparent.
    }

    ALPHA_BLEND -> {
        // Virtual content is added to the real world by alpha blending the pixel values based
        // on the Alpha component.
    }

    NO_DISPLAY -> {
        // Device doesn't have a display.
    }
}

Más información