Yes that last edit hits the nail on the head, they are culled correctly as soon as you look away, but placing a solid wall between you and the entity does nothing, FPS stays the exact same.
I haven't experienced any particular issues with animated textures, and those blocks seems to be culled normally as they are "blocks"
Edit: As far as I can tell there's no distance based culling, it seems to be purely based on render distance
I completely understand from a developers viewpoint that entities are different and there's not necessarily a good fix, but why is the FPS drop still there even if you are looking at an opaque wall with entities behind it? You'd think it would be possible to to do a cull of the obscured entities so they don't impact performance unless you're in the room with them.
As it is right now even if you cover something entirely and look in its direction you are going to take a massive FPS hit, and then you turn your back on the wall (or whatever) and you instantly gain all your FPS again.
So the entity rendering is based on the view (ray casting?) but doesn't take into account opaque blocks from what I can tell...
My issue isn't even related to mobs, I don't know if they need special handling to function (Though from a code point of view they should be able to function just fine without getting actually rendered.
My problem is a lot simpler: I just have a few chunks covered with a layer of minecart tracks (and fence gates though I'm unsure about the impact of those) underground and anyone getting near is lagging like crazy, even though there's no reason for the game to even render them. for all intents and purposes they are static unless manipulated.