[osg-users] StatsHandler missing numbers

Daniel Emminizer emminizer at hotmail.com
Fri Jan 29 09:50:34 PST 2016


aroth wrote:
> 
> I'm quite interested if this issue also occurs on a different OS. Let's see if the OS world is different with this great new Windows 10 ;-)
> 


I've been lurking on this thread for a while.  I know it's old, but I finally got some time to track it down.  I've seen the exact same problems on my Intel 4600 on Windows 10.  We've seen the problem on pretty much every Intel 4000+ card tested on every version of Windows for the last couple of years.  Most of our Linux machines with Intel also have Optimus, and we disable the Intel side through BIOS, so I don't have any useful Linux input.

I finally tracked down a fix, and I think it suggests a bug in the Intel drivers.  The problem appears to be due to issues with the textures that are loaded from glTexSubImage2D in Glyph.cpp.  The following patch worked well for us and fixed the disappearing text glyphs problem on Intel.  It works by reapplying the texture min filter right before the glTexSubImage2D().

Without this, depending on the size of the font, glyphs that are loaded after the initial set will show up either grey, or completely transparent.  NVidia drivers do not suffer the same problem.

I've tested on Intel 4600 and NVidia K2100m.  I've also tested the state values with glGetTexParameteriv(), and it appears correct prior to this code.  That implies to me that this is a driver bug, but I don't have enough experience to say for certain.  If it is a driver bug, it's been outstanding for at least a year, if not several years.

I could not find a way to fix this in our own code without modifying OSG code.  I hope someone finds this useful.  I realize it is a bit of a hack.

Thanks,

 - Dan

------------------
Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=66167#66167




Attachments: 
http://forum.openscenegraph.org//files/patchsrcosgtextglyph_159.cpp





More information about the osg-users mailing list