Compile Times
Moderator: Moderators
Compile Times
In my MBuilder command lines, I am currently using nothing under the BSP section, "-fast" under vis section, and "-fast" and "-radscale 0" under light section. Even with these, my compiles are starting to take a long time, especially when I change one little thing and have to compile it all over again. What can I do to speed it up a little bit more? This is only for testing, so I dont care how it lowers the quality, I just need speed for now.
-
Bjarne BZR
- Site Admin
- Posts: 3298
- Joined: Wed Feb 05, 2003 2:04 pm
- Location: Sweden
- Contact:
-
Bjarne BZR
- Site Admin
- Posts: 3298
- Joined: Wed Feb 05, 2003 2:04 pm
- Location: Sweden
- Contact:
Well, in that case you have little to complain about... my current map takes about a day to compile on -fast lighting... and I consider that good, it was more before I optimized it 
But a hole in the skybox is a good idea ( unless you are testing the maps VIS ) for a quick compile... there is also the -onlyents that lets you recompile only changes in entities on a map. Take a look at the Advanced compiling tutorial under General tutorials for detailed copile info.
But a hole in the skybox is a good idea ( unless you are testing the maps VIS ) for a quick compile... there is also the -onlyents that lets you recompile only changes in entities on a map. Take a look at the Advanced compiling tutorial under General tutorials for detailed copile info.
-
Bjarne BZR
- Site Admin
- Posts: 3298
- Joined: Wed Feb 05, 2003 2:04 pm
- Location: Sweden
- Contact:
Also, you can set -blocksize 0 in your BSP step.
That should speed up the -vis step. Vis is what takes the longest for me. The map I am working on was not built to take full advantage of the default 1024 blocksize. So when I have that on, plus hint brushes and ManVis brushes, my Vis step takes 3 days now. But without all that, my FPS is lower than I want.
My lights take bout 8 hours on final settings but only 2 minutes on fast.
That should speed up the -vis step. Vis is what takes the longest for me. The map I am working on was not built to take full advantage of the default 1024 blocksize. So when I have that on, plus hint brushes and ManVis brushes, my Vis step takes 3 days now. But without all that, my FPS is lower than I want.
My lights take bout 8 hours on final settings but only 2 minutes on fast.
Diego
-
Bjarne BZR
- Site Admin
- Posts: 3298
- Joined: Wed Feb 05, 2003 2:04 pm
- Location: Sweden
- Contact:
I do better vis design when possible, but above all I open the Task manager and find the compiler process ( q3map.exe or MOHLight.exe ) and right click on it and select Set Priority -> BelowNormal ( or Set Priority -> Low if I really need the processor primarily for something else).
This way it only uses the CPU cycles you dont use yourself.
It will increase your compile time, but if you only read mail, surf and such: i doubt it will increase with more than 5-10%... tops.
This way it only uses the CPU cycles you dont use yourself.
It will increase your compile time, but if you only read mail, surf and such: i doubt it will increase with more than 5-10%... tops.
I want to revive this post to for a question of my own. Most people seem to have issues with lighting compile time. But for me the Vis step always takes much longer.
As I mentioned above a few weeks ago, my latest Vis step takes 3 days to compile. This is using a combination of a blocksize setting of 1024, numerous hint brushes, area portals in fully enclosed rooms, and about a dozen huge Man-Vis brushes for Culling broad areas of unseen polys.
Obviously, that was too long for continuous work, So I am currently compiling my map with Vis Derived ON, and -no Hints, -blocksize 0. Of course, my map is full of holes when I look at it, but my compile time for Vis is only about 5 minutes this way -- great for testing.
My Vis step was only about 8 hours before I added the Man-Vis brushes. But by themselves, they are insignificant.
So, I'm trying to figure out which aspect of my map is contributing the most to the length of Vis time.
Man Vis
Hint Brushes
Area Portals
Blocksize
Entities
Static objects
detail brushes
Or is it the combination of them that is slowing me down?
I've tried different combinations of settings, but I usually end up with holes, or a lower FPS.
I've added several more areas to the map over the last few weeks. I know I will need to adjust my Man_vis brushes to compensate. But I'd like to test this map out on our server this weekend to see how the FPS holds up. I'm just trying to find a way to save time so my compile will be done on time.
Perhaps I can layer the compile. Doing structural brushes first, then adding in detail brushes on the next compile, then entities, then static obs?
Thanks.
As I mentioned above a few weeks ago, my latest Vis step takes 3 days to compile. This is using a combination of a blocksize setting of 1024, numerous hint brushes, area portals in fully enclosed rooms, and about a dozen huge Man-Vis brushes for Culling broad areas of unseen polys.
Obviously, that was too long for continuous work, So I am currently compiling my map with Vis Derived ON, and -no Hints, -blocksize 0. Of course, my map is full of holes when I look at it, but my compile time for Vis is only about 5 minutes this way -- great for testing.
My Vis step was only about 8 hours before I added the Man-Vis brushes. But by themselves, they are insignificant.
So, I'm trying to figure out which aspect of my map is contributing the most to the length of Vis time.
Man Vis
Hint Brushes
Area Portals
Blocksize
Entities
Static objects
detail brushes
Or is it the combination of them that is slowing me down?
I've tried different combinations of settings, but I usually end up with holes, or a lower FPS.
I've added several more areas to the map over the last few weeks. I know I will need to adjust my Man_vis brushes to compensate. But I'd like to test this map out on our server this weekend to see how the FPS holds up. I'm just trying to find a way to save time so my compile will be done on time.
Perhaps I can layer the compile. Doing structural brushes first, then adding in detail brushes on the next compile, then entities, then static obs?
Thanks.
Diego
HAHAHAHA That's funny. Patience is virtue. Expect to wait a lot longer than 15 mins for a good compile. If you are just checking something then dont even goto the light just let the vis compile and when you see that its done and moves onto initial lighting just close it and go into mohaa and boot it up. The lighting isnt done but you can check what you wanna check unless that includes some type of lighting you are checking.Andy wrote:Well, actually it takes maybe 15 minutes, but thats a long time when im trying to adjust something and I have to tweak and try, tweak and try.
Also make every friggin brush Detail if you want it to compile fast. The vis will run faster than a hooker with your wallet.

- Axion
- Major General
- Posts: 683
- Joined: Mon Sep 29, 2003 5:14 am
- Location: Northern California
- Contact:
LMAO.Gen Cobra wrote:Also make every friggin brush Detail if you want it to compile fast. The vis will run faster than a hooker with your wallet.
"The work of a thousand years is nothing but rubble."
- Dr. Carl Goerdeler (1943)
Visit my mapping site: http://www.freewebs.com/axion9

- Dr. Carl Goerdeler (1943)
Visit my mapping site: http://www.freewebs.com/axion9

-
Bjarne BZR
- Site Admin
- Posts: 3298
- Joined: Wed Feb 05, 2003 2:04 pm
- Location: Sweden
- Contact:
Diego: I'd say it is bad selection of what brushes to make detail and what brushes to keep structural.
I mostly wander around my maps ( In radiant ) and press Ctrl+D ( filter/unfilter detail brushes ) repeatedly to decide what brushes really block anything useful... ( it helps to filter out non VIS affecting stuff like patches, translucent and models first ).
I mostly wander around my maps ( In radiant ) and press Ctrl+D ( filter/unfilter detail brushes ) repeatedly to decide what brushes really block anything useful... ( it helps to filter out non VIS affecting stuff like patches, translucent and models first ).
I think you guys are misunderstanding me. I don't need to do a fast compile to check things anymore. I can already get my vis and light compile down to less than 5 minutes each for fast testing of the map.
I'm more interested now in a way to make the final compile more efficient. That way I don't have to wait 3 days find out I still have buildings popping in and out of visibility.
I've been very dilegent about filtering my details. The only structural brushes I have are my walls, floors, and cielings. Ocassionally a door frame is structural. That is necessary to get the area portals to work.
Stairs, railings, building trims, decor, or stuff like that are all set to be detail. I'm not sure if the entities and static objects are considered when calcuating Vis. But I do have a lot of them.
Its possible I might not be using my hint brushes properly. I don't need them in my rooms that are fully enclosed. They are mostly square and when you are inside one, the area portals kick in and everything outside is not drawn.
But I do have a lot of buildings that have windows in them. I tried to use the hint brushes to encompass sections of these interiors. That way, if you were standing in an area of a building that can not see another area of the building, it would not be drawn. I might have gone a bit overkill on them while gaining very little FPS in the process. My Man Vis quadrants were a much bigger help in that regard.
I was expecting the manual vis data to take precedence over hint brushes, if a hint brush is contained with the Manvis cube. Maybe I was wrong about that and I'm just giving the compiler too much to calculate?
But here is a brief summary of what I was doing in development on my Vis:
First stage:
No Man Vis, No hint brushes, No area portals, 0 blocksize = 30 minute Vis compile. Mediocre FPS.
Second Stage:
No Man Vis, No hint brushes, 1024 blocksize = 4 hour Vis compile.
Third Stage:
Hint Brushes and Area portals added, 1024 blocksize = 8 hour Vis compile or higher. Not much improvement in FPS except inside are portal rooms.
4th stage:
Big chunks of Man Vis added on top of everything else = Much better visibility culling, 15-25 FPS gain, but 3 Day compile time.
A Final light compile would take about 8 hours or more, but I'm not concerned with that.
I'm more interested now in a way to make the final compile more efficient. That way I don't have to wait 3 days find out I still have buildings popping in and out of visibility.
I've been very dilegent about filtering my details. The only structural brushes I have are my walls, floors, and cielings. Ocassionally a door frame is structural. That is necessary to get the area portals to work.
Stairs, railings, building trims, decor, or stuff like that are all set to be detail. I'm not sure if the entities and static objects are considered when calcuating Vis. But I do have a lot of them.
Its possible I might not be using my hint brushes properly. I don't need them in my rooms that are fully enclosed. They are mostly square and when you are inside one, the area portals kick in and everything outside is not drawn.
But I do have a lot of buildings that have windows in them. I tried to use the hint brushes to encompass sections of these interiors. That way, if you were standing in an area of a building that can not see another area of the building, it would not be drawn. I might have gone a bit overkill on them while gaining very little FPS in the process. My Man Vis quadrants were a much bigger help in that regard.
I was expecting the manual vis data to take precedence over hint brushes, if a hint brush is contained with the Manvis cube. Maybe I was wrong about that and I'm just giving the compiler too much to calculate?
But here is a brief summary of what I was doing in development on my Vis:
First stage:
No Man Vis, No hint brushes, No area portals, 0 blocksize = 30 minute Vis compile. Mediocre FPS.
Second Stage:
No Man Vis, No hint brushes, 1024 blocksize = 4 hour Vis compile.
Third Stage:
Hint Brushes and Area portals added, 1024 blocksize = 8 hour Vis compile or higher. Not much improvement in FPS except inside are portal rooms.
4th stage:
Big chunks of Man Vis added on top of everything else = Much better visibility culling, 15-25 FPS gain, but 3 Day compile time.
A Final light compile would take about 8 hours or more, but I'm not concerned with that.
Diego
