Hi. I am having I hard time for 2-3 days now to understand if this is a unity bug or a tegra2/driver problem.
When using a large mesh (for example a mesh terrain) and having a texture tile on it bilinear filtering does not work
on the galaxy tab 10.1. The same scene works on my sony ericcson x10 mini. There is also no difference whether I use opengl es 1.1 or 2.0
EDIT2: that does apply again only when you are near uv:0,0. The more far away you go from uv 0,0 to 1,1 the more the filtering gets worse.
EDIT: Well screw that. It is looking filtered only in one corner of the mesh (I imagine where u,v is near 0,0)
A project depends on this and some galaxy 10.1 tabs are gonna be used and its critical for me to know if this is a solvable bug or a tegra2 driver problem.
it’s probably the tiling of the texture. Tiling it 300 times means it needs more precision for the texture coordinates in the shader. If you tile it 100 times do you still get the issue?
Please report a bug on it if you want anyone looking into it officially.
Dev and Q&A staff is normally not crawling round here.
You can do this through the help - report a bug feature in the editor.
As for ‘funny’: the tegra2 is the second worst mobile gpu released the past 3 years (the worst is tegra1), its a ‘shrinked’ desktop gpu no mobile gpu. Qualcomm and Imagination Technologies grew and learned in this field while NVIDIA tries to get away with brute power from a shrinked desktop gpu with short cuts and at times dirty tricks.
In this case though with a problem like this I would suspect it to be a matter of drivers. Its Samsungs first device on tegra, so they don’t have the needed experience with NVIDIA drivers etc yet and they seem to be tricky given that the majority of tegra devices have one or more problems.
That looks like a classic texture coordinate precision issue. As you get farther from 0, floating point values become less precise. If the Tegra devices are using insufficient precision for texture coordinates (or less!), that could definitely cause this effect.
Looking at this document, it reports that Tegra 2 uses FP20 in the fragment shader, which is really only enough for a few thousand pixels, beyond which there is insufficient precision to address each individual pixel in your texture.
Just about your only hope is if Tegra2 is using less than FP20, due to a precision declaration in the shader (I don’t know if the hardware even has that option). Look at the GLSL shader that Unity produces (both vertex and fragment side), and make sure they declare at least medium precision.