Sorry for the late reply.
I am glad to see that you have a good grasp on the problem. This same scenario has been brought to me many times over the years and generally people don't understand the fundamental challenges of doing this in BSP (especially in Goldsource).
When starting with a premade mesh, you are always going to run into a problem with a lot of work needing to be done for this level of complexity. There are three solutions:
- Manually build BSP around sections
- Use ShellVex
- Use V-HACD
Manual BrushesBy manual, I'm not saying completely manual. But you could attempt to use the Hull functions in WW to select sections of your mesh that should collapse to a single brush and use
Create Hull From Selected Faces and Hide to go through and make convex brushes as needed. This would take some time and would probably want to apply a Brushify modifier with Snap to Grid setting turned on in the modifier.
Use ShellVexShellvex will make a brush for each polygon of the source geometry with functions for snapping to grid, etc. While it will likely be cleaner than the method you mentioned, it will still create one brush per original polygon. It's probably better to use this on carefully designed source geometry than fully sculpted landscapes.
V-HACDThere is a function in Hull Helper to create a convex decomposition of a mesh with V-HACD. This requires a lot of tweaking and testing of the values. It may end up creating geometry too complex for Goldsource brushes, but it may be worth a try. I'd always add a Brushify modifier when done with grid snapping turned on in the modifier.
In all cases, to make an object export as a brush, it needs to be tagged as a brush. In the level design toolbar, it's the icon with brick texture. In the menus it is WW > WW Level Design > Set Selection as Brush Geometry. Note if you have an object that has multiple elements (where each element is a brush) you need to tag it as a concave brush.
Here are a few helpful links:
- Hull Helper (http://dev.wallworm.com/topic/19/hull_helper.html)
- ShellVex (https://wallworm.com/store/shellvex)
- Brushify (https://wallworm.com/store/brushify-modifier)
- Porting Levels into Source (http://dev.wallworm.com/document/200/porting_levels_into_source.html)
Some info may be out-of-date so don't be afraid to ask for clarification. Hopefully this helps some in your adventure. Please share your journey here.