Sync light state, bound shader, and various gl context states similarly to render matrices.
Texture handles now refcounted, as multiple viewer textures could ref the same handle (cubemaps do this)
Clean up gl extension loading a bit. Not necessary, but only look for ARB variants if not included in current core version. Removed unused extensions.
Use core shader api if supported, else use ARB. (FN signatures are identical. Just doing some pointer substitution to ARB if not core.)
Attempt at improving VBO update batching. Subdata updates better batched to gether per-frame.
There's probably other stuff I forgot that is in this changeset, too.
Todo: Fix lightstate assertion when toggling fullscreen with shaders off.
This hides name tags and names whenever possible, except from chat.. when not possible, falls back on anonyms
Changed: Radar no longer hidess based on @shownames, that's silly.. now radar hides names when @shownames
Radar will alert when @shownames restricted, but not when @shownametags restricted
Radar will not offer menu when @shownames or @shownametags restricted, and the IM and Profile buttons will disable.
Hopefully fixed broken RLVa logic in llfloaterobjectiminfo.cpp
Fix slightly broken RLVa logic code in llpanelpermissions.cpp
Changed: Range Finder now disallowed when minimap disabled, show loc restriction doesn't change it anymore.
Fix broken hiding of names when offering teleports; rlv_shownames param doesn't seem to always pass, work around those situations...
^-This causes some false positives, I suppose, if you offer teleport from friends list to someone in the region, but better safe than sorry.
-Nametag bubble visbility is oddly inconsistent. May vanish with future planned UI merges...
-VBOs are PAINFULLY slow on ATI hardware. This repos self-compiled davep/shining-fixes branch, so I'll leave the ball in LL's court for now regarding that.
Need to test:
localassetbrowser
preview related floaters
hgfloatertexteditor
maps
media textures! Currently very hacky
web browser
alpha masks on avatars
bumpmaps
Are all sky components appearing?
LLViewerDynamicTexture (texture baking, browser, animated textures, anim previews, etc)
Snapshot related features
Customize avatar
vfs floater
UI textures in general
Texture priority issues
-Fixed mistakes in LLCachedCOAControl revealed by GCC. Thanks Siana.
-LLCacheControl'd stuff related to postprocessing, which I may mess with later.
GCC... Sigh.
Added LLObjectList::getAvatar(LLUUID) for type-safe and quicker lookup
Added F32 overload to LLSD because using F64 needlessly is silly.
(And its lack of F32 overload caused issues with LLCachedControl<F32>)