Window lighting: Difference between revisions
MossyBucket (talk | contribs) mNo edit summary |
|||
Line 1: | Line 1: | ||
By default, light will only shine in through a window if the [[env_sun]] angle is set so that sunlight shines directly through it. However, real-world windows will often stream in ''refracted'' (indirect) sunlight, independent of the suns angle. | By default, light will only shine in through a window if the [[env_sun]] angle is set so that sunlight shines directly through it. However, real-world windows will often stream in ''refracted'' (indirect) sunlight, independent of the suns angle. | ||
Valve commonly uses the following technique to simulate this: | [[Valve]] commonly uses the following technique to simulate this: | ||
[[Image:windowtip1.png|right|thumb|A simple window with a frame.]] | [[Image:windowtip1.png|right|thumb|A simple window with a frame.]] | ||
Line 21: | Line 21: | ||
[[Category:Level Design]] [[Category:Tutorials]] | [[Category:Level Design]] [[Category:Tutorials]] | ||
[[Category:Lighting]] |
Revision as of 15:16, 17 March 2011
By default, light will only shine in through a window if the env_sun angle is set so that sunlight shines directly through it. However, real-world windows will often stream in refracted (indirect) sunlight, independent of the suns angle.
Valve commonly uses the following technique to simulate this:
1. Create the opening that you want light to refract through (such as a window).
2. Cover the opening with a brush using the nodraw texture.
3. Texture the inward-facing side of this brush with the lights/white001_nochop texture. This particular texture emits light in-game. You can adjust the strength of this light with the "Texture scale" settings. (Lightmap scale does nothing in this regard.)
4. Tie the brush to a func_brush entity. In its properties, set Render Mode to Don't Render to will prevent the non-transparent brush from blocking the view as a white sheet. (It will still emit its light.) Unless you want the brush to simulate unbreakable glass, also set Solidity to Never Solid.
