Asset flickering in and out of existence at different camera angles

We don’t know what this is, but at different and repeatable camera angles, almost all of our dynamic assets will at some point start poping in and out of existence. It seems to happen on lots of different mesh types, but afaik most of these are some form of ‘skeletal’ mesh, be it skinned or morphed.

Any help in figuring out what might be causing this would be greatly appreciated as our understanding of the problem is quite limited.

The closest we’ve managed to come in figuring out what’s wrong is ‘its a bounds issue’, but beyond that its over our heads.

Example gif here

Hi ,

It would appear that the bounds for the skeletal mesh are very small. Skeletal Mesh Actors are only rendered if their bounds are in screen space. Bounds are typically determined by the physics asset applied to the skeletal mesh, but you can also scale the bounds from the details panel after selecting the skeletal mesh (See “Bounds Scale”).

Can you create a similar gif as above, but with the “Show Bounds” command?

I don’t think its because they are small, I think its because the bounds are offset somehow? The mesh is still centered, but I think the bounds for it are offset to one side because of where we’ve placed our bone root?

Here’s the mesh on its own, and you can see the bounds are offset:

This is because of how we author these meshes. We model one half, and use a script to mirror/weld/export the mesh, so I think that’s why its messing with the bounds this way. Is there any way to fix this, aside from changing the bone root positions for each asset?

Interestingly, that same mesh when viewed in the skeletal mesh view window, looks perfectly fine

Can you try increasing the bounds scale? If that resolves the issue, then we know it is definitely the bounds that are causing the flickering and we can go from there.

If increasing bounds scale makes it stop, can you send me an example project? I’d like to figure out why it’s being offset like that.

Can you also show me what the physics asset looks like? While we’re at it, can I see your second screenshot (car in a blank level) with “Show Collision” enabled?

Increasing the bounds to 1.5x fixes the problem! I didn’t try any other value.

collision in blank level

collision + bounds in blank level

Bounds at 1.5x

I’ve found something that could be useful in figuring this out: The flickering only happens when the camera is inside one of, and even then only on the side of the mesh that is farthest from the ‘center’ of the bounds in-game

These are transparent parts of the mesh that we use to calculate things like cargo area and overall size of parts of the car. As the user is alowed to morph the shape of parts of the car with skinned weights, we need these parts of the mesh to calculate these sizes at run-time, so a transparent material is used to hide these parts of the mesh. Could the transparent parts of the mesh be the issue?

I’ve also discovered that some of the bodies have a [uniform import scale value][2] set, as a lot of them are wildly different sizes in their source files.

I’ve tried making an example project, but without copying half our game code over to a new project to get the exact things we use, I can’t replicate the issue. I suspect the flickering has something to do with the center of the game camera being at the center of the car and orbiting around it by rotating the pivot point, because i tried bringing in a car body to the first person example project and, with the first person player in the same position as the gifs in the OP, there was no flickering.

I’ve also discovered that in a [new project][3], with the same source asset imported, the bounds are not offset in any way, either in-viewport, or in-game:

[3]:

Hello ,

Sorry for the delay in response on your issue. Looking at the mesh in a blank project, I was able to see the flicker when the player mesh intersected the mesh at places similar to the colored boxes you had posted before. Like mentioned as well, increasing the bound size in the Rendering details panel resolved this issue; however, this did not solve the issue with the in-game offset of your vehicles bounds. To fix the offset that is occurring in game you will need to adjust you Physics Asset, in there the Bone_Root (which will be shown as a large capsule) by adjusting this capsule to better encompass your mesh, The flickering appears to be based on how the mesh is culled based on this capsule.

Please let me know if you have any more questions about this issue, or if this does not solve your problem, and I will be glad to help you further.

Thank you,

I see, thank you. I will try to mess about with this to see if it helps with our cars flickering soon.

At the moment however, it doesn’t solve the problem of our engine parts/wheels flickering, as you can see. In the physics asset for this mesh, you can see that I’ve made the bone root’s capsule encompass the entirety of the mesh, yet you can see that it still flickers, even in the mesh viewport

Hello again ,

I was able to see the issue you are experiencing with the asset you provided. I have logged a report for this issue here:

You can track the report’s status as the issue is reviewed by our development staff. We will follow-up here if this gets fixed, but please be aware that this issue may not be prioritized or fixed soon.

Please let us know if you have any other questions about this issue, or would like to discuss how you may be able to fix this yourself if this is urgent for your project.

Thank you,