My rig performance is so slow! Hide Geometry in a referenced rig?
this is something i experimented with a while ago:
i have a really high-poly character rig that posing any bone takes about 1 frame per second

so, i created 2 versions of the rig, 1 final render, and the other, low poly. same armature, same rig, but different meshes placed in separated collections


for this one, i duplicated the base meshes/ the ones that make the rig understandable, and decimate them with the decimate modifier to the bare minimum to understand what im animating and what the character is doing. i also found out that disabling collections give you a performance boost than just hiding stuff, you just gotta remember to re-enable them by the time youre rendering those.
and if youre really up for it, you can make drivers for all the modifiers you have on all meshes, so that when u disable the collection, you also disable the viewport visibility of modifiers for background objects, that with simplify its the luxury peak of performance, no frame dropping at all, annnnd! since its the same rig you dont have to transfer over the keyframes.
im using this trick on all my animatable character models ever since i started using it, the concept behind it was thanks to the Tangent Animation's Next Gen movie conference. where they used different rig versions to save on performance in heavy scenes.https://youtu.be/iZn3kCsw5D8?t=1436
soooo quick review!

high res version
low res version (both in their own collection)
drive viewport visibility of modifiers to turn them off when in background / not needed
simplify!
solid view
playback set to AV-Sync (this will force for animation to play at a consistant rate regardless of FPS, it can be a bit unstable on eevee)
last but not least, disable any unecesary things youre not using in the scene, you can also make a low res version of the environment youre animating the character in and do the same thing you do with characters. PERFORMANCE AHOY!

now.. i dont know much about proxy objects, but about anything inside a disabled collection pretty much doesnt exist so it should still apply.