Billboard rendering bug

When I create an actor with a material billboard component, it renders just fine in the editor, but not in game. See the following images. (I am using engine version 4.22.3.) Any ideas?

I have narrowed this down to a bug in MaterialBillboardComponent.cpp where it is incorrectly generating the dynamic vertex buffers being sent to the GPU. I know this, because I have 3 views into the scene, and I can get the billboard to render correctly if the right views are viewing the billboard, but also get it to render incorrectly when other views are or aren’t viewing it.

An initial look at the code suggests to me that uninitialized data may be able to be sent to the GPU under some circumstances, but I have to study the code harder to know for sure.

Sure would be nice if someone from UE4 actually looked at this thread.

EDIT: Looking harder at the code, it appears that it will leave parts of the vertex buffer uninitialized, but only tell the GPU to read from the initialized portions of the vertex buffer. So it could be code deeper in the engine that has a bug in it.

I have just upgraded to version 4.24.2 of the engine, and the bug is still there. This forum is useless, so I’ll try going on git-hub and submitting an issue there, I suppose.

I was able to fix this bug by commenting out the following line of code…

if(Visibility & (1 << ViewIndex))

…in the file MaterialBillboardComponent.cpp in the subroutine GetDynamicMeshElements.

With this line commented out, the vertex buffer going to the GPU is fully initialized. However, I don’t see anything wrong with having the if-statement in the code. Yes, part of the vertex buffer will be uninitialized, but as far as I can tell, the GPU is only asked to draw with the initialized portions of the vertex buffer.

Hello? Is anyone out there?