Discussion in 'Mapping Questions & Discussion' started by Seitan, Jan 24, 2017.
Do I have to worry about them?
Nope, any world brush face (or partial face) touching the void will be culled automatically by the compiler.
Thanks, also what about these?:
Textured brushes between walls
Surprisingly few textured-but-not-seen faces need dealing with. And none do require it. Compiler culls them if they face a world brush, or void, which removes lots of the faces. Those that you do better off nodrawing are the ones that are compiled but never seen, such as the faces that are hidden by an entity or a prop, as well as the unseen faces of brush entities, or just facing outwards of the level.
And yeah, if you miss some by accident, you can not even notice it. Badlands does have some faces not nodrawed I can refer to.
For textured brushes against walls not exposed to the void, you'd want to nodraw them but the performance hit isn't typically big at all.
Though it's worth noting that putting nodraw on your non-seen faces will let you use the feature to turn on/off those faces, which I find is helpful for flying around the map in Hammer at interior areas instead of simply seeing yellow everywhere.
A while ago I made an experimental map for testing how brush faces were culled, in different circumstances. I wanted to see which faces were culled, so I could avoid needlessly texturing things with . You may find this image useful:
And here is the map: MAP.
World brush faces against other world brush faces will be chopped and culled.
World brush faces will cull func_detail faces if those faces are entirely covered by the world brush face. Partially-exposed func_detail faces will be rendered in full.
Two faces from the same entity (func_detail, func_brush, func_door and so on) which touch each other will be chopped and culled.
func_detail covering world brushes can cause ugly shadows. func_detail doesn't chop and cull world brush faces.
Note that faces belonging to dynamic brush entities which are covered by world brushes are not culled, likely because such brushes are intended to move, so culling would interfere with their appearance.
For stairs you can do a few things. You can chop the steps themselves into triangles, so their backs are diagonal, and put a new triangle world brush behind them that will cull the wall and floor hidden by the stairs. func_detail the steps so they don't cut visleaves. Alternatively, leave all your stairs as world brushes, then put a diagonal face along their slope, inline with your / brush, which will trim the portals created by the steps during VBSP so they don't cut the surrounding visleaves. Or use props for your stairs and fill their back in with a world brush or two for sealing and culling.
Separate names with a comma.