[BUG] MipMap rendering artifacts on Android

Starting at about engine version 4.16.2, my project started to show some bizarre rendering issues. I managed to track the issues to my textures that were marked with Mip Gen Settings “NoMipmaps”, however it is unclear if mipmaps are the sole perpetrator, as the SkySphere night effects seem to always have the artifact present. (or my changes to the texture are not perpetrating through the package chain all the way to the build)

Specifically, the materials using the no-mipmap textures began to render only a thin strip (U: 0 to 1, V: 0 to 0.1ish) of the specified texture, like as if it were trying to use mip map coordinates on a non-mipmap texture. This only occurred on the android packaged builds with etc1 configuration, and not within the editor, regardless of the preview feature level.

Steps to Reproduce:

1. Create a new 3rd Person project with mobile target, scalable 2D/3D, no starter content.

2. Change the skysphere to night time, either by rotating the light source, or disconnecting the light source and setting sun height to -1.

3. Configure the project for android in the project settings

4. Package the project for Android ETC1.

5. Install, run, and observe the thin streaks through the sky, instead of regular stars.

I did some experimentation to see if I could determine the exact cause, but all I could determine was that the bug did not affect all materials, the ones that I had made that were affected were fixed by changing mipmaps from none to “from texture group” (world group), and that the skysphere night sky stars always seemed to have the problem, regardless of texture settings (However, I have also noticed that changes to materials and textures don’t always get packaged unless other significant changes are made to the project. Perhaps a separate bug? So it may be that changing those properties fixes the skysphere, and I simply didn’t get to see the changes in the build).

I am running the packaged build on a Nexus 6p running Android 7.1.2

Hello,

I was unable to reproduce this issue on our end. I have a couple of questions about your issue to help me narrow down the issue you are experiencing.

  1. Have you been able to reproduce this issue on other android devices besides the Nexus 6p?
  2. If so, could you list the devices that also have this issue?
  3. Does this issue occur when you launch the project to the device?

Thanks!

  1. The issue occurres on my brother’s phone as well when he runs our project.

  2. His phone is a Nexus 5x, International version.

  3. The issue doesn’t occur when launching to device, (Android_ASTC), nor when packaging for ASTC. Only on the ETC1 packaged builds. We use ETC1 for compatibility so that our games work across as many devices as possible, without the extra file size from including all the different texture compression types.

Hope that helps you narrow down the problem. Kinda makes it look like the ETC1 compression got corrupted somehow, since at least one of the others is fine.

Update: I was unable to reproduce the bug when I compiled from a different computer, so I guess something with my development environment is not playing nice with the engine. I tried updating my Android build tools, but it didn’t seem to help.

Hello again,

Could you provide the DxDiag of the machine where the issue was occurring from?

Thanks!

Here’s the DxDiag, as requested. I hope it helps.

Hello,

We have not heard back from you in a few days and were unable to reproduce the issue you are experiencing. So we are marking this post as Resolved for tracking purposes. If you are still experiencing the issue you reported, please respond to this message with additional information and we will follow up.

Thanks