Developpez.com - Rubrique 2D-3D-Jeux

Le Club des Développeurs et IT Pro

Le pipeline léger de rendu du moteur de jeu Unity évolue en pipeline de rendu universel

C'est maintenant une solution adaptée à la fois aux projets 2D, 3D, de réalité virtuelle et augmentée

Le 2019-09-24 17:51:03, par dourouc05, Responsable Qt & Livres
Unity a apporté le pipeline léger de rendu (LWRP) en 2018, avec sa version 2018.2. À l'origine prévu pour du matériel peu performant, comme celui qu'on trouve sur les téléphones portables, il a beaucoup évolué et s'adapte aux projets 2D, 3D, réalité virtuelle et augmentée. C'est pourquoi, avec Unity 2019.3, celui-ci change de nom et devient le pipeline de rendu universel, pour marquer le coup.

L'énorme avantage de ce niveau pipeline est sa flexibilité, la facilité que l'on a de changer son comportement, par exemple à l'aide de scripts. Le pipeline existant ne permet de choisir qu'entre deux techniques de rendu : en avant et différé. L'extensibilité se résume à quelques endroits où l'on peut injecter du code, mais ce n'est pas toujours suffisant. Au contraire, le pipeline universel utilise la notion de "moteur de rendu", qui implémente une technique de rendu, notamment une stratégie d'éclairage de la scène. Avec Unity 2019.3, le pipeline universel n'est pas encore au même niveau de fonctionnalité que le pipeline fixe : on a droit à un rendu avec une passe avant (qui gère toutes les lumières dans la même passe) et un rendu en 2D (avec plusieurs types de lumières). L'extensibilité nouvelle permet d'implémenter un rendu par carreaux, par exemple, en profitant d'une bonne partie du travail déjà effectuée.


Le pipeline universel propose aussi d'ajouter des fonctionnalités de rendu, des objets scriptables qui peuvent effectuer des passes de rendu (une ou plusieurs). Unity fournit une série d'exemples, comme le changement de la profondeur de champ ou un effet cartoon.


Un exemple complet de projet utilisant ce pipeline est disponible sur le Store. Crest Ocean montre un rendu réaliste de l'océan, plus facilement obtenu avec le pipeline universel qu'avec les autres moteurs de rendu disponibles dans Unity.


Désormais, Unity conseille d'utiliser ce nouveau pipeline en remplacement du pipeline fixe de base (même s'il ne remplace pas encore le pipeline haute définition). Le principal changement sera probablement la performance, puisqu'il peut fonctionner plus vite que le pipeline fixe. Par exemple, le projet d'exemple Polygon Farm a pu monter en performance sur un téléphone déjà relativement vieux (iPhone 6S) : à qualité égale, il est devenu possible d'afficher plus d'images par seconde, en passant de quarante-quatre images par seconde à soixante. Les comparaisons ne sont pas toujours aisées, puisque les deux pipelines ne gèrent pas les paramètres de qualité de la même manière : le pipeline fixe propose deux pages d'options (Quality Settings et Graphics Tiers), une seule pour le nouveau (Quality). De plus, lors de la conversion d'un projet d'un pipeline à l'autre, les paramètres de qualité sont perdus.



Ce pipeline universel est, comme son nom l'indique, le futur de Unity. Il devrait disposer de toutes les fonctionnalités du pipeline fixe dès 2020, y compris le rendu différé et l'empilement de caméras, à l'exception de toutes celles qui ont été marquées comme dépréciées au fil du temps. Ce n'est pas pour autant une copie conforme du moteur précédent : les fonctionnalités seront toujours disponibles, mais ne s'utiliseront pas forcément de la même manière. Toute réduction de performance par rapport au pipeline fixe sera considérée comme une régression, un point à améliorer : l'année 2021 sera l'année de la performance.

Il devrait coexister avec le pipeline de rendu haute qualité (HDRP), dont l'objectif est beaucoup plus précis : URP est prévu pour fonctionner sur la majorité des plateformes (et sera le pipeline par défaut à l'avenir), HDRP fournit la meilleure qualité d'image possible, quitte à abandonner des plateformes.

Source : How the Lightweight Render Pipeline is evolving.
  Discussion forum
3 commentaires
  • tlt
    Membre averti
    Magnifique . En même temps, ça change tout le temps. ça en fait du boulot de toujours devoir se mettre à jour en permanence
  • strato35
    Membre éclairé
    Envoyé par dourouc05

    Un exemple complet de projet utilisant ce pipeline est disponible sur le Store.
    Normal que le lien du store pointe sur l'image juste au dessus ?
  • Greg Latiner
    Membre expérimenté
    Envoyé par strato35
    Normal que le lien du store pointe sur l'image juste au dessus ?
    le bon lien est celui-ci: Crest Ocean System LWRP