Experimentation with normalpacking and component precision.
Dragged in a bunch of alignment fixes from LL. Should allow disabling of tcmalloc on windows/linux32 if such is ever implemented.
TCMalloc can now be manually disabled via develop.py -DDISABLE_TCMALLOC:BOOL=ON
A few more alignment bits and bobs.
Catch up with viewer-beta. Primarily sim transition alterations to reduce frame hitching, and some optimization in LLViewerObjectList (std::set -> std::vector and and some allocation tweakage).
Removed annoying attribute consumption warnings. Alpha pass was leaving shader bound, which hosed up updateCull for water reflections (updateCull only binds occlusion shader if another shader isn't currently bound)
Don't compile avatar eye shader, as it isn't used anywhere.
PASS_INVISI_SHINY never issued. Commented out some unused code.
LLViewerObject::idleUpdate now returns void. Texture animations/flexis now have their own update queues.
Unbork shadow shaders by tweaking normal unpack.
More alignment crap.
Remove pointless framebuffer status check. glReadBuffer doesn't work with gl_depth_attachment, thus will always complain about readbuffer being absent. (it checks GL_COLOR_ATTACHMENT0, which isn't present because this check is before we attach color attachments.)
Fixed unsafe erasure from vector while iterating in llinventorybackup.cpp.
MatrixMode sanity checks and adjustments to physics debug display (fixes a crash with that debug view, too)
Muting an avatar now also removes their attached lights. Also cleaned up light update code(no change in behavior)
Picked up a few small changes from viewer-beta pertaining to pathfinding.
Durr, missed a line when adding attached light muting. Clobbered when diffing. Incrementing in a for loop is kinda important! Our handling in this function differes from LL in the firstplace because they are performing iteration on an iterator that can be invalid after the erase.
Clear object rebuild queues upon teleport.
Resolve issue with sculpties loading with incorrect discard levels.
Still need to initialize flexis upon their very first idle update, else you get an ugly polygon soup when they first appear.