Le Lightmap

From Valve Developer Community
Jump to: navigation, search
English

La lightmap est une texture générée et superposée à la texture d'origine, pour simuler un ombrage, et ne concerne que les Brushs. Cette technique permet de créer un ombrage. Il est possible de déterminer la qualité du lightmap sur chaque surface. La majorité des ombres dans Source sont en faîte des Lightmaps, leur avantages est une faible consommation de ressources (car pré-calculée), mais leur inconvénient est qu'elles sont statiques.


Les lightmaps sont générées par deux éléments :

Note:Les modèles dynamiques et physiques utilisent les ombres dynamiques.
Note:Les lightmaps sont fixe, mais peuvent permutés, par exemple pour une lampe si vous l'éteignez ou l'allumez. Quand vous renommez une lampe les lightmaps sont calculés deux fois, en mode On et off. Renommez donc vos lumières si seulement cela est nécessaire.
Principe de fonctionnement des Lightmaps

Visualisations sous Hammer

Dans Hammer, utilisez le mode de camera spécial "lightmap" dans la vue 3D pour les visualiser. Et la boite de dialogue Face Edit Dialog pour les contrôler.

Lightmap Scale

Plus la valeur est petite plus la Lightmap est précise. Mais augmente la taille du BSP et le temps de compilations du VRAD. Les performances sont très peux affectés.

Note:La valeurs par défaut est de 16 units/luxel.
Lightmap scale 4 Lightmap scale 16 Lightmap scale 64
Le lightmap échelles de 4, 16, et 64.

Lors de la génération de la lightmap, VRAD ne créé pas de penumbras. L'effet peut être simulé en augmentant l'échelle des Lightmaps (supérieurs donc à 16).

Attention:
Les faces avec displacement utilise leur propre valeurs de Lightmaps.
Astuce:
Le fog augmente la dispersion atmosphérique d'un éclairage , rendant ainsi les ombres plus diffuses.

Optimisations

Exemple.
  • Attention cependant à ne pas mettre un lightmap trop petit dans une zone ne subissant aucun éclairage en particulier.

Réduire le lightmap peut-être très efficace si un brush se trouve près d'une source de lumière possédant un angle d'éclairage très élevé.

  • Faîtes très attention aussi en le manipulant. Un lightmap faible (de 4 par exemple) par endroit n'est pas forcement plus agréable à voir qu'un lightmap élevé

( de 24 par exemple). Il faut savoir apprécier un éclairage diffus selon la source de lumière.

Note:Voir map fourni avec le SourceSDK pour un exemple : ....\Program Files\steam\steamapps\nomdevotreconte\sourcesdk_content\hl2\mapsrc\sdk_lightmaps.vmf

Commandes Console

mat_fullbright 2

Nécessite l'activation du mode cheat avec la commande sv_cheats.

mat_fullbright 2
Remplace toutes les textures par un fond gris, laissant juste les informations de lumière.
mat_luxels <bool>
Affiche toutes les luxels sur les surfaces des Brushs.
Bug: Ne fonctionne pas dans displacements
mat_filterlightmaps <bool>
Contrôle si les luxels sont lissés ensembles tout comme les texels.
r_avglightmap <bool>
Donne les valeurs moyennes des lightmap parmi chaque polygone.
mat_showlightmappage <int>
Déplie chaque Lightmaps dans une petite fenêtre en haut à gauche. Peu utile.
r_lightmap <?>
To do: Pas d'effect apparent.
r_unloadlightmaps <bool>
To do: Inconnu.

Voir aussi