Compile Times

If you're looking for mapping help or you reckon you're a mapping guru, post your questions / solutions here

Moderator: Moderators

User avatar
Gen Cobra
Major General
Posts: 739
Joined: Tue Jan 28, 2003 4:26 pm

Post by Gen Cobra »

I see what you are saying but what you are doing requires the computer to run quite a few processes. There is little to nothing you can do to bring it down very far without saccing a lot of what you are doing. What your talking about is prob not gonna happen.
Image
crunch
Major
Posts: 348
Joined: Sat Jun 14, 2003 2:34 pm
Location: USA
Contact:

Post by crunch »

Most likely, the single highest contributing factor to the compile time in your situation Diego, is the use of the area portals.

I say this because in order for area portals to work, the brushes enclosing the portaled area must all be structural. Structural = longer compile times.

But, as GC said, it becomes a question of "Do I want short compile times with poor performance, or do I want longer compile times with good/better performance?"

The key is finding the proper balance. And this balance is best started with the actual layout of the map. With a lot of buildings with windows, and long viewlines, the layout of the buildings themselves becomes very important for optimizing both vis compile time, and FPS as well.

In Alsace: The Strasbourg Initiative, Von and I optimized the vis compile in a final setup based on the global layout of the map itself. This also included optimal FPS at the same time.
Area portals were not used in abundance, as our manual vis accomplished the FPS/compile goal more effectively. Entire buildings in Alsace were made detail so that the compile time could be shortened, while the man-vis setup allowed us to keep FPS up.

The key to short vis compiles is limiting the viewportal chains.
Sure, you have a lot of portaled buildings, and when inside and the portal is closed, FPS is great, and vis chains are virtually non-existent. But what about outside those portaled areas?

Sure, the interior portal itself is not drawn, but what about the other side of the building? The viewportals are still there unless you manually cut them off.

Remember: shorter portal viewchains = faster compile.
Image
Bjarne BZR
Site Admin
Posts: 3298
Joined: Wed Feb 05, 2003 2:04 pm
Location: Sweden
Contact:

Post by Bjarne BZR »

You sound like you know what you are doing. As for hint brushes: I really havent been able to get them to work in any efficient way so I've never used them seriously. And as you say: adding them increased compile but did not affect FPS. Try removing them all together. Just as a test.
As for blocksize: if you have not designed your map from the placement of these bocks from the start, I'd set "blocksize 0" as they may just as well make both FPS and compile times worse ( or better... test it ).

In general it is very hard to recommend a VIS design without actually seeing the map and working with it a few days. The best advice I can give is to make sure you understand what VIS is and how it works, and then try it in a lot of different ways in your map. Sometimes you may find an area of your map that is just flawed in its basic design, making it impossible to do good VIS and you may need to consider a re-design. Kill your darlings! Put the players perspective first...
Admin .MAP Forums
Image
Head above heels.
User avatar
diego
Captain
Posts: 245
Joined: Sun Dec 21, 2003 10:47 pm

Post by diego »

crunch wrote:Most likely, the single highest contributing factor to the compile time in your situation Diego, is the use of the area portals.
That's something to look into. They have proven very effective in turning off details in my most complicated interiors so I have to keep these. But I've made another pass at them to make sure they were placed as correctly and as effieciently as possible. I am also using a lot of custom interior textures so it is very helpful for me to turn them off when I don't need them.
crunch wrote:The key is finding the proper balance. And this balance is best started with the actual layout of the map. With a lot of buildings with windows, and long viewlines, the layout of the buildings themselves becomes very important for optimizing both vis compile time, and FPS as well.
Now you tell me. :)

Actually, the major design of this map was created by someone else and I don't think he every took into account the Vis setup when he was laying it out. Since I took it over, I have been adding a lot of new areas and details. But I have to work within the framework he initially established. FPS was't a problem before because he had no lighting and models, and a very limited assortment of textures.

To illustrate:
Picture A Castle Keep in the center, with 50 yards of open ground surrounding the keep. A High wall surrounds the ground, and there are more buildings against the inside of walls. The overall design is rougly rectangular in shape.

(sorry, I know a pic would be useful, but I have no way of hosting one)


Before I started working on Vis, All the buildings on the north side of the "Keep" would be drawn when you were on the south side. The same for the East and west. I tried setting the blocksize to 1024. But since the map wasn't layed out to properly take advantage of that it did not help much.

From there, I added the big chunks of manvis to cull out buildings on the opposite sides of the "Keep". I also use them to cull animated trees whenever possible. This helped the vis quite a bit, and boosted my FPS the most. But there were still a lot of holes.
Bjarne BZR wrote: As for blocksize: if you have not designed your map from the placement of these bocks from the start, I'd set "blocksize 0" as they may just as well make both FPS and compile times worse ( or better... test it ).
Surprisingly, my holes were closed up quite nicely when I use a blocksize of 1024 instead of 0. But That certainly contributed heavilly to the 3 days compile.

I made another pass at detail objects by adding interior walls that divide up rooms but don't obscure your view enough to be worth while. I even added the 2nd level floor from 2 story buildings if they are not completely isolated. I was also already considering dropping my Hint brushes to see what happens.

So I think I'll try these suggestions tonight with blocksize Off and possibly no ManVis as well. Since I've added new areas to the map. I'll need to readjust the cubes to accommodate the changes.




By the way, despite any flaws in the original layout, and my own inexperienced changes, that 3 day compile gave me a consistent 75-90 FPS inside and outside at 1024 resolution and Maximum detail settings running on a 2.5 ghz with 512 ram, and an older ATI 64 video card. I hope to keep that FPS as much as possible when we take the map for a test run on our server this weekend.


Thanks for the help. I never intended to get this deep into the technical aspects of level design. All I wanted to do was learn how to do the lighting so I wouldn't have to play a level with 75% ambient lighting. I guess I didn't know what the hell I was getting myself into.

But I having a lot of fun with it. I'm not making the map with any kind of authenticity. It's full of clan-related gags, traps, and secrets with personalized rooms for each member. I can honestly say you won't find another map like this one out there :)

You can download the original BK Town 1.0 by The Omega to get a solid idea of the layout here:
http://www.blitzkriegclan.com/Downloads/BK_town.zip

You can also see screenshots of my work in progress in our General Discussion forum under the BK Town 2.0 thread.

http://www.blitzkriegclan.com/forum/
Diego
Post Reply