![]() |
![]() |
![]() |
ArghRad's allows lights to "cast" darkness. This "antilighting" works by allowing lights with negative color or brightness values to subtract light from the world. It is most useful for artistic effects, or for tweaking the light in certain situations. For example, they could be used to deepen the color of shadows, or make unmoving brush model entities appear to cast proper shadows.
Antilights will only subtract light of the same style. That means, for example, a flickering antilight will only subtract light from other flickering lights. Note that switched lights count as separate styles, so they will only affect other lights on the same switch.
ArghRad extends the "light" key of point light entities to accept negative values. These lights work as normal, except that they subtract the specified light value instead of adding it.
The color of the light affects what colors are subtracted. For example, a blue antilight will only subtract blue light, and an orange antilight will only subtract red and a little green, etc.
Example:
{ "classname" "light" "origin" "64 64 64" "light" "-100" }
ArghRad also allows negative values to be used in the RGB values of the light's "_color" key. This has the added flexibility of allowing mixed light and darkness casting in the same light. Assuming the brightness is positive, a negative number for red, green, or blue will subtract a proportionate amount of that color, while a positive number will add the color like normal. Note that if the light's brightness is negative, it will reverse the behavior of the color values: positive will darken, negative will brighten.
Example:
{ "classname" "light" "origin" "64 64 64" "light" "200" "_color" "1 .75 -.5" }
Normally, antilights will not allow surfaces to go darker than the minlight value. If you want to allow that to happen, you must use the command line option -nominlimit.
Example:
arghrad -nominlimit mymap.bsp