|
Post by ranth on Oct 26, 2013 19:46:54 GMT
Hello!
I'm working on my surf map and it's starting to get pretty big, and one thing I have noticed in my compile log's memory/object table is that my waterindices is starting to close in on 100% currently it is sitting at around 75.6% and I'm only half done.
I figured, I have to do a bit of optimizing, so I looked up waterindices, and I couldn't find anything helpful. Mostly people said waterindices are when brushes overlap so fixing that would decrease waterindices , however in my testing it didn't, overlapping detail brushes actually decreased it...
After a little messing around with it I came to this:
1: Sometines the bigger the brush the bigger usage of waterindices 2: Low lightmap also cause higher waterindices 3: A lightmap above 16 sometimes causes waterindices to decrease, however a lightmap of 17 have the same effect as one of 256 4: Texturescale doesn't affect waterindices 5: World brushes doesn't affect waterindices 6: Misaligned brushworks effect waterindices
Those are some things I know affect waterindices... However I have no idea why, and I find it very confusing...
So my question is: Does anyone know for certain what waterindices are, and how to effectively decrease them?
|
|
|
Post by Zeph on Oct 27, 2013 10:25:36 GMT
Not overlap, but when two brushes share the same FACE.
If a world brush shares the same face as another world brush, the section of the overlap is automatically culled (NoDrawed). However, if a func_detail shares the same face as a world brush, automatic culling does not take place. Therefore it is IMPORTANT to NoDraw the func_Detail face which shares the same face as a world brush. For example, the bottom face of a crate on the floor.
This is why, when you overlapped the brushes, you no longer shared the same face, and hence reduced the number.
|
|
|
Post by ranth on Oct 27, 2013 11:36:19 GMT
Ah, I see.. It does make a difference however in my test map I only went from 258 Objects to 213 by using nodraw in between. Might be enough for me to finish my map. Though it would be nice if there is another way of decreasing it, other than removing stuff.
|
|
|
Post by ranth on Oct 27, 2013 15:22:19 GMT
I found a way to decrease waterindices! Instead of using func_detail someone on tf2maps.net suggested that one could use func_lod instead, and it works pretty well. forums.tf2maps.net/showthread.php?t=3880
|
|
|
Post by Zeph on Oct 27, 2013 16:06:25 GMT
Ok, func_lod basically fades out after some distance, and therefore cheaper.
I can only guess from this that you have many brushes turned into one func_detail. If one of those brushes is visible, the WHOLE func_detail gets rendered. It is important to only select the brushes which are seen at the same time to become one func_detail, and to separate more spaced out objects into multiple func_Details.
For example, a stack of crates can all be made into one func_detail. A row of pillars should each be their own individual func_detail.
|
|
|
Post by ranth on Oct 27, 2013 16:31:01 GMT
Damn, right on. I have a habit of making lots of things into a single func_detail, mostly things that belong together, all the walls in an area and stuff like that... Thanks for the info!
|
|
|
Post by Zeph on Oct 27, 2013 17:41:40 GMT
You're welcome.
The faces of any func_detail which touch world geom (and therefore are never seen by the player) must be NoDraw, remember.
Have fun.
|
|