I'd love to help but I don't know much in this area. I hope I'll learn more in the coming days, and be worthy of testing Android-related PRs :)
paramat wrote:Low performance is inevitable due to the low power of the device, not a fault of the code.
Poor performance is indeed an issue, but that's not just due to the device and it's low specs. I'm sure shaders (and rendering in general) can be optimized to a large extent.
paramat wrote:The code is mostly identical to the desktop code but with adjusted settings.
That is a problem by itself. ;)
An Android game is designed for phones and is very optimized due to the fact that all devices running it are very weak and low-spec. But MT uses the same code for its Android port which is obviously targeted at full-fledged computers. This means performance would obviously suffer on phones, and other weak devices. While tweaked settings reduce the performance hit to a certain extent, they worsen the user experience, and also don't tackle the root cause.
Due to the severe shortage of dev time, we can't afford to maintain a codebase for Android, that's separate from the main one, but we can surely optimize stuff here and there, which is bound to improve performance on all devices across the board.