As far as I'm aware, armour does not degrade, (much as I believe it should, as this would actually be an issue once heavier types are available) which means that using the default system would be less resource intensive than you might otherwise believe. Extending the default system to encompass terrain penetration however, rather than using a seperate dynamic, would demand that obstacles feature many more values; one for each damage type.
Basically, the advantage of such an extension would be less work for the coders (they don't have to write in an additional seperate dynamic). Mappers would also be given more granular control over terrain resilience, allowing them to determine the penetrative effectiveness of specific types of damage.
Its disadvantages as compared to a seperate penetration/reduction system however, would be that each distinct obstacle requires a far larger set of values, thus requiring consumption of more resources. Penetrative capabilities specific to each weapon, without alteration of damage values and typing aren't possible either.
A hybrid approach might be the ultimate solution, whereby each weapon has a definable penetrative value independant of damage and type, and obstacles feature damage type specific resistances, allowing mappers a signifigant measure of additional control over obstacle penetration, while simutaneously permitting for more customizability with respect to weapon penetration. Of course, this consequently means more work for the coders, and more values for the game to keep track of than either of the solutions alone.