atteneder / glTFast

Efficient glTF 3D import / export package for Unity
Other
1.23k stars 250 forks source link

Textures are flipped by Y-Axis #711

Open stevan-voste opened 1 month ago

stevan-voste commented 1 month ago

I’m encountering an issue with an imported GLTF model that uses KTX textures on an iOS device. The textures appear to be flipped along the Y-axis, but this only occurs on the device; everything works fine in the editor.

Note: I am using URP, and shaders are imported via shader variants

Files glb file to test Attach or link to .gltf/.glb files that trigger the bug.

To Reproduce Steps to reproduce the behavior:

  1. Create empty Unity project with URP
  2. Import provided model
  3. Build project on iOS device
  4. See error

Expected behavior Model textures are not flipped

Screenshots In application

image

In editor image

atteneder commented 3 weeks ago

Thanks for reporting!

To certify, you're not loading said model at runtime, but you've imported it (placed it in the Assets folder), right?

atteneder commented 2 weeks ago

I assumed that you imported at design-time and tried to reproduce.

TL;DR: Don't use KTX for this use case, but go with regular PNG/JPGs in glTF.

I think you entered unexplored territory there. The KTX for Unity plugin can import those bundled KTX textures, but it just transcodes them to a format your host computer supports (the machine you develop on). So my first attempt to re-produce failed, because on the Intel Mac it was transcoded to DXT, which is not supported on my iPhone. On an ARM Mac, it is transcoded to ETC and I did not see a problem.

You could try to figure out, which format you actually end up with.

But overall, this KTX workflow does not make sense to me at all.