Author Topic: Tip: Superspeed compile (for testing purposes)  (Read 3112 times)

MrFish

  • Posts: 201
  • Turrets: +16/-500
Tip: Superspeed compile (for testing purposes)
« on: May 31, 2010, 04:16:21 am »
When you are testing aspects of your map that doesn't involve how it needs to ACTUALLY appear (triggers, doors, cannons, etc.), use the "build without visibility and lights". Your map will be really bright and ugly but it dropped my compile time from 16 minutes to 20 seconds!

If you are as dumb as I am you will surely appreciate this tip :P

God, maker of the world

  • Guest
Re: Tip: Superspeed compile (for testing purposes)
« Reply #1 on: May 31, 2010, 06:04:56 am »
use the "build without visibility and lights". Your map will be really bright and ugly but it dropped my compile time from 16 minutes to 20 seconds!

Here's what I do to have it real quick with the right looks:

In the worldspawn, I put these two keys and values:

Code: [Select]
"gridsize" "1024 1024 1024"

"_lightmapscale" "2.0"
Then, I use Q3map2 for BSP, VIS and LIGHT. And in the VIS and LIGHT phase, I set the switch "FAST". This gives me a map with correct (but imperfect) optic in 20 to 100 seconds.

Lightmapscale 2 is the limit. If you put it higher, you'll begin to get ugly effects at light-surfaces etc.

When I want to make a quick release, I change the following: I remove the "FAST" from the VIS phase but keep it in the LIGHT phase. And I add the parameter "BOUNCE 500" for radiosity bounces. This results in mostly only 4 to 7 bounces, then all the light has been "used up". Since the rendering is real quick, this now takes maybe overall 20 minutes.

When I want to make a proper release, I remove the two keys from the worldspawn or even keep the lightmapscale key but set it to 0.25 (less than 0.25 does not have an effect on the optic, so I guess it's even a hard limit even though Q3map2 repeats the value that you give, even when it's smaller, in its output text).

I also like to increase the bouncescale so that the reflected light is a bit more powerful. This has great effect if the surface it bounces from is colored. I usually use bouncescales from 1.25 to 2. If you put it too high, it will not only make everything too bright, it will also cause an "infinite" amount of bounces because the light is never "used up". But 1.25 to 2 is good.

For proper releases (when I use bounce), I also use the switch "BOUNCEGRID". I read that this causes the program to calculate new lightgrids for every bounce because the bounce situation can somehow (No idea what exactly is going on, to be honest.) affect the lightgrid. It increases calculation time, but only slightly (if your initial lightgrid calc phase was short, too - otherwise, it's a huge overhead).

I don't use GTKradiant or NETradiant to invoke the calculations. I use the VB-program Q3map2build, which very comfortably allows to set everything. This is the (edited) batchfile that is generated when I make a proper render - the last line starts Trem with the map:

Code: [Select]
"q3map2.exe" -fs_basepath "[...yourpath...]\Tremulous" -fs_game "base" -custinfoparms -info -meta -patchmeta "[...yourpath...]\Tremulous\base\maps\[...yourmapname...].map"

"q3map2.exe" -fs_basepath "[...yourpath...]\Tremulous" -fs_game "base" -vis -saveprt "R:\(games)\Tremulous\base\maps\[...yourmapname...].map"

"q3map2.exe" -fs_basepath "[...yourpath...]\Tremulous" -fs_game "base" -light -bouncegrid -custinfoparms -dirt -filter -patchshadows -bounce 500 -bouncescale 1.25 "[...yourpath...]\Tremulous\base\maps\[...yourmapname...].map"

"[...yourtremulousprogram...]" +set fs_basepath "[...yourpath...]\Tremulous" +set sv_pure 0 +set r_fullscreen 1 +set g_wf_warmup 0 +set fs_basegame base +set fs_game base +devmap "[...yourmapname...]"

The option "filter" in the light phase averages the lightmap a bit - this renders shadows very much better because the seams will not have the ugly aliased pixel look, most useful if you render with lightmapscale 0.25

Another interesting option to mention is "gamma" for the light phase. Useful values are from 0.5 to 1.2

And as I said: When I want the usual fast render for testing, the only thing different from this is:

VIS gets switch "-fast", LIGHT gets switch "-fast", bounce (and bouncescale) are removed. And in the map itself, I add the two keys shown at the beginning of this reply.
« Last Edit: May 31, 2010, 06:09:06 am by God, maker of the world »

God, maker of the world

  • Guest
Re: Tip: Superspeed compile (for testing purposes)
« Reply #2 on: May 31, 2010, 06:07:50 am »
(:/ sorry wrong button, please delete this here reply)

And dudes. "You can't report your own post to the moderator, that doesn't make sense!" is wrong. This reply proves it.
« Last Edit: May 31, 2010, 06:10:18 am by God, maker of the world »

MrFish

  • Posts: 201
  • Turrets: +16/-500
Re: Tip: Superspeed compile (for testing purposes)
« Reply #3 on: May 31, 2010, 04:10:19 pm »
Even better!