There is a bug with effect composer, unrealbloom, and instancedMesh

Sorry I already removed the feature from the code i’m working on, so I have no working example right now, but am just wondering if anybody knows if it’s a known issue?


I was using effect composer with bloom on my project, with for the first time (for me) glowing instancedMesh, and they all show visible right through everything.

Any of my glowing / bloomed loaded glb mesh, or coded on the fly mesh are not visible when behind another mesh, but any instancedMesh can be see seen through any other mesh ALL the time…


I ain’t a master of shaders and I may be wrong, but bloom is a screen-space shader - it does not rely on geometry (or geometry type) since it’s applied on a rendered scene.

Some postprocessing shaders may depend on depth (and render order, which could maybe be affected by instanced geometry in some way?), but looking at the code, bloom does not seem to.

1 Like

I’ve got the codepen prototype for my last showcase (two instanced meshes form a single object): R E T R O B O Y (Tetrahedral deconstruction)
I simply added a sphere with MeshNormalMaterial between the object and my camera and everything works just fine.
Though, I use selective bloom there.

So, it’s better to provide an example that shows the issue :slight_smile:

WELL… after digging more, experimenting and failing all night yesterday, I found another demo online,
that shows instances bloomed…
only it turns out they’re instanceBufferGeometry instances…
I copied the code back on my server, to which script I added my part

  • loading glb assets
  • making instancedMesh out of them
  • texture them
    and when I enabled the layer for blooming it did the very same thing it always does in my project:

the bloomed instancedMesh is always rendering on top of any other instancedMeshes.
so there IS an issue there…
it does work normally when it’s instancedBufferGeometry
it does work normally when its loaded geometry

anyone wants to have a look at my code :

if you zoom out, going upward for a while you should see 3 grey crumpled piece of paper models
(my reference loaded glb asset)
and my 3 instancedMesh groups of asteroids travelling by it
if you look at the green and blue animated instancedMeshes
you will see the they render properly, the green renders over the blue one as expected
from higher, move the mouse so that you can see the blue and/or green instancedMesh pass over the bloomed one, and you’ll see the bloomed ones are always rendering “through” everything…

I’m pretty sure im f… here… I’ll just have to live with one OR the other…
hey, still love three.js !

update a the bottom of the post : I’ve posted a “not so gracious” example of my issue with all the infos i could think of regarding it :wink: