Stop batching at runtime? Still in memory?

During runtime, if you have an object and want to stop it from being batched, can you simply disable it? And if it was being batched previously, will it remain in memory if it is not actually being rendered once disabled? And then can you then re-enable it, and have it get batched again?

I believe that static objects are batched the moment the level loads in the player - I don’t think you can make an object marked static as visible or invisible after the fact due to this behaviour - it is already in the big static mesh.

Dynamic batching is well - Dynamic - so that does account for visibility.

It is certainly possible to write your own batching code that can know that things have changed and recalculate accordingly.

Perhaps make two copies of the scene, in one enable the high poly and in the other enable the low poly and then load the appropriate one?