Map compile tools for Quake and Hexen 2
Documentation:
Bounce is enabled with the -bounce
command-line option.
Screeshots of ad_azad by mfx:
(NOTE: This map also has some indirect lighting from "_sunlight2_color" "0.5 0.56 1.00"
and "_sunlight2" "190"
)
-bounce -bouncescale 2
-bounce
-bounce -bouncescale 0.5
Phong shading is enabled on a brush entity using "_phong" "1"
.
It can be used on func_detail
or func_group
with a supported qbsp, which writes a mapname.texinfo file.
A modified txqbsp-xt build is available here.
Screenshot of ad_crucial by mfx:
-phongdebug
to render normals to the lightmap.
-phongdebug
to render normals to the lightmap.
The -dirtdebug
flag causes the whole map to be lit at 50% gray, with ambient occlusion applied. It's good for previewing the AO settings.
-dirtdepth
controls the distance tested for occlusion, in quake units. You can see at 512+ the palace rooms start to self-shadow.
-dirtgain
controls the intensity of the dirt with an exponential scale while -dirtscale
is a simple multiplier.
Once you are happy with the command-line settings, you can transfer them to worldspawn keys; see the light documentation for details.
Screeshots of One Thousand Cuts by SimonOC:
-extra4 -dirt -dirtdebug
-extra4 -dirt -dirtdebug -dirtdepth 256
-extra4 -dirt -dirtdebug -dirtdepth 512
-extra4 -dirt -dirtdebug -dirtdepth 1024
-extra4 -dirt -dirtdebug -dirtgain 0.75
-extra4 -dirt -dirtdebug -dirtgain 0.5
-extra4 -dirt -dirtdebug -dirtgain 0.5 -dirtmode 1
-extra4 -dirt -dirtdebug -dirtscale 1.5
-extra4 -dirt -dirtdebug -dirtscale 2.0
the new _sunlight2
worldspawn key creates a hemisphere of suns around the level. It's good for avoiding pure black shadows in outdoor areas (fake indirect lighting).
"_sunlight_color" "0.83 0.91 1.00"
"_sun_mangle" "60 -45 0"
"_sunlight" "300"
"_sunlight_penumbra" "4"
"_sunlight2" "300"
"_sunlight_color" "0.83 0.91 1.00"
"_sun_mangle" "60 -45 0"
"_sunlight" "300"
"_sunlight_penumbra" "4"
"_sunlight2" "300"
_deviance
lets you split a point light into several lights, so it casts softer shadows.
{
"delay" "2"
"light" "600"
"origin" "376 0 408"
"classname" "light_globe"
}
{
"_deviance" "24"
"delay" "2"
"light" "600"
"origin" "376 0 408"
"classname" "light_globe"
}
{
"_deviance" "48"
"delay" "2"
"light" "600"
"origin" "376 0 408"
"classname" "light_globe"
}
{
"_deviance" "96"
"delay" "2"
"light" "600"
"origin" "376 0 408"
"classname" "light_globe"
}
surface lights are good to quickly light a scene, especially if there are runic-style light fixtures. The shot below is lit entirely with one light entity.
{
"classname" "light"
"origin" "-640 -192 656" // ignored for surface lights
"delay" "2"
"light" "150"
"_color" "0.827111 0.908589 1.000000"
"_surface" "runes1a" // texture name
}
-gamma