Some Textures are invisible on some Video Cards... Video RAM Issue? Or?

Some Textures on my game’s enemies are invisible on some Video Cards… Video RAM Issue? Or bad optimization?

I am unable to recreate this issue on any of my test machines but 2 players mentioned invisible enemies… (sometimes its random which enemies)

They lowered the texture detail to the lowest setting (actually all the settings were lowered to see if it made a difference and it did not)

I was under the impression that the unreal engine handled this by automatically texture streaming/mipmapping if game doesn’t have enough video ram to load in all the textures.

So I thought if there wasn’t enough video memory to handle all the texture it would be blurry… but not invisible!

If I cant figure this out… I might have to have a special setting in my game’s options that forces a second set of really low res 512x512 textures to be used instead for most of the enemies. (right now most of the enemies are using 1024x1024 - but I do have many, many enemies in the game, along with barrels, crates, walls dirt, etc. so there is a seriously large amount of textures in the game)

Is this something specific to certain video cards… not showing texture (and making textures invisible) if there is not enough video memory?

If anyone has any ideas or suggestions, much appreciated. Thanks

Give image please.

It’s happening on customer’s computers (I am unable to recreate on any of my 5 test computers… to provide a screenshot)… if necessary I will ask them to send one…

However I did see someone in a twitch video experience it while playing my game, located here…

The guy on the video eventually changed resolutions and then the character showed up…

But really need to figure out why it did that so I can do whatever necessary measures so players don’t see that to begin with (since people are not going to want to screw around with settings just to get the character to show up)

It seems possible that the character mesh and materials was simply never loaded.
I would suggest checking into that and preventing it from happening with a redundant check anyway. Maybe tie it in to one of the UI buttons (if the character is not there create it) sort of thing.

Before you go blaming materials.

After, you can probably check the pool size and pick textures based on that manually. Just tie the check into the character loading, and provide a black/textureless material instead.

Really, doubt the memory is the issue here, considering there is virtually nothing in the starting screen for the video that shows the issues except the character and a bit of fluff for the landscape area/fog.
While at it. Use the different visualizes for optimization on the screen and stat unit / record performance to analyze if you get any odd spikes that may justify your memory drag/leak assumption. Oh, and engine version probably matters. There used to be memory leaks in some of the material shaders that were patched, so maybe DoubleClick the release notes and known issues of the version you are on.

Thanks for posting… Yeah it makes sense… (I didnt think there would ever be a situation where they would be invisible) I will look into that.

Yeah, things arent being loaded properly, mats are fine.

Ok… I figure out how to recreate the issue…

If I do a console command “sg.ShadowQuality 0” first to set all of the shadows OFF… then some characters are invisible when they are loaded (they are there… because the collision is there)

Does anyone know why this might happen?

I would suggest making a Basic test project specifically to share that presents the same issue at this point.

If you can replicate it, it’s likely to be a bug.
Engine version is also important, and if you share a project presenting the error it would be pretty fast to load up / convert it to whatever other people are using and checking for the issue.

Other then that, only thing I can add is that just because collision is there it doesn’t mean that the mesh has loaded, In characters.
If you were seeing simple collision on a static mesh, but not the mesh, then maybe - just maybe it could be a material not loading.
However the way collision works it doesn’t mean much. When you import an FBX the engine creates it’s own boxes/convex hulls, so potentially you could have the mesh not load but the collision work regardless.

Also, is your character only made with one material? If yes. I would suggest changing the mesh by adding a UV for a single section and mapping a basic material to it.
that way if you see the section But not the rest, you can definitely blame the material.