The resource usage of blocks is limited by the programming of the system. This is necessary because we live in a physical world where resources have costs and Bitcoin's security depends on participation being widespread so the costs can't be too great, along with other reasons.
Users compete with each other to get access to the limited resources by bidding with fees. This is how transaction fees arise.
Prior to segwit the limit was effectively just size (there are other conditions but they're seldom hit).
One problem with this is that most of the size of transactions is signatures which are prunable and never access after they are validated, so they cheap for the network to deal with but most of the long term resource costs of a transaction are its outputs-- which go into a database which every node must have rapid access to. But additional outputs add very little size (even less than the amount of space they take for the node to store them) to a transaction. This creates bad incentives where people are encouraged to make tiny outputs that never get spent, burdening the system.
Segwit eliminates the size limit and replaces it with a weight limit. The weight is computed so non-witness data (e.g. the above outputs) count 4x as much towards the limit as witness data (signatures). The fixes the incentives by balancing the costs of signatures vs outputs to be roughly equal. It's also how segwit achieves a capacity increase in a way which is fully backwards compatible with old nodes.
Finding a way to address the UTXO incentives issue was a major sticking point and breakthrough that made it possible to get many people to support any capacity increase at all.
You can see more about it here: https://segwit.org/why-a-discount-factor-of-4-why-not-2-or-8-bbcebe91721e
As to why Bitmain would complain about it, I am aware of no sensible reason. Unfortunately, some foolish/malicious people have incorrectly described this as _lowering fees_ and perhaps Bitmain is laboring under this misunderstanding, but this change in calculation does not lower fees-- it effectively shifts some of the fees from the time a coin is spent to the time a coin is created-- at all except to the extent that it increases capacity and additional capacity will likely lower their fee income. Even a fairly small increase could dramatically lower miner fee income in the short term. (But they claim to WANT an increase in capacity, one even bigger than segwit.)
This is economically unsound and flawed. Bastiat: What is seen and what is unseen - the unseen part has not been recognised by developers who specialise in codings and not economics.