SKY texture Last edited 8 months ago2024-03-02 23:44:53 UTC

halflife.wad's SKY texture. Seen in level editors but not in the gamehalflife.wad's SKY texture. Seen in level editors but not in the game
SKY is a tool texture used to place skyboxes. Wherever it's applied to a brush face in a level will have the skybox rendered instead.

On what the skybox is, see its dedicated page.

Using SKY texture

Apply Current Texture icon in HammerApply Current Texture icon in Hammer
SKY textures must be applied to visible faces while the rest can be textured with NULL. SKY textures must be applied to ALL faces of the sky brushes, otherwise it will cause problems with sky lighting in newer versions of VHLT's HLRAD.exe. To do this, select the sky brushes and use the Apply Current Texture tool with the SKY texture selected.

VHLT also automatically generates clipnodes on SKY brushes, the same effect as a User posted image CLIP brush. This can be turned off by passing argument -noskyclip to HLCSG.exe. The original Half-Life SDK's compilers don't generate such clipnodes, allowing players to swim inside SKY brushes as if they were water brushes.

Weather and Counter-Strike: Condition Zero - Deleted Scenes

If you are mapping for Counter-Strike: Condition Zero - Deleted Scenes and you use any entity related to weather, the SKY texture MUST be applied to all faces of the brush. Use the Apply Current Texture tool as previously mentioned.

If weather entities aren't working, that might be the reason.

This notice might also apply to other games/mods that control weather.
Sky texture applied to brushes is treated differently during rendering. It does not generate extra wpoly's as normal texture does. Some tutorials tell you that it is good idea to use sky texture as a filler for large unseen areas, I have no evidence that this is a good method of reducing r_speeds, when the hint and skip textures are available. However, current best practice to reduce wpolys is to apply User posted image NULL on faces that shouldn't be visible e.g. backsides of walls that players can't get around to see.

In GL mode [not tested in software mode] the skybox doesn't hide level geometry that happen to be behind it. The solution is to either further optimize VIS splitting using User posted image HINT brushes to try force occlusion of the offending areas, or to cover up problem areas with geometry or foliage.
Despite the name, you are not supposed to create a literal hollowed sky box then place your level inside of it. This so-called "skyboxing" bloats a BSP and degrades performance in terms of VISibility and wpoly counts.
Dummied down illustrationDummied down illustration
If you're doing this to fix leaks, consider actually finding and patching those leaks properly.

SKY and lighting

SKY textured faces can be made to emit light using light_environment or light_spot entities. Light emitted by SKY is special in that the light rays are directional and parallel unlike regular texture lighting, simulating a light source that's infinitely far away (e.g. from the Sun). One important note is that the direction is governed by both Pitch and Yaw and both values need to be set up properly to point downwards. See the linked pages for more information.

3 Comments

Commented 5 years ago2019-05-16 21:06:41 UTC Comment #101990
Correction: the "treat as one" in Hammer Editor's texture application tool is not intended to apply a texture on all the faces of a brush at one time. Instead, use SHIFT+click to select all faces and CTRL' to select multiple objects.
Commented 2 years ago2021-12-28 19:42:34 UTC Comment #103911
Me: When you have a custom GoldSrc skybox, is there any reason to include BMP files? Are they used anymore? Or just the TGAs?
Admer: Yeah, software mode I think
func_cambreaKable: software mode uses tga's too though
func_cambreaKable: i have only tga skyboxes in WAR and they work on software mode
Mikko: software mode falls back to tgas if bmps can't be found
Mikko: bmps can be used by gl too if you have an old graphics card that supports those paletted texture extensions
Commented 10 months ago2023-12-16 12:02:30 UTC Comment #105742
I found that compiling with VHLT will make sky lighting not work on sky brushes that aren't all textured with sky texture, making that particular brush not emit skylight.

It's also particular about having different sky "ceiling" brushes at different levels. Hard to explain why; I think it can only emit light from one side, and so having one sky brush act as both wall and ceiling of a skybox makes it only emit light on the wall side. So it might mean one sky brush emits light on only one face.
My solution was to have rooms with sky be at only one ceiling level each.

You must log in to post a comment. You can login or register a new account.