Mise en place des Réflexions
Ce tutoriel va vous montrer comment travailler avec des reflets en temps réel dans LightUp pour obtenir la meilleure qualité et de la performance. Le rendu des réflexions étant une activité à forte intensité de calcul il est important de comprendre vos options dans LightUp afin d'obtenir un bon résultat.
Nous allons commencer avec une pièce éclairée à laquelle nous allons ajouter des matériaux réfléchissants. Nous avons quelques spots IES, quelque lumière du jour qui entre et une vitrine de verre.
Nous allons commencer avec une pièce éclairée à laquelle nous allons ajouter des matériaux réfléchissants. Nous avons quelques spots IES, quelque lumière du jour qui entre et une vitrine de verre.
Avant de commencer à mettre en place des matériaux réfléchissants, Faisons une rapide revue.
Lorsque vous définissez un matériau devant être réfléchissant, le rendu doit démontrer non seulement l'effet de la lumière tombant sur la surface, mais aussi la lumière réfléchie par d'autres surfaces dans votre modèle. Pour y parvenir, nous devons calculer ce qui pourrait être vu si vous étiez en train de regarder à partir de la surface - et nous devons le faire pour chaque pixel à l'écran. Cela nécessite des millions de calculs.
Si vous ne voulez pas de navigation en temps réel, vous pouvez prendre des heures pour calculer ces réflexions comme les Raytracers (lancers de rayons) traditionnels. Cependant, LightUp a juste 1/30 de seconde pour calculer les réflexions, afin de faire les choses rapidement, il traite des réflexions sur certaines surfaces différemment à d'autres.
Lorsque vous définissez un matériau devant être réfléchissant, le rendu doit démontrer non seulement l'effet de la lumière tombant sur la surface, mais aussi la lumière réfléchie par d'autres surfaces dans votre modèle. Pour y parvenir, nous devons calculer ce qui pourrait être vu si vous étiez en train de regarder à partir de la surface - et nous devons le faire pour chaque pixel à l'écran. Cela nécessite des millions de calculs.
Si vous ne voulez pas de navigation en temps réel, vous pouvez prendre des heures pour calculer ces réflexions comme les Raytracers (lancers de rayons) traditionnels. Cependant, LightUp a juste 1/30 de seconde pour calculer les réflexions, afin de faire les choses rapidement, il traite des réflexions sur certaines surfaces différemment à d'autres.
Types de réflexion
Le matériau réfléchissant le plus simple LightUp est "Réflexion planaire". Ce sont des réflexions calculées en temps réel, par GPU raytracing et elles sont exactes. Cependant, elles sont limitées à seulement les surfaces étroites- surfaces planes. Si votre matériau SketchUp est seulement utilisé sur des surfaces planes, et vous pouvez modifier les Propriété du matériau pour avoir du spéculaire / Fresnel, LightUp va utiliser cette technique.
À partir de l'outil Balade et en cliquant sur le sol (à plat) pour modifier les propriétés de son matériau pour un résultat comme ceci:
À partir de l'outil Balade et en cliquant sur le sol (à plat) pour modifier les propriétés de son matériau pour un résultat comme ceci:
Les réflexions planaires sont très efficaces pour les grandes surfaces (plates) telles que des planchers, miroirs, vitrages, etc. Ils montrent des reflets exacts pour le point de vue, mais ils sont aussi coûteux à calculer, un carte graphique GPU moderne peut gérer un bon nombre de ces réflexions "Planar" dans votre modèle et continue à fonctionner à 30 images par seconde, mais si vous commencez à avoir des géométrie avec des centaines de facettes réfléchissantes, dont chacune peut potentiellement refléter votre modèle entier, tout le GPU sera rapidement débordé.
Donc, si vous faites un matériau réfléchissant et trouvez que votre vitesse d'image chute de façon spectaculaire, vérifiez soigneusement pour voir si le matériel que vous avez édité est effectivement utilisé dans de nombreux autres endroits que vous n'attendiez pas. Ceux-ci deviendront trop réfléchissant et utiliseront trop les ressources du GPU.
Donc, si vous faites un matériau réfléchissant et trouvez que votre vitesse d'image chute de façon spectaculaire, vérifiez soigneusement pour voir si le matériel que vous avez édité est effectivement utilisé dans de nombreux autres endroits que vous n'attendiez pas. Ceux-ci deviendront trop réfléchissant et utiliseront trop les ressources du GPU.
Nous voulons rendre le cadre de la vitrine d'une matière métallique réfléchissante. Nous pouvons tout simplement commencer avec l'outil Balade et cliquez sur le matériau du cadre pour modifier et ajouter de la spécularité et vous pouvez voir que le cadre est précisément reflète toute la pièce.
C'est peut-être juste le résultat que vous vouliez. Mais à l'examen de la géométrie de la vitrine du cadre, nous voyons qu'il est peint à l'intérieur et à l'extérieur avec le matériau réfléchissant. Nous passons beaucoup de temps à calculer des longueurs de réflexions à l'intérieur d'un cadre de fenêtre! Il faut Modifier les matériaux à l'intérieur pour être un matériau par défaut pour augmenter les performances.
CONSEIL: Vérifiez les matériaux à l'intérieur des objets pour une utilisation parasite de votre matériau réfléchissant. |
Parfois, il est vital d'avoir des réflexions raytracing exactes, mais souvent, il est suffisant pour des surfaces qui donnent le sentiment d'être réfléchissantes sans être exactes.
Réflexions IrrCache (cache d'irradiance)
La deuxième technique qu'offre LightUp est très couramment utilisé dans les jeux vidéo haut de gamme et consiste à placer dans votre modèle, un composant spécial appelé "Cache d'Irradiance" ("IrrCache" pour faire court). La façon dont cela fonctionne est de capter toute la lumière arrivant à ce point dans votre modèle. Lorsqu'un surfaces réfléchissantes doit savoir ce qu'il doit réfléchir, il utilise le IrrCache le plus proche pour créer des reflets.
Cette technique est très rapide, mais contrairement aux Réflexions planaires, elle a une certaine distorsion. Il n'y a pas une telle chose comme pour un repas gratuit! :-( Pour notre cas d'affichage du cadre cadre de la fenêtre, où les faces sont petites, utiliser un IrrCache est une bien meilleure solution car nous voulons juste quelque chose qui donne la sensation du brillant, tout en gardant une vitesse d'images lisse.
L'IrrCache capte la lumière arrivant à sa position dans votre modèle. Comme vous vous éloignez de cette position, les réflexions de l'IrrCache peut générer des réflexions plus déformées, donc en utilisant un IrrCache à partir de l'autre extrémité de votre modèle peut entraîner des réflexions inattendues, il vaut mieux placer l'IrrCache autour de votre modèle à proximité de l'endroit où ils sera utilisé.
LightUp recherche sur votre modèle pour l'IrrCache le plus proche à utiliser.
Si il ne trouve pas d'IrrCache, il utilisera la Skybox que vous avez fixée pour votre modèle. L'utilisation de l'IrrCache le plus proche est très bien, mais souvent vous souhaitez limiter l'utilisation d'un IrrCache à seulement 1 objet, et non à tout ce qui est proximité. LightUp gère cela en appliquant un IrrCache seulement à la géométrie au même niveau ou plus en profondeur dans la hiérarchie de votre modèle.
Cette technique est très rapide, mais contrairement aux Réflexions planaires, elle a une certaine distorsion. Il n'y a pas une telle chose comme pour un repas gratuit! :-( Pour notre cas d'affichage du cadre cadre de la fenêtre, où les faces sont petites, utiliser un IrrCache est une bien meilleure solution car nous voulons juste quelque chose qui donne la sensation du brillant, tout en gardant une vitesse d'images lisse.
L'IrrCache capte la lumière arrivant à sa position dans votre modèle. Comme vous vous éloignez de cette position, les réflexions de l'IrrCache peut générer des réflexions plus déformées, donc en utilisant un IrrCache à partir de l'autre extrémité de votre modèle peut entraîner des réflexions inattendues, il vaut mieux placer l'IrrCache autour de votre modèle à proximité de l'endroit où ils sera utilisé.
LightUp recherche sur votre modèle pour l'IrrCache le plus proche à utiliser.
Si il ne trouve pas d'IrrCache, il utilisera la Skybox que vous avez fixée pour votre modèle. L'utilisation de l'IrrCache le plus proche est très bien, mais souvent vous souhaitez limiter l'utilisation d'un IrrCache à seulement 1 objet, et non à tout ce qui est proximité. LightUp gère cela en appliquant un IrrCache seulement à la géométrie au même niveau ou plus en profondeur dans la hiérarchie de votre modèle.
Si nous regardons la hiérarchie d'un modèle SketchUp composé de groupe ou de composants, il pourrait ressembler à ceci.
Il y a un haut niveau qui contient la géométrie pour les murs et le sol ainsi que d'un groupe ou d'un composant qui représente une table, et qui dispose également de 3 groupes d'enfants ou de composants pour chacune des 3 présidents. Si nous voulons mettre un IrrCache qui influe seulement les présidents, nous voulons percer dans la hiérarchie du groupe à l'objet du président et de placer notre IrrCache là. LightUp fait usage d'emplacement dans la hiérarchie où vous avez placé le IrrCache pour limiter son utilisation juste pour ces chaises et non, par exemple, pour la table qui est tout juste à côté, qui est "plus haut" dans la hiérarchie.
NB LightUp utilise simplement la profondeur de l'IrrCache dans la hiérarchie, de sorte que vous voudrez peut-être regrouper les 2 autres présidents dans un groupe supérieur pour éviter de trop utiliser l'IrrCache. |
Le flux de travail pour utiliser l'IrrCache avec succès est d'isoler la géométrie en besoin réflexions dans un sous-groupe, placez l'IrrCache proximité et Créer un groupe à la fois avec le nouvel IrrCache et le sous-groupe que vous avez créé. Quand vous avez beaucoup d'objets localisés, par exemple un composant constitué de barres de vitrage et le verre, vous pouvez intégrer un IrrCache un peu en avant du verre pour produire un excellent résultat avec une bonne performance.
Essayons ceci avec la vitrine. J'ai ouvert le groupe d'affichage pour y mettre des barres de vitrage dans un sous-groupe afin que nous puissions les traiter séparément. Un IrrCache a été placé à l'intérieur du Groupe de haut niveau et un peu loin devant alors je lui donne une bonne "vue" de l'environnement. Maintenant, fermez le groupe et nous sommes prêts.
Essayons ceci avec la vitrine. J'ai ouvert le groupe d'affichage pour y mettre des barres de vitrage dans un sous-groupe afin que nous puissions les traiter séparément. Un IrrCache a été placé à l'intérieur du Groupe de haut niveau et un peu loin devant alors je lui donne une bonne "vue" de l'environnement. Maintenant, fermez le groupe et nous sommes prêts.
Maintenant, nous avons notre vitrage à l'aide d'un IrrCache pour une performance maximale et peu de distorsion remarquable que quand nous nous déplaçons dans l'environnement.
Si vous avez des questions, vous pouvez poster sur le forum LightUp ou si vous préférez, envoyer directement un corriel à LightUp.