Func occluder

From Valve Developer Community

This Brush-based Entity is available in all Source Games.

Table of contents

Entity Description

Occlusion at work. Green boxes represent occluded props, red boxes unoccluded ones. Click to enlarge.
Enlarge
Occlusion at work. Green boxes represent occluded props, red boxes unoccluded ones. Click to enlarge.

A brush entity that hides all types of prop that are entirely covered by it in the player's view, according to how it has been textured. They are used to control visbility in places where func_areaportals or brushes are unsuitable.

Texturing

This entity works according to how materials has been applied to it:

  • All sides covered with the occluder or trigger materials will occlude.
  • All sides covered with the skip or nodraw materials, will not occlude.
Image:note.png Note: The skip material works from all angles, not just the face it is applied to.

Occuders and Areaportals

There are several important differences between occluders and areaportals:

  • An occluder only hides props, not world geometery or static brushes.
  • An occluder does not split visleaves.
  • An occluder can be free standing and does not need to separate two areas.

Debugging commands

r_drawpixelvisibility

Show the occlusion proxies

r_occludeemaxarea

Prevents occlusion testing for entities that take up more than X% of the screen. 0 means use whatever the level said to use.

r_occluderminarea

Prevents this occluder from being used if it takes up less than X% of the screen. 0 means use whatever the level said to use.

r_occlusionspew

Activate/deactivates spew about what the occlusion system is doing.

r_occludermincount

At least this many occluders will be used, no matter how big they are.

r_occlusion

Activate/deactivate the occlusion system.

r_visocclusion

Activate/deactivate wireframe rendering of what the occlusion system is doing.

Keyvalues

Defines the name that other entities refer to this entity by.
  • hammerid [Episode Two Update]
<integer readonly> This id is used for debugging purposes in Hammer.
  • StartActive
<choices> Initial State
Literal Value Description
0 Inactive
1 Active

Inputs

  • Kill
Removes this entity from the world.
Removes this entity and all its children from the world.
  • AddOutput <string>
Evaluates a keyvalue/output on this entity. It can be potentially very dangerous, use with care.
Format: <key> <value>
Format: <output name> <targetname>:<inputname>:<parameter>:<delay>:<max times to fire (-1 == infinite)>
Causes this entity's OnUser1-4 outputs to be fired. See User Inputs and Outputs.
  • Activate
  • Deactivate
  • Toggle

Outputs

Fired in response to FireUser1-4 inputs. See User Inputs and Outputs.
!activator = activator