Que recherchez-vous ?
Hero background image
Ray tracing et effets de post-traitement pour les jeux PC et console

Il s'agit du cinquième d'une série d'articles qui explique comment les développeurs et les artistes techniques peuvent configurer et utiliser le pipeline de rendu haute définition (HDRP) dans Unity pour obtenir un réalisme graphique haut de gamme. Le HDRP représente une avancée technologique dans le rendu en temps réel de Unity, vous permettant de travailler avec la lumière exactement comme elle se comporte dans le monde réel.

N'oubliez pas de lire les autres articles de notre série de procédures sur l'éclairage haut de gamme :

Interface des remplacements de post-traitement
Post-traitement

Les graphiques haut de gamme modernes seraient incomplets sans post-traitement. Bien que nous ne puissions pas toujours « corriger le problème en post-production », il est difficile d'imaginer nos images rendues sans les filtres et les effets d'image plein écran qui les rendent plus cinématographiques. C'est pourquoi le HDRP est livré avec ses propres effets de post-traitement intégrés.

Le post-traitement HDRP utilise le système de volume pour appliquer les effets d'image à la caméra. Une fois que vous savez comment ajouter des remplacements, le processus d'application de post-effets supplémentaires devrait vous être familier.

Les remplacements de post-traitement pour contrôler la couleur et le contraste chevauchent parfois les fonctionnalités. Trouver les bonnes combinaisons peut nécessiter quelques essais et erreurs. Vous n'aurez pas besoin de tous les effets disponibles ; ajoutez simplement les remplacements nécessaires pour créer l'apparence souhaitée et ignorez le reste. Reportez-vous aux volumes dans l' exemple de scène pour un exemple d'utilisation.

ACES versus mappage de tons neutre
Mappage des tons

Le Tonemapping est une technique permettant de mapper les couleurs à plage dynamique élevée sur la plage dynamique plus limitée de votre écran. Cela peut améliorer le contraste et les détails de vos rendus.

Si vous souhaitez un look cinématographique, réglez le mode Tonemapping sur la norme industrielle ACES (Academy Color Encoding System). Pour quelque chose de moins saturé et contrasté, sélectionnez Neutre. Les utilisateurs expérimentés ont également la possibilité de choisir Personnalisé pour définir eux-mêmes la courbe de mappage des tons.

Sélecteur de couleurs ombres, tons moyens et reflets
Ombres, tons moyens, reflets

Le remplacement des ombres, des tons moyens et des hautes lumières contrôle la gamme de tons et de couleurs pour chacune des ombres, des tons moyens et des hautes lumières du rendu. Activez chaque trackball pour affecter la partie respective de l’image. Ensuite, utilisez les limites d’ombre et de surbrillance pour éviter l’écrêtage ou pousser la correction des couleurs trop loin.

Interface de remplacement de Bloom
Floraison

Bloom crée l’effet d’un saignement de lumière autour de la source lumineuse. Cela donne l'impression que la source de lumière est intensément brillante, comme si elle submergeait l'appareil photo.

Ajustez l' intensité et la dispersion pour modifier la taille et la luminosité de la floraison . Utilisez le seuil pour maintenir la netteté sur les pixels ternes ou non lumineux.

Lens Dirt, quant à lui, applique une texture de taches ou de poussière pour diffracter l'effet Bloom.

Interface de remplacement de la profondeur de champ
Profondeur de champ

La profondeur de champ simule les propriétés de mise au point d'un véritable objectif d'appareil photo.

Les objets proches ou éloignés de la distance de mise au point de l'appareil photo semblent flous. Vous pouvez définir la distance de mise au point à partir de :

  • Le remplacement du volume avec le mode de mise au point des plages manuelles : Ici, le volume lui-même contrôle la distance de mise au point. Par exemple, vous pouvez l'utiliser pour rendre la caméra intentionnellement floue en fonction de l'emplacement (par exemple, des scènes sous-marines).
  • Une caméra Cinemachine avec l' extension Paramètres de volume: Utilisez-le pour suivre et faire la mise au point automatique sur une cible.
  • Les propriétés de la caméra physique en mode de mise au point de la caméra physique : Utilisez ceci pour animer le paramètre Distance de mise au point à partir du composant Caméra.

Lorsque la profondeur de champ est active, un effet de flou flou appelé bokeh peut apparaître autour de n'importe quelle zone lumineuse de l'image. Modifiez la forme de l'ouverture de la caméra pour changer l'apparence du bokeh. Consultez la section sur les paramètres supplémentaires de la caméra physique de cette page de procédures sur l'anticrénelage, le volume et l'exposition.

Pour les cinématiques ou le rendu hors ligne, vous pouvez choisir une profondeur de champ plus coûteuse mais basée sur la physique pour activer des paramètres supplémentaires et une qualité personnalisée.

Interface Balance des blancs
Balance des blancs

Le remplacement de la balance des blancs ajuste la couleur d'une scène afin que la couleur blanche soit correctement rendue dans l'image finale. Vous pouvez appuyer sur la température pour passer du jaune (plus chaud) au bleu (plus froid), et sur la teinte pour ajuster la dominante de couleur entre le vert et le magenta.

Dans l'exemple de scène HDRP, les volumes locaux incluent des remplacements de balance des blancs pour chaque pièce.

Interface Courbes de couleurs
Courbes de couleurs

Utilisez les courbes de couleur pour ajuster des plages spécifiques de teinte, de saturationou de luminosité. Sélectionnez l’un des huit graphiques disponibles pour remapper votre couleur et votre contraste.

Curseurs de réglage des couleurs
Ajustements de couleur

Utilisez les options de réglage des couleurs pour modifier le ton général, la teinte, la saturationet le contraste de l'image finale rendue.

Curseurs du mixeur de canaux
Mélangeur de canaux

Le Channel Mixer permet à un canal de couleur d’influencer le « mix » d’un autre. Sélectionnez une sortie RVB, puis ajustez son influence. Par exemple, augmenter l'influence Verte dans le canal de sortie Rouge teintera toutes les zones vertes de l'image d'une teinte rougeâtre.

Démo de distorsion de l'objectif
Distorsion de l'objectif

Lens Distortion simule des motifs radiaux résultant d’imperfections dans la fabrication de lentilles réelles. Cela se traduit par des lignes droites légèrement courbées ou courbées, en particulier avec les objectifs zoom ou grand angle.

Démo de vignettes
Vignette

La vignette imite un effet de la photographie pratique, où les coins de l'image s'assombrissent et/ou se désaturent. Cet effet peut se produire avec des objectifs grand angle ou résulter d'un appareil (comme un pare-soleil ou des anneaux de filtre empilés) bloquant la lumière. Il peut également être utilisé pour attirer l’attention du spectateur vers le centre de l’écran.

Flou de mouvement

Les objets du monde réel semblent striés ou flous dans l'image résultante lorsqu'ils se déplacent plus rapidement que le temps d'exposition de l'appareil photo.

Utilisez le remplacement du flou de mouvement pour simuler cet effet. Pour minimiser le coût des performances, réduisez le Sample Count, augmentez la Minimum Velocityet diminuez la Maximum Velocity. Vous pouvez également réduire les paramètres du mode de serrage de la caméra sous les propriétés supplémentaires.

Échantillons de reflets d'objectif
Reflet

Généralement, une lumière parasite apparaît lorsqu’une lumière vive éclaire l’objectif d’un appareil photo. Il peut prendre la forme d’un seul éblouissement brillant ou de plusieurs reflets polygonaux colorés correspondant à l’ouverture de la caméra. Dans la vraie vie, les fusées éclairantes ont un effet indésirable mais peuvent être utilisées à des fins narratives ou artistiques. Par exemple, une forte lumière parasite peut attirer l’attention du joueur ou changer l’ambiance d’un décor ou d’une scène.

En HDRP, utilisez Lens Flare comme effet de post-traitement dans les dernières étapes du processus de rendu.

Ressource Lens Flare
Ressource Lens Flare

L'apparence de la lumière parasite est indiquée dans Flare Asset, mais pour rendre l'effet, vous devez ajouter le composant Lens Flare (SRP)à un objet en vue Scène, comme une source de lumière ou un autre objet qui générera l'effet. éclater.

Le composant contrôle les paramètres généraux d’intensité, d’échelle et d’occlusion de l’effet. Il offre également la possibilité de s'exécuter hors écran lorsque la lumière parasite se trouve en dehors de la vue de la caméra (bien qu'il doive toujours projeter des effets de lumière parasite dans la scène, surtout si la lumière parasite provient d'une source statique).

Pour vous familiariser davantage avec Lens Flares, installez les exemples à partir du gestionnaire de packages. Cela ajoutera un ensemble d’actifs Flare prédéfinis et modifiera l’exemple de scène HDRP pour inclure les effets Lens Flare. Vous trouverez également une scène de test dans laquelle vous pourrez parcourir les Lens Flares et créer les vôtres.

Si vous sélectionnez Directional Light Sun dans le projet, par exemple, vous trouverez le composant Lens Flare (SRP) attaché à la lumière, ainsi qu'un actif de données. Modifiez l'actif pour observer différents effets de lumière parasite.

Les Lens Flares sont constitués d’éléments Lens Flare. Chaque élément représente un artefact différent qu'une fusée éclairante peut produire. La forme de l'élément peut être un polygone, un cercle ou une autre image personnalisée. Les paramètres d'élément vous permettent de modifier la couleur, la position de transformation et l'échelle.

Lorsqu'ils sont attachés à une source de lumière, les Flare Elements peuvent exploiter Tint pour réutiliser le même Flare Asset avec de nombreuses sources de lumière différentes.

Regardez cette présentation pour en savoir plus sur le fonctionnement des Lens Flares.

Interface du débogueur de rendu
Débogueur de rendu

La fenêtre Rendering Debugger (Window > Analysis > Rendering Debugger) contient des outils de débogage et de visualisation spécifiques au Scriptable Render Pipeline (SRP). Le côté gauche est organisé par catégorie. Chaque panneau vous permet d'isoler les problèmes d'éclairage, de matériaux, de volumes, de caméras, etc.

Le débogueur de rendu est également disponible au moment de l'exécution sous la vue Jeu en mode Lecture ou dans une version Player sous la version Développement. Vous pouvez ouvrir son menu en utilisant Ctrl+Retour arrière ou en appuyant sur les deux sticks d'un contrôleur de jeu.

Échantillons d'éclairage
Mode de débogage plein écran

Le débogueur peut vous aider à dépanner une passe de rendu spécifique. Dans le panneau Éclairage, vous pouvez accéder au mode de débogage plein écran et choisir les fonctionnalités à déboguer.

Ce mode vous permet de jouer au « détective de pixels » et d’identifier la source d’un problème d’éclairage ou d’ombrage spécifique. Les panneaux de gauche vous montrent comment les statistiques vitales des caméras, des matériaux, des volumes, etc. peuvent optimiser votre rendu.

Avec le mode de débogage plein écran actif, les vues Scène et Jeu passent à une visualisation temporaire d'une fonctionnalité spécifique. Cela peut servir de diagnostic utile.

Vous pouvez également déboguer plusieurs propriétés de matériau courantes dans Écran Matériau > Propriétés de matériau communes, notamment Albédo, Normal, Lissageet Spéculaire.

Pour déboguer les performances, accédez à la fenêtre Rendering Debugger en mode Lecture. Là, vous pouvez accéder à un panneau de statistiques.

Consultez la documentation du débogueur pour plus de détails.

Traçage de rayons dans l'assistant de pipeline de rendu
Ray Tracing (Aperçu)

Le lancer de rayons est une technique qui peut produire des rendus plus convaincants que la rastérisation traditionnelle. Bien que le calcul ait toujours été coûteux, les développements récents en matière d'intersection (ou de traçage) de rayons accélérés par le matériel ont désormais rendu le traçage de rayons possible pour les applications en temps réel.

Le lancer de rayons dans HDRP est un système hybride qui s'appuie toujours sur le rendu rastérisé comme solution de secours et inclut la prise en charge de l'aperçu pour le lancer de rayons avec un sous-ensemble de matériel GPU sélectionné et l'API DirectX 12. Voir Premiers pas avec le lancer de rayons pour une liste spécifique de la configuration système requise.

Pour activer le lancer de rayons (dans Aperçu), vous devez modifier l' API graphique par défaut de votre projet HDRP en DirectX 12. Ouvrez l' assistant de pipeline de rendu (Fenêtre > Pipeline de rendu > Assistant de pipeline de rendu HD).¹ Cliquez sur Tout réparer dans l'onglet HDRP + DXR , puis redémarrez l'éditeur. Suivez les invites de l'Assistant Pipeline pour activer les fonctionnalités désactivées.

Vous pouvez également configurer le lancer de rayons manuellement.

Une fois que vous avez activé le lancer de rayons pour votre projet, vérifiez que les paramètres HDRP Global et Cadre de la caméra ont également activé le lancer de rayons. Assurez-vous que vous utilisez une architecture 64 bits compatible dans vos paramètres de construction et validez vos objets de scène depuis Edit > Rendering > Check Scene Content for HDRP Ray Tracing.

_____________

¹ Dans Unity 2021, recherchez l' assistant HDRP sous Fenêtre > Rendu > Assistant HDRP.

Occlusion ambiante de l'espace d'écran vs occlusion ambiante par lancer de rayons
Remplacements : Occlusion ambiante par lancer de rayons

Le lancer de rayons ajoute de nouveaux remplacements de volume et améliore bon nombre de ceux existants dans HDRP. Les sections suivantes détaillent chaque remplacement.

Occlusion ambiante

L'occlusion ambiante par Ray-Traced remplace son homologue dans l'espace d'écran. Contrairement à l'occlusion ambiante de l'espace d'écran (SSAO), l'occlusion ambiante par lancer de rayons vous permet d'utiliser la géométrie hors écran pour générer l'occlusion. De cette façon, l’effet ne disparaît pas ou ne devient pas imprécis vers le bord du cadre.

Clusters de lumière de traçage de rayons en mode débogage
Amas de lumière

HDRP divise votre scène en une grille alignée sur des axes, centrée autour de la caméra. Il utilise cette structure pour déterminer l'ensemble des lumières locales qui pourraient contribuer à l'éclairage chaque fois qu'un rayon frappe une surface. Il peut ensuite calculer les rebonds de lumière pour certains effets, tels que les réflexions par lancer de rayons et l'éclairage global par lancer de rayons.

Utilisez le remplacement du volume de la plage du cluster de caméras pour modifier la plage de cette structure et vous assurer qu'elle englobe les GameObjects et les lumières qui doivent être pris en compte.

Vous pouvez utiliser un mode de débogage HDRP disponible via Windows > Analysis > Rendering Debugger > Lighting > Fullscreen Debug Mode. Cela permet de visualiser les cellules du cluster de lumière (surlignées en rouge), indiquant où le nombre de lumières a atteint le nombre maximum de lumières par cellule dans l' actif HDRP. Ajustez ce paramètre pour réduire les fuites de lumière indésirables et autres artefacts similaires.

Éclairage global par lancer de rayons en temps réel
Éclairage global par lancer de rayons

L'éclairage global par traçage de rayons est une alternative à l'éclairage global de l'espace d'écran (SSGI) et aux sondes lumineuses utilisées pour simuler un éclairage indirect rebondi. Il calcule en temps réel et vous permet d'éviter le long processus hors ligne de création de lightmaps tout en donnant des résultats comparables.

Utilisez les paramètres de qualité pour les environnements intérieurs complexes qui bénéficient de plusieurs rebonds et échantillons. Le mode Performance (limité à un échantillon et un rebond) fonctionne bien pour les extérieurs, où l'éclairage provient principalement de la lumière directionnelle principale.

Réflexions par lancer de rayons
Réflexions par lancer de rayons

Tirez parti des réflexions par lancer de rayons pour obtenir des réflexions de meilleure qualité par rapport aux sondes de réflexion ou aux réflexions de l'espace d'écran. Les maillages hors écran apparaissent correctement dans les réflexions résultantes.

Ajustez les valeurs Minimum Smoothness et Smoothness Fade Start pour modifier le seuil à partir duquel les surfaces lisses commencent à recevoir des réflexions par lancer de rayons. Augmentez les rebonds si nécessaire (par exemple, deux miroirs se reflétant), mais gardez à l'esprit le coût en termes de performances.

Ombres tracées par rayons
Ombres tracées par rayons

Utilisez les ombres par lancer de rayons pour les lumièresdirectionnelles, ponctuelles, ponctuelleset rectangulaires . Ils peuvent remplacer les Shadow Maps de n’importe quel GameObject opaque. Les lumières directionnelles peuvent également projeter des ombres par lancer de rayons à partir d'objets de jeu transparents ou translucides.

Le lancer de rayons produit des ombres d'apparence naturelle qui s'adoucissent à mesure que la distance par rapport au lanceur augmente, comme dans la vraie vie. Les lumières directionnelles, ponctuelles et ponctuelles peuvent également générer des ombres semi-transparentes.

De plus, les lumières directionnelles du HDRP génèrent des ombres colorées semi-transparentes. Dans l’exemple, une surface vitrée projette une ombre précisément teintée sur le sol.

Plus de ressources

Regardez Activer le traçage de rayons avec HDRP pour une présentation pas à pas des fonctionnalités de traçage de rayons du pipeline de rendu haute définition dans l'aperçu. Consultez la documentation sur le lancer de rayons pour plus d'informations.

Ce contenu a-t-il été utile ?