"Batch Update Instances Transforms" - marking Render State as Dirty only on last instance

I’m trying to update the transforms of many instances using HISM with a Blueprint.

How is the “Mark Render State Dirty” boolean supposed to be marked true for only the last instance, specifically when using the “Batch Update Instances Transforms” node?

Isn’t the whole point of that node to not have to separately loop through all instances you want to affect? So how do you then only mark the last instance as dirty when a whole array is given at once?
For this node it would probably make sense that it only marked the last one automatically or to have that as an option. Or is that how it behaves by default? If so, the tooltip should probably say so.

I’m not yet sure if I can even use the array version for my use case to be fair. I’m using a for each for now. Anyways, I thought this was worth mentioning.

Any info on this would be appreciated. Thanks.

I -think- with HISMs, they are all marked dirty, even when you don’t explicitly choose so.

Even if you don’t choose so? I suppose the same nodes are used for ISM as well, so perhaps marking as dirty only affects those?

If some random YT video I saw on it a while back is to be trusted, the whole HISM component, meaning all instances, are indeed marked as dirty at once, but if you intend to update all of them, it is better to update them all first and then mark the last one (thus all of them) as dirty. Otherwise, what would happen is this: update instance #1 → mark all as dirty → update instance #2 → mark all as dirty → update instance #3

Not sure if that even matters, though. I’m not entirely sure how the render system works, but I would assume from the name “mark as dirty”, that the render system checks for anything marked as dirty once per frame or some set time and updates them in some way, so even if the instances get marked 100s of times per frame in a row, the actual operation with any real cost (i.e. render update for those marked dirty) is still only done once.

I might of course have it totally wrong, but yeah.
Anyways, my for-each approach seems totally fine, so it’s not like this whole question is all that important to me, but thought I’d ask.

I’m mostly replying for posterity at this point.