Occlusion Culling ISMs or HISMs per instance.

Is it possible to occlusion cull individual ISMs or HISMs?

For example, if I use the following blueprint:

What I find, using freezerendering, is that as long as one of the instances is rendered, then the second instance is automatically rendered as well, even though it’s not visible to the camera. If neither is visible then both are culled.

I get the same results with HISMs

Is there any way to set either up so as to have per instance occlusion culling?

Apologies for the accidental duplicate thread.

i dunno if the engine does or should do that already, but… in theory you’d just have to sort the instance transforms (basicly just the location) by depth/distance form the camera. so you render front to back. you gotta do this every frame, tho. or you could do it on an interval or in “chunks”/batches. it is a lil computational involved.

you will compute all the vertices but it sould reduce instance pixel overdraw. that would optimize this case when some instances are rendered later and are in front of others. simple early-z raster optimization. this will obviously only work for opaque materials and to some degree masked material on the pixel level. doesn’t do much for (god forbid) translucent materials, obviously.

1 Like

Thanks for the suggestion, I’ll look into it and see if I can put something together. It might be challenging to do it with any efficiency in blueprint, but probably in some kind of batches it could work.