You can of course change communities at runtime using the VACM MIB. Using v1, v2c, and v3 concurrently in arbitrary combination changed at runtime is possible too.
Just study the capabilities of the VACM MIB and the SNMP-COMMUNITY-MIB.
Hope this helps.