Textures on Edge Adress UV not handling correctly

Hello Dear PlayCanvas Fellows!

I have come across a rather strange problem. When I play a game I’ve made on Edge Browser (Microsoft Edge 44.18362.449.0, Microsoft EdgeHTML 18.18362 2019) some textures seem to be loaded differently than on Chrome, Firefox or Chromium Edge.

I’ve found this post [SOLVED] Texture Tiling [BUG] on IE and EDGE but I am not using a .PNG as texture. I am using a normal jpg. and there is no Alpha data or Black in the image.

It seems Like the Adress UV setting is somehow wrong. Because when I change the “Adress V” settings from “Repeat” to “Clamp” I get the same effect in my Editor.

PlayCanvAdressUV

You can see what I mean here, when opening it in Chrome and then in Edge: EdgeTextureTest - PLAYCANVAS

What I noticed is, that it seems to happen, because my Texture isn’t set as a POT (Power of Two). It has a Resolution of 819x819. Because when I enable the POT Settings in the editor and it is upscaled to 1024, the problem doesn’t occur.

Anyone got any ideas ?

Hi @Bfischlin,

I think the issue may be that you are running on an older version of edge with only WebGL 1.0 support.

In WebGL 1.0 non power of two textures have some limitations. One of them being not being able to generate mipmaps. Most likely some fallback to WebGL 1.0 isn’t properly working on this version of edge.

On the latest version of Edge that uses Chromium as the rendering engine this issue should be resolved.

Still if you would like raise an issue about it on the engine repo, in case it’s something that can be updated/fixed in the engine:

3 Likes

@Leonidas Hey!

Thank you very much for your reply :slight_smile:

Hmm that could be possbile… Well seeing as the problem doesn’t occur on textures that have a correct POT, I might raise some of the problematic textures to be POT. Because then it seems to be working.

Cheers!

2 Likes

Many thanks for this information!

I was having a similar issue where in the PlayCanvas editor my NPOT textures were looking fine, but when I integrated it with 8thWall and ran a published version on Chrome Mac or on my phone in Safari (WebAR app) the textures appeared clamped and not repeating.

So although WebGL 2.0 removes this POT issue, if you are using 8thWall, then WebGL 2.0 should -not- be set as preferred, as per their documentation.

Solution for me:
If you’re experiencing this issue:

  1. Go to Menu (top left) > settings > asset tasks, and ensure ‘Textures POT’ is checked
  2. For all models that are showing this issue: right-click the FBX (etc) file in Assets and select Re-Import.
  3. This will now work in WebGL versions < 2.0.

Cheers,
Isaac

2 Likes

Thanks for letting us know Issac!