L'API Lighting Estimation fournit des données détaillées qui vous permettent d'imiter différents indicateurs d'éclairage lorsque vous affichez des objets virtuels. ARCore est compatible avec trois modes d'estimation de la luminosité:
Prérequis
Assurez-vous de bien maîtriser les concepts fondamentaux de la RA. et comment configurer une session ARCore avant de continuer.
Activer l'estimation de l'éclairage
Suivez les étapes ci-dessous pour activer l'estimation de la luminosité dans votre application.
- Configurez un projet AR Foundation ou un projet d'extensions ARCore.
- Dans l'onglet Hierarchy, accédez à XR Session Origin > AR Camera.
- Sous le composant AR Camera Manager, sélectionnez Light Estimation.
- Dans le menu déroulant Light Estimation, sélectionnez le ou les modes que vous souhaitez utiliser.
Activer le mode HDR environnemental
Le mode HDR de l'environnement permet d'activer les paramètres d'estimation de la luminosité suivants:
- Direction du voyant principal
- Intensité de la lumière principale
- Harmonique sphérique ambiante
Ce mode est automatiquement activé lorsque les critères suivants sont remplis:
- Les Harmoniques sphériques ambiantes, la direction de la lumière principale et/ou l'intensité de la lumière principale sont sélectionnées dans le mode d'estimation de la lumière fourni par le gestionnaire de l'appareil photo de RA.
- Les vérifications d'environnement sont activées dans un
AREnvironmentProbeManager
. - Une configuration de caméra compatible est sélectionnée
Activer le mode Intensité ambiante
L'estimation de la luminosité de base est automatiquement activée lorsque le mode Intensité ambiante est sélectionné dans le composant ARCameraManager
.
Le mode Intensité ambiante active les paramètres d'estimation de la luminosité suivants:
- Couleur ambiante
- Intensité ambiante
Utiliser les informations d'éclairage dans votre scène
Une fois que vous avez obtenu les paramètres d'éclairage corrects, vous pouvez éclairer les objets virtuels de la scène comme s'ils faisaient partie du monde réel.
Le composant ARCameraManager
peut déclencher un événement frameReceived
qui estime les conditions d'éclairage des images lorsque l'estimation de la luminosité est activée. Les informations des événements frameReceived
sont stockées dans des structures ARCameraFrameEventArgs
en tant que ARLightEstimationData
.
Pour modifier les paramètres d'un système d'éclairage au moment de l'exécution, procédez comme suit :
- Créez ou modifiez la lumière directionnelle existante dans votre scène.
Associez un nouveau script à l'éclairage directionnel.
// Sample Lighting Estimation script Light light; void Awake () { light = GetComponent<Light>(); } void OnEnable() { if (cameraManager != null) cameraManager.frameReceived += FrameChanged; } void OnDisable() { if (cameraManager != null) cameraManager.frameReceived -= FrameChanged; } void FrameChanged(ARCameraFrameEventArgs args) { // Modify `light` parameters using ARCameraFrameEventArgs. }
Modifiez ce nouveau script pour détecter les changements d'éclairage. Pour savoir comment procéder, consultez les scripts Unity
BasicLightEstimation.cs
etHDRLightEstimation.cs
.
Utiliser des vérifications d'environnement dans votre scène
Suivez ces étapes pour activer les vérifications d'environnement dans votre scène.
- Activez le placement automatique dans l'
ARSessionOrigin
de votre scène. - Ajoutez un composant
AREnvironmentProbeManager
auARSessionOrigin
.