L'API Lighting Estimation fournit des données détaillées qui vous permettent d'imiter différents signaux d'éclairage lors du rendu d'objets virtuels. ARCore prend en charge trois modes d'estimation de la luminosité:
Conditions préalables
Assurez-vous de bien comprendre les concepts fondamentaux de la RA et de configurer une session ARCore avant de continuer.
Activer l'estimation de l'éclairage
Suivez ces étapes pour activer l'estimation de l'éclairage 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 active les paramètres d'estimation de la luminosité suivants:
- Direction de la lumière principale
- Intensité de la lumière principale
- Harmoniques sphériques ambiantes
Ce mode est activé automatiquement lorsque les critères suivants sont remplis:
- Les harmoniques sphériques ambiantes, la direction de la lumière principale et/ou l'intensité de l'éclairage principal sont sélectionnées dans le mode Estimation de la luminosité fourni par le gestionnaire de caméras RA.
- Les vérifications d'environnement sont activées dans un
AREnvironmentProbeManager
. - Vous devez sélectionner une configuration de caméra compatible.
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 suivants d'estimation de la luminosité:
- Couleur ambiante
- Intensité ambiante
Utiliser les informations d'éclairage dans votre scène
Une fois que vous avez réglé correctement l'éclairage, vous pouvez éclairer les objets virtuels dans votre 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 l'éclairage est activée. Les informations des événements frameReceived
sont stockées dans des structs ARCameraFrameEventArgs
sous forme de ARLightEstimationData
.
Suivez ces étapes pour modifier les paramètres d'une lumière au moment de l'exécution.
- Créez ou modifiez la lumière directionnelle existante dans votre scène.
Joignez 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. }
Modifie ce nouveau script pour détecter les changements d'éclairage. Pour obtenir des exemples, consultez les scripts Unity
BasicLightEstimation.cs
etHDRLightEstimation.cs
.
Utiliser des vérifications d'environnement dans votre environnement
Suivez cette procédure pour activer les vérifications d'environnement dans votre environnement.
- Activez le placement automatique dans le
ARSessionOrigin
de la scène. - Ajoutez un composant
AREnvironmentProbeManager
auARSessionOrigin
.