(Attention cette page n'est en aucun cas mon oeuvre personnelle. Je n'ai fait que traduire le texte qui s'y trouve en français).

Le Plugin LightGen


Introduction

Ce plugin est un éxécutable compatible HDRShop écrit par Jonathan Cohen , d'après un concept original de Paul Debevec, de l'Institut pour les Technologies Creatives de L'Université de Southern California afin de générer un ensemble de sources de lumière directionnelles qui imite une image lightprobe .C'est pratique car celà permet d'utiliser un éclairage basé sur une image avec des moteurs de rendu standard qui n'utilisent pas l'Illumination Globale.

Mise à Jour 11-1-01. Ajout d'éléments supplémentaires pour Maya.Voir ci-dessous pour les détails.

Mise à Jour 10-1-01. Ajout de nombreux éléments pour Houdini, incluant les ombres estompées.

Mise à Jour 9-19-01. Lightgen possède maintenant une option pour ré-étalonner l'intensité de manière globale pour toutes les lumières. Voir ci-dessous pour les détails.

Rendu avec 20 sources de lumière directionnelles.L'image lightprobe correspondant.Les 20 lumières en format latitude/longitude.

Utilisation

Premièrement, vous devez avoir HDRShop, un soft qui est libre de droit pour les utilisations non commerciales et universitaires et qui est disponible ici. Pour installer le plugin, télécharger le à partir du lien de haut de page.Créer un répertoire sur votre système appelé "plugins" qui est dans le même répertoire que l'éxécutable HDRShop, HDRShop.exe. Copier le fichier "lightgen_plugin.exe" dans ce répertoire. Quand vous lancez HDRShop, l'option "lightgen_plugin" devrait apparaître dans la section "Plugins" du menu.

Le plugin travaille sur des images lightprobe qui sont au format lattitude-longitude , format dont vous voyez un exemple dans le tableau ci-dessus. Pour convertir une image lightprobe dans ce format, chargez une image dans hdrShop.Puis sélectionnez "Image ->Panorama ->Panoramic Transformations" à partir du menu principal. Celà affichera la boite de dialogue des transformations panoramiques ; Sélectionnez l'image lightprobe qui sera l'image source et sélectionnez le format dans lequel se trouve cette image (par exemple, s'il s'agit d'une image hdr Mirrored Balll, sélectionnez "Mirror Ball").Dans la section destination, sélectionnez "Lattitude/longitude" dans la liste déroulante , puis une résolution de sortie de 128X64 pixels.Une résolution plus importante n'est pas nécessaire, et ralentirait considérablement l'algorithme de génération des lumières. Pour terminer, appuyer sur "OK" pour lancer la conversion.

Une nouvelle image au format "Lattitude/longitude" devrait maintenant être affichée dans HDRShop.Vous pourriez vouloir la centrer et zoomer (appuyez '5' sur le pavé numérique pour la centrer, et '[CTRL]+' pour zoomer.) Sélectionnez "lightgen_plugin" à partir du menu "Plugin". Cela affichera la fenêtre de dialogue du plugin. Le plugin offre les options suivantes :

Nom du Fichier de SortieLe résultat de sortie que génère le plugin. Il spécifie les lumières directionnelles dans différents formats.
Type du Fichier de SortieLe format des lumières générées. Les formats sont Text, Arnold Render File, MEL, Radiance, ou script Houdini.
Nombre de sources lumineusesLe nombre de sources lumineuses pour se rapprocher d'un effet lightprobe. Dans quelques rares cas, le plugin produit moins de sources lumineuses que demandé.
Nombre Maximum d'itérationsLe plugin utilise un algorithme répétitif basé sur le groupage de K-Means. qui garantit la convergeance ultérieure, mais pour l'empêcher de s'emballer, vous pouvez le limiter au nombre total d'itérations. 100 est une habituellement une valeur largement suffisante.
Nombre de recherches L'algorithme répétitif utilise une technique d'ascendance en pente pour optimiser le placement des lumières. Il pourrait par conséquent s'embourber dans l'optimum local  (If might therefor get stuck in local optimima). Pour alléger cela, vous pouvez faire tourner la recherche plusieurs fois et ne prendre que les meilleurs résultats de l'ensemble.Une valeur de 5 donne de bons résultats.
Contrôler l'intensité lumineuse globale Cochez ce paramètre si vous voulez contrôler l'Intensité globale des lumières générées par Lightgen (Ce paramètre va de paire avec celui ci-dessous).
Intensité Lumineuse Globale désirée Par défaut, Lightgen va générer des lumières qui sont très brillante d'une grande intensité, puisqu'il totalise l'intensité totale des pixels de l'image lightprobe, et crée les lumières afin qu'elles ai cette intensité totale. Au lieu de cela, vous pouvez dire à Lightgen de rééchelonner l'intensité des lumières pour qu'elles tombe dans des fourchettes plus raisonnables. L'intensité est calculé en tant que luminance, ou 0.3 * Rouge + 0.59 * Vert + 0.11 * Bleu..

Un fois les options sélectionnées, cliquez "Execute" pour démarrer le plugin. Attention, Il y a un "bug" dans HDRShop, si le plugin prend trop de temps à s'executer, HDRShop pense qu'il à planté et envoie un message de défaillance. Malgré cela, et même si HDRShop renvoie une erreur, le plugin lui continue à tourner correctement donc vous pouvez ignorer cette alerte. Le résultat en sortie peut être utilisé dans divers programmes de modélisation standard comme ci-dessous :

TextUn simple fichier texte. Chaque lumière est listée dans l'ordre, suivit par ses couleurs en R G B et sa direction, formalisée par un vecteur X Y Z.
Arnold Le fichier de sortie est un fichier valide de description de scène qui peut être inclu dans n'importe quel fichier ARF.
Maya Copiez le fichier texte obtenu à partir d'un éditeur de texte dans la fenêtre d'édition de script, et appuyer sur [Numpad Enter], ou sélectionnez "Source Script" à partir du Menu "fichier"de l'éditeur de script. Les lumières seront ajoutées à la scène. Update 9-13-01. Normalise les couleurs des lumières en divisant r,g,b par le maximum des trois, puis établi l'intensité de la lumière à cette valeur maximum. De cette manière les couleurs sont toutes entre 0 et 1.
Update 11-1-01. Crée un repérage appelé "lightgen_control" avec un attribut "dimmer">(littéralement=plus faible). Les intensités des lumières sont calées linéairement sur l'attribut "dimmer". Ainsi, par exemple, pour diviser par deux les intensitées des lumières dans la scène, réglez le "dimmer" à 0.5.
HoudiniMettre le fichier résultant dans HScript. Il va ajouter les lumières à la description de scène. Il génère également une variable appellé "lightgen_dimmer" qui sert à diminuer/affaiblir toutes les lumières simultanément.
Update 9-13-01.
Réparé un bug, lightgen devrait maintenant fonctionner, à la fois avec mantra et vmantra.
Update 10-01-01.
Génère des ombres douces à partir des lumières, et ou la valeur d'adoucissement peut être réglé avec  la variable "lightgen_blur". Vous permet également de déterminer la distance des sources de lumières par rapport à l'origine par l'intermédiaire de la variable "lightgen_scale".
RadianceLe fichier de sortie est un fichier valide de description de scène Radiance.
LightWave3D Arnie Cachelin de chez NewTek à écrit un convertisseur du format des fichiers de sortie vers LightWave3D. Celui-ci est disponible ici . Quiconque rencontrant des problèmes ou ayant des commentaires à faire peut poster sur le forum de discussion suivant : NewTek discussion forum . Le script divise les couleurs par la valeur maximum, et ensuite établit l'intensité lumineuse à cette valeur max. Il crée également un "objet null" comme parent des lumières.

Note finale : Si vous ne choisissez pas l'option établir la "Scale total light output", les valeurs des sources lumineuses peuvent être très brillantes/élevées. Il en est ainsi car  la luminosité globale de la scène en sortie est égale à la somme de toutes les valeurs de pixels de l'image lightprobes, cette somme étant généralement assez élévée. C'est pour cela, par exemple, que la version Houdini crée une variable appellée "lightgen_dimmer" afin de faciliter l'affaiblissement de l'intensité des lumières. Dans Maya, vous devez le faire manuellement.

Téléchargement

L'éxecutable peut être téléchargé ici . Il est fournit libre de droit pour les utilisations formatrices/universitaires et non commerciales bien que le copyright complet soit la propriété de l'Université de Californie du Sud. Si vous l'utilisez à des fins intéressantes ou inhabituelles, faites nous le savoir s'il vous plait ici . Si vous désirez que de nouvelles caractéristiques intéressantes soient ajoutées, je pourrait éventuellement le faire si vous avez de bons arguments ou si il y a suffisament de gens intéréssés. Si vous avez besoin d'un nouveau format de sortie, assurez vous de m'envoyer une structure/un fichier de référence/de base pour le type de fichier que doit générer le plugin.

Remerciements

Merci à Tim Hawkins pour les discussions utiles et Craig Halperin, Marcos Fajardo, et Brian Emerson pour leur aide lors des tests. Et merci à Chris Tchou pour avoir écrit l'impressionnant HDRShop.

Page native de Jonathan Cohen

USC ICT Graphics Lab