Optimizing During Early Alpha or After everything has been placed.

  • If you're asking a question make sure to set the thread type to be a question!

Optimize Early or late?

  • Early

    Votes: 21 70.0%
  • Late

    Votes: 9 30.0%

  • Total voters
    30

Vigilante212

L420: High Member
Dec 21, 2008
481
33
I had a debate with a friend about optimizing maps. I said it was easier to do it during the alpha stage he said after everything was in. What does everyone else think.
 

(s2a) yahodahan

L3: Member
Apr 22, 2009
144
18
I would like to add (from my own, unfortunate, experience)-

During the Alpha build, while perhaps don't get too fully into area portals, vis, etc- plan ahead to make sure these can be implemented best! A few simple changes in Alpha can negate the need for headaches upon headaches in Beta, when suddenly it's runnin' at 5fps in certain areas...
(cough*cough*- me)
 

Psy

The Imp Queen
aa
Apr 9, 2008
1,706
1,491
I've optimised Nightfall already using areaportals and hint brushes. It'll ease the transition into detailing later on as I won't have to worry too much about how to control visibility and whatnot.
 

Ida

deer
aa
Jan 6, 2008
2,289
1,372
In my alpha map, I currently have what I consider absolute standards (nodraw faces and func_detail), as well as some areaportals because they're very simple and ensure that my map runs smooth. It's all I need at the moment since I don't have a crapton of details to render.

In beta, I plan to do elaborate optimisation with hints and skips and all that, not to mention all other existing methods (tweaking my lightmaps, setting prop fade distances and stuff). I disagree with The Political Gamer about finalizing optimisation in the RC, because optimisation also requires testing. You need to know whether it runs smooth or not, and where the bad areas are in terms of FPS.

EDIT: Also, your friend's argument about it being easier to do in alpha (due to clutter, or a lack thereof, I presume he means...) is no good. Just use VisGroups to get the unnecessary stuff out of the way.

EDIT: Oh, and there's a poll. :p I voted for late, if just because I don't think you should do it all as soon as possible.
 
Last edited:

Caliostro

L6: Sharp Member
Jul 6, 2009
261
110
Well, the way I see it, basic stuff (no_draws and such) in alpha, just the necessary to support the basic layout testing. Remember, you're going to be doing a lot of changes, some in a large scale, in alpha, that's why it's alpha, and the more stuff you have around the more you gotta mess with and adjust every time you need to change something.

Once the basic layout of the map is defined and accepted, we move on to Beta, where most of the core bugs were supposedly ironed out. That's when you detail, and optimize (which, in a way, is part of detailing). At this stage it's accepted that the only changes you ought to be doing will be to the actual details, optimization and assorted minor stuff.
 

Shmitz

Old Hat
aa
Nov 12, 2007
1,128
746
Alpha: no_draw
Beta: Area Portals
RC: Hints, Skips, etc.
Final: All of the above.

Thats how I see it anyway.

It's pretty much opposite of this. Nodraw faces are the least important thing as they don't need to be planned as part of a level's major geometry like visibility control does. Also, skip faces have nothing to do with optimization.
 

A Boojum Snark

Toraipoddodezain Mazahabado
aa
Nov 2, 2007
4,775
7,669
None of the above. There is no order to do optimizing in. Any and all of the optimization methods should be done as soon as they are needed, where they are needed. Or else if they are just plain easy to do. (I put area portals in my tiny Stormcaller alpha just because it's really darn easy to slap them in some doorways)
 

Waif

L7: Fancy Member
Mar 22, 2009
412
125
I try to get my optimising started as soon as possible, the only thing I don't really have in my alhpas are proper prop fade distance, occluders, and really well placed hints- mine are just in the obvious generic spots :)

A quick question of my own, does disabling vphysicson a prop (making them non solid) help optimisation?
 

Shmitz

Old Hat
aa
Nov 12, 2007
1,128
746
None of the above. There is no order to do optimizing in. Any and all of the optimization methods should be done as soon as they are needed, where they are needed. Or else if they are just plain easy to do. (I put area portals in my tiny Stormcaller alpha just because it's really darn easy to slap them in some doorways)

:facepalm

That's kind of a generic, tautological answer that could just as easily apply to putting on clothes (which has a practical order) as it does optimization.

In other words, sure, all forms of optimization should be paid attention to at all stages, but there is still a practical sense of tackling the majority of a certain form of optimization before worrying about others, because they are needed sooner and in places that occur earlier in the development process.
 

Nineaxis

Quack Doctor
aa
May 19, 2008
1,767
2,820
I don't start worrying about optimisation entities and tool textures until beta. Naturally, in alpha, optimisation should be in the front of one's mind when laying the initial brushwork. Because an alpha is just simple geometry (or should be), I don't worry about taking large steps to optimise until there is detail and optimisation is actually needed.
 

Vigilante212

L420: High Member
Dec 21, 2008
481
33
Ok from what i gather most people do the simple optimizing first and the more complex stuff later. I like to do the nodraw as soon as possible, just because it lets me compile my map alot faster. and I will stick in some area portals if needed.
 

Nineaxis

Quack Doctor
aa
May 19, 2008
1,767
2,820
Ok from what i gather most people do the simple optimizing first and the more complex stuff later. I like to do the nodraw as soon as possible, just because it lets me compile my map alot faster. and I will stick in some area portals if needed.

Nodraw has zero effect on compile times. It removes unnecessary faces from being rendered in-game.
 

lucky

¯\_(ツ)_/¯
May 25, 2009
583
145
Surely nodrawing a side means it skips working out if needs to be nodrawn, and hence there is less to do for the compiler?
 

ParanoidDrone

L3: Member
Feb 19, 2009
147
11
I voted "Late" on the grounds that, if you're still in alpha, you'll probably make some rather big changes that will render any in-depth optimization moot. Basic stuff like func_detail stairs, etc. is a given and sort of basic, but hint brushes, areaportals, and probably other stuff I'm forgetting is best left until you've at least finalized your basic geometry imo.

Also what ABS said.
 

A Boojum Snark

Toraipoddodezain Mazahabado
aa
Nov 2, 2007
4,775
7,669
Surely nodrawing a side means it skips working out if needs to be nodrawn, and hence there is less to do for the compiler?
There isn't any "working out" as VBSP will chop up the map and discard faces just the same. Even if a face is nodraw it still has to process the face to determine if it shall exist or be culled.

Of course, nodraw behind things such as displacements are an entirely different issue, as it cuts down on light processing, but then those kinds of things should never be anything but nodraw in the first place.
 
Jan 31, 2008
555
1,482
I use nodraw properly all the time, even when I'm just making the basic layout. Both hints and areaportals are also created during the alpha stages. When it reaches beta I usually do func_lod and fade distance optimization. At the release candidate I do lightmap optimization.

Those are my 6 optimization techniques.
 
Last edited: