MAX MAP BRUSHSIDES

From Valve Developer Community
Jump to navigation Jump to search
English (en)中文 (zh)Translate (Translate)

MAX_MAP_BRUSHSIDES occurs when your map exceeds the maximum defined brush face amount.

The current limit is 65536, due to the engine internally using 16-bit integers (also known as "shorts") to count the number of brushsides. The maximum value of a 16-bit unsigned integer is 65536 (2^16), hence the limit.

There is no fix for this without changing the brushside structure in the engine to use 32-bit integers.

Note.pngNote:The BSP format already stores brushsides as 32-bit integers, so such a change wouldn't break compatibility with existing maps.

Hammer/Compiled brushsides discrepancy

The term "brush sides" is a bit misleading, if you've paid attention to your brush sides in Hammer before, you may have noticed the compiled result was higher.

This is because when compiling, it includes the bounding box of a brush (required for QPhysics), which can be up to an additional 6 brushsides per brush. If a face is lined up with the edge of the bounding box(meaning not angled in any way) it will not add an additional brushside.

Example: A 5 sided pyramid shaped brush with the bottom face lining up the bottom of the bounding box. While the brush itself is only 5 sides, it will count as 10. The 5 extra brushsides come from the bounding box.

As rule of thumb for figuring this out easier. 6 + angled faces = brushsides per brush

Instance discrepancy

Putting angled geometry in an instance will lower brushsides. This can be easily observed by compiling a rotated building in the main map, then in an instance, and comparing the brush side count. It is unknown why this works, but it messes up some QPhysics calculations.