Texture bias issue with texture atlases on Forever FPS
tracked
Medea Destiny
Reproduce: Look at any text display board using any of the xy text solutions in current (foreverFPS) Firestorm beta. Observe that the text remains blurry until you zoom in ridiculously close.
This appears to be an issue with using texture bias levels based on distance/size. Purely from observation and guesswork, it looks as if the calculation here is being done assuming that a face is using the full texture space, rather than actual pixel density. In XY text solutions, each face is displaying a single character (or sometimes a pair), and using only a fraction of a texture atlas that will contain a full alphanumeric set. Thus if using a 1024x1024 texture, each face may only be displaying for example 10k pixels rather than the full million. If the calculation for discarding higher resolutions is done assuming that the surface will be displaying a million pixels rather than 10k at full resolution, the obvious result is a very blurry image.
I have observed a similar issue with mesh that has multiple faces sharing the same UV space, so that a single texture atlas is used for multiple faces. In this case you might have multiple faces using the same 1024x1024 texture, but some may be using a tiny fraction of the pixels, and thus the actual pixel density will be very different from a calculation that assumes that the full resolution is being applied to that face. It seems to be pretty consistent for me that mesh with this kind of texture atlassing is visibly blurring far more aggressively than other things, and only looks right when the camera is zoomed way in on the affected mesh.
Log In
Atlas Linden
tracked
Anastasia Horngold
This looks like https://feedback.secondlife.com/bug-reports/p/extreme-thrashing-or-failure-to-completely-rez-of-scripted-letter-number-texture, or at least similar to it. I'm still seeing the problem too.
Medea Destiny
Anastasia Horngold Yep, I failed to find that one when looking. This could be folded in. Kirsty Aurelia's comment matches my own conclusions. I've added a comment below in reply to Atlas which provides some very clear video examples of what's going on here.
Atlas Linden
Hi Medea,
Are you able to supply a some images (or a video) of what you're seeing and a SLURL for us to take a look at to investigate this further?
Medea Destiny
Atlas Linden Any text display board anywhere on the grid using xy style text should demonstrate this, the grid is full of them. Here's a video example though -- as you can see, the text is very blurry at reasonable distances, and doesn't hit full resolution until the camera is very zoomed in, essentially rendering this entire class of product only semi-functional, and making SL look ugly: https://gyazo.com/9b2814d6306e8931a9e43cadac7fc425 -- you can see this particular example at http://maps.secondlife.com/secondlife/Crossbrook/183/227/3002 but there are a million examples. Note that the text "melodic" is not using the atlased xy text system, but is a separate image. Although the text size is similar, it suffers no significant blurring, although the scaling is apparent. The system works great there but not for the atlased text, demonstrating clearly that the atlased texture is impacted far more than the non-atlased texture, despite the actual on-screen pixel density being very similar.
https://gyazo.com/7d6ac3625211481aeb0cd2561111887c is another demonstration of the texture atlas effect. You'll notice in this video I'm wearing two chokers. The uppermost one uses a texture atlas (you can clearly see this in the image). The lower one does not. Although these are taking up approximately the same screen area, the blurring effect is highly visible in the uppermost choker, and not in the lower one. The uppermost choker, using a texture atlas, suffers badly from blurring until the camera zooms right in, while the lower choker, which uses a separate texture for every face, looks fine at all distances.
Texture atlases are
good
. They're efficient, and should be encouraged. As it stands this texture biasing routine is punishing efficient texture area usage!Atlas Linden
Thanks for the info, Medea! This does appear to be the result of having a low amount of VRAM.
This issue is now tracked here: https://github.com/secondlife/viewer/issues/3611