Optimization scares me.

hpkomic

L1: Registered
Jun 30, 2009
38
3
Currently, I am at the second alpha of my CTF map, but before I can feel comfortable uploading it for playtesting, I need to optimize it. The only problem is, optimizing seems like some big, scary step to me, and I am unsure of where to begin. Granted, I have several guides bookmarked, and I've done the initial construction with No Draw textures, and only textured the viewed faces. Things like hint, skip, and areaportals just intimidate me though.

While I've read these various guides a few times, the only thing that seems missing, in my opinion, are some examples to assist in deciding what steps to take in specific situations.

For example, my map is comprised of two bases connected by a rather open area, so how would one optimize that? How to you optimize places that are "outside" compared to "indoors".

At this point, as fun as my map is right now, and as functional as it is, I feel I need to do this optimization step. The only problem is, I'm a bit overwhelmed with working on it.

I guess in general, this thread could be about your optimization tips and/or woes. Is it really as intimidating as it seems to me, or are you veteran mappers able to fly through it?
 

Knight-Errant

L3: Member
Mar 12, 2010
131
36
Well, I was in the same boat and had said to myself at one point, how did Valve do it? You have to take a moment and looks back at the SDK maps that Valve had released and wonder why they optimized in certain places and why. Then look at my map and its general structure compared to theirs as well.
 

hpkomic

L1: Registered
Jun 30, 2009
38
3
Well, I was in the same boat and had said to myself at one point, how did Valve do it? You have to take a moment and looks back at the SDK maps that Valve had released and wonder why they hinted in certain places.

Yeah, I've perused many of the maps, but it still feels all greek to me. Eventually, if I look at them enough, they'll have to make sense, right?
 

grazr

Old Man Mutant Ninja Turtle
aa
Mar 4, 2008
5,441
3,814
To be honest i've found that since the introduction of areaportals, in addition to the nature of the Source Engine's evolution in allowing for grander out door areas, hints have become rather situational tools for optimisation. They're more effective at reducing compile times than as a way of controlling render loads. 90% of the time i've considering using hints an areaportal has done a far more efficient job.

If you can use areaportals properly that's 50% of optimisation for Source. 25% is knowing how to control visleaf formations with the aid of func_detail's and the shape world geometry, 15% is occluders and prop/overlay fade distances, and 10% is actual hints.

But it all depends on the circumstance of course. Those estimated percentages probably wouldn't be accurate for all maps. Just round about, for most of them.
 
Last edited:

Passerby

L2: Junior Member
Mar 27, 2010
99
15
To be honest i've found that since the introduction of areaportals, in addition to the nature of the Source Engine's evolution in allowing for grander out door areas, hints have become rather situational tools for optimisation. They're more effective at reducing compile times than as a way of controlling render loads. 90% of the time i've considering using hints an areaportal has done a far more efficient job.

If you can use areaportals properly that's 50% of optimisation for Source. 25% is knowing how to control visleaf formations with the aid of func_detail's and the shape world geometry, 15% is occluders and prop/overlay fade distances, and 10% is actual hints.

But it all depends on the circumstance of course. Those estimated percentages probably wouldn't be accurate for all maps. Just round about, for most of them.


how do you use areaportals in your maps i pretty much only. use them to seal off expensive rooms
 

Micnax

Back from the dead (again)
aa
Apr 25, 2009
2,109
1,585
how do you use areaportals in your maps i pretty much only. use them to seal off expensive rooms

Well, if you look at how much Valve uses them...

hammer-3.jpg


You should really try and aim to have EVERYTHING areaportaled for a final release, just that little bit more optimisation can go far.

Take a look at this thread:
http://forums.tf2maps.net/showthread.php?t=10426
 

Passerby

L2: Junior Member
Mar 27, 2010
99
15
Well, if you look at how much Valve uses them...

hammer-3.jpg


You should really try and aim to have EVERYTHING areaportaled for a final release, just that little bit more optimisation can go far.

Take a look at this thread:
http://forums.tf2maps.net/showthread.php?t=10426

i always tried not to areaportal everything was under the impression that the culling was calculated in real-time and would degrade performance if the engine had to calculate a bunch of them at ounce so as a result iv olny used them to seal off expensive areas that have lots of props or complicated geometry.
 

grazr

Old Man Mutant Ninja Turtle
aa
Mar 4, 2008
5,441
3,814
i always tried not to areaportal everything was under the impression that the culling was calculated in real-time and would degrade performance if the engine had to calculate a bunch of them at ounce so as a result iv olny used them to seal off expensive areas that have lots of props or complicated geometry.

Occluders are worked out in real time and can be used badly if they are not fully understood, but areaportals arn't as detrimental to resources, especially considering how versatile they are at culling render loads. It's almost impossible to over saturate your map with areaportals unless you do it on purpose/have a bad layout design.
 

Passerby

L2: Junior Member
Mar 27, 2010
99
15
Occluders are worked out in real time and can be used badly if they are not fully understood, but areaportals arn't as detrimental to resources, especially considering how versatile they are at culling render loads. It's almost impossible to over saturate your map with areaportals unless you do it on purpose/have a bad layout design.

ah thanks a lot of articles said they use a lot of cpu power to cull things in real-time so i mainly used them where there was a hell of a lot of things i didnt want rendered.

i will test them out on everything now and see what the fps and cost differnece is