The viewport cache is recalculated on time change, while the underlying volume representation is recached based on the validity interval of the source geometry. I haven’t looked at it in a while, but I think this behaviour is related to the ugly hack we use to get around the Max modifier stack. If you keep the viewport spacing high (meaning fewer particles) this should be less noticeable.
For sure I can deal with the hidden thing. What happens when an object is hidden, but another object has a reference to it and depends on it? Should it still not update or what? As far as I know there isn’t a spec from Autodesk about what objects SHOULD do in all these situations.
Also on this topic, I’m looking at rewriting the PRT objects to be more Max-like but it seems like that is going to kill existing modifiers being able to run on them. Is this a deal breaker?
I’d like to expose a modifier SDK for particles to deal with losing Max modifiers in order to make up for the loss of existing Mesh modifiers.
I’m still experimenting to see what a real Max object SHOULD do in many situations, so I’ll make a list of why this is a good idea later and we can mull it over. There is a distinct chance that its related to how much I hate the code-base underneath, but that isn’t a reasonable justification for throwing out something that already works.
Don’t forget that I have extensive practice at delegating those support questions to Bobo. . .