Page 1 of 1

Vis compiling time discrepancy

Posted: Sun Apr 20, 2003 5:50 pm
by Ydiss
This doesn't make sense to me.

I'm at the final stages of my current map (details of it here: http://www.alliedassault.com/phpBB2/vie ... p?t=160903) and started a full compile last night.

I have a decent amount of experience in this so I imagined a full compile would only take an hour or two, like my first map did (Crossfire Courtyard).

It's taking upwards of 8 hours to do vis now and it doesn't make sense at all.

Here's the details:

The map is smaller than my last map in .map format (2.59mb compared to over 3mb).

The vis data amounts to only 240952, compared to over 300k for my last map.

I now have an athlon xp 2000+, 512MB DDR ram compared to my last PC on which I compiled CrossfireCourtyard which was a Duron 700Mhz and 384mb PC133 ram.

CrossfireCourtyard took around an hour to VIS, about 2 hours to fully compile.

My current map is taking over 8 hours just to VIS. It's at 99% (and has been for ages, this normally hints at extensive splits in the data, but I'm no expert).

What could be causing the VIS process to be taking so long because it certainly isn't the size of the VIS data and it's not my machine.

I have used detail brushes wherever possible.

Does anyone know what might be causing this?

Posted: Sun Apr 20, 2003 7:20 pm
by Ydiss
This is so frustrating... It's now 2 hours later and still 99% VIS complete.

Just to check I started CrossfireCourtyard compiling and it's at 48% already after only 2 minutes and catching up fast.

Here is a shot of my current map's compile process, after what must be 10 hours - Image

And here is CrossfireCourtyard compiling after what must be 4 mins max - Image

Incidentally, in the time it took me to write this CrossfireCourtyard is now at 62%! It's steadily climbing...

My new map reached this after a good few horus...

Something must be wrong...

Posted: Sun Apr 20, 2003 7:58 pm
by Ydiss
Well, after a measly 20-30 minutes the second compile has reached and passed 99% and has moved onto MOHLIGHT, whereas my first compile (new map, first pic above) is still stuck on 99%.

This is depressing. Last time this happened to me my map had over 2mb VIS data (I didn't know about detail brushes) and it took more than 12 hours to finish the last 1% of the VIS tree.

I can't be bothered with that, I'd rather kill it now and forget it.

I hope someone has any idea what might be causing this map to take so long to VIS... I've put a lot of work into this map and I am not willing to have to wait this long to compile it when it should only take an hour or two (at the testing stage I'll have to fully compile it a good few times before it'll be ready for release... I can't leave my PC sat here compiling for 12+ hours a time).

Posted: Mon Apr 21, 2003 2:34 pm
by Surgeon
Lo m8.....glad to see your back and congrats on the upcoming fatherhood......

As for your problem...the only time I had a similar problem with a never ending VIS compile, it turned out that I had a few errors futher down in the compile process - took me a few hours of waiting to figure this one out... I just set VIS to fast and then found the errors that way. Turned out I had leaks in my map. I don't know if this will help you or not but it might be worth a look to save you scrapping your map.....

Posted: Mon Apr 21, 2003 2:41 pm
by bdbodger
I am just wondering if you have your prefereces set right and do not have the q3map format set if you do your detail brushes won't work right and that will affect vis time .

viewtopic.php?t=2697&highlight=

here is a thread you might read

Posted: Mon Apr 21, 2003 4:36 pm
by Ydiss
Thanks for the replies...

Surgeon: I'm not sure. I have tried it with fast vis and it compiled just fine. I don't have leaks to the outside as such but I do have a few entity leaks. But I had loads of them in dmxfire but that still compiles fine.

That is, both maps are air-tight in the skybox but I have a few entity leaks (probably caused by doors and windows). I wasn't aware these would have such an exponential effect on the VIS process.

It didn't on dmxfire, and that had loads more of these leaks.

Bodger: Again I don't think I have anything set differently with my current map than I did with my other one. Also, I don't have issues with detail brushes saving at all. This is confirmed because I tried to compile the map without extensive details and had over 600k VIS data.

The map now only has 240k VIS data (lower than dmxfire) so it should not take longer to VIS.

That's where I am stumped.

I'm going to try some extensive debugging by deleting chunks of my map on a backup to see which part (if any) may be causing this problem.

Thanks again.

Posted: Mon Apr 21, 2003 6:37 pm
by TheStorm
Ydiss wrote: The map now only has 240k VIS data (lower than dmxfire) so it should not take longer to VIS.

That's where I am stumped.
A map can take longer time to compile even if it has less VIS data then an other map. It all depends on how effective your VIS is. But in your case, if it's been stuck on 99% for a long time, then it might be something that is wrong.

I once made a map that had about 300k of VIS and that map took about 12 hours on full vis and final light. That map did not have effectiv VIS since almost every portal could be seen from any other portal.

Posted: Mon Apr 21, 2003 7:31 pm
by Ydiss
I thought that might be the case but I still can't fathom why it's so drastic.

I'll know a little more when I am done debugging.

Whenever I encounter an error (or potential error) in mapping I use deduction.

In this case I have deleted an entire half of the map and compiled it. The VIS data was reduced right down to 50-60k and compiled as fast as I'd expect (no more than 10-15 mins). My plan was to do this for the other half as well and see how that compiled...

The very interesting thing is I have just now started that process and guess what?

It's chugging like an obese elephant at only 96k VIS.

My guess is the "bad vising" you refer to, Storm, may well be in that half... I'll cut it down bit by bit if I have to to see where it is.

I'll let you know if I do actually come to a conclusion. I hope I do...

If not I may have to redesign the map to have 4 definite quarters, each cut off from the other cleanly by Structure brushes. I'd hate to have to do that but it might be my only option.

Posted: Thu Apr 24, 2003 9:50 am
by Ydiss
Problem solved!

First off I'd like to thank everyone who replied in an effort to help me and give advice.

Biggest thanks goes to Storm, though, who pointed me in the right direction.

It was the lack of efficient VIS that was causing my slow compiles and, as it turned out,

poor performance, as Storm said. What I had to do was work out why and where and how to fix

it.

I hadn't encountered this on my last map as the VIS worked itself out due to the structure

(One large building surrounded by gardens). So this was all new to me.

As I said I'd do I split the map into 4 quarters (by using 2 crude brushes stuck right

down the middle of the map along the X and Y axis). I did this to see how the map would

compile and perform. It compiled very quickly (less than an hour) which proved Storm's

theory but annoyingly the map ran very poorly (approx 30-40 FPS everywhere except when I

was right up against one of the 4 crude dividing walls or edges of the map). Obviously the

4 quarters were still badly designed individually, VIS-wise. I had a lot of work to do.

So, I was getting desperate because there was no way I could impliment these 4 walls

without ruining the map and still it ran like a pig.

I needed to use the same theory but I had to do it as covertly as possible and I had to do

it everywhere. I started looking at the map from various angles and tried to work out what

areas I could see from where and, more importantly, what areas the compiler would see. I

started seeing lots of points where LOS was not blocked for large areas. When I compiled

these individual areas it didn't cause a problem but put them all together in a big 4-way

open map and suddenly it started making sense.

I deleted windows (lots of them), added walls (even more of those) to areas inside

buildings to create partitions behind potential leaks (essential doorways and windows) and

hopefully block LOS from key areas.

My theory was to create the 4 quarters I had crudely implimented before, but to do it

inside the walls that already existed and also in a way that would impact on the map

the least.

I wasn't having much luck. No matter what I did it still took forever to compile. So, last

night I gave it one last ditch attempt just before I went to bed. I added some crucial

walls, moved some doorways and reduced the tallest building by a 3rd in height (these were

the most drastic asthetic changes I did - everything else was a collection of lots of

little changes). I started the compiler expecting it to run through the night and for most

of the next day. I just wanted to let it compile so I could at least see how my map

performed, even if it took 2 days to compile!

I went to sleep racking my brain for ideas on how to completely redesign the map. I had

ideas to remove huge areas, add huge buildings and close up long avenues - completely alter

the map's structure from my original plan. I was that sure it wouldn't work.

But I need not have bothered :)

I woke up this morning and turned on the monitor, looked at the compiler: Finished. In

less than 5 hours (at least - it could have been shorter, I won't know until I next

compile).

I sat down quickly, copied the BSP into my /maps/dm folder and loaded up the map inside

MOH.

It runs like a dream.

On my athlon XP 2000+ 512 DDR ram and 64mb Geforce3 the map runs a smooth 50-70 FPS from

the centre looking out (in any direction). From one edge looking down the longest avenue to

the other edge it runs approx 40-50 FPS (if not more). The lowest it goes is 30-40 FPS and

that's only in one or two areas (all of which I will work on to improve this, now I know

what I'm doing).

It never dropped below 30 FPS and for 90% of the map it runs above 70-90 FPS.

Basically, it is roughly equivalent to/better than the worst areas in Bridge/Crossroads on

my machine. For most of it it runs like Southern France and DV, though. I still need to

test it in a game with players (and this will be done soon) but the majority of the hard

work is all done.

You have no idea how happy I was this morning.

So, thanks again for the help. I had to work bloody hard to figure it out myself but

without the suggestions here I may not have started looking in the right place.

Now I can finish the lighting and touch up all the alterations I've implimented this week

(a lot of them are very crude brushes - I just wanted to get the VIS issue solved).

I'll post the map for review as soon as it's been extensively tested.

If anyone wants more info on the actual changes I have made (for future reference) I'll

post a link to the "In progress" thread I have running at alliedassault.com forums tonight.

It should provide a good example of how to create effective VIS (and, of course, how

not to).

Thanks again!