MAX MAP BRUSHSIDES: Difference between revisions
SirYodaJedi (talk | contribs) |
SirYodaJedi (talk | contribs) mNo edit summary |
||
Line 6: | Line 6: | ||
There is no fix for this without changing the brushside structure in the engine to use 32-bit integers. | There is no fix for this without changing the brushside structure in the engine to use 32-bit integers. | ||
{{note|The BSP format already stores brushsides as 32-bit integers, so such a change wouldn't break compatibility.}} | {{note|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 == | == Hammer/Compiled brushsides discrepancy == |
Revision as of 08:27, 19 June 2024


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.

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, 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.