diff options
| author | Erik Kundiman <erik@megapahit.org> | 2023-09-10 10:10:52 +0800 | 
|---|---|---|
| committer | Erik Kundiman <erik@megapahit.org> | 2023-09-10 10:10:52 +0800 | 
| commit | e67022465d8189eb30135b6b7c0fe477b3b91819 (patch) | |
| tree | f7582a29b575a64e6dbdc6173c2a04f8fa99a291 | |
| parent | d328f2efb2d22e690a5461f4ba2d2eeb6603ac8f (diff) | |
Lose the _ARB suffix from many macros
| -rw-r--r-- | indra/newview/lldrawable.cpp | 2 | ||||
| -rw-r--r-- | indra/newview/lldrawpoolavatar.cpp | 8 | ||||
| -rw-r--r-- | indra/newview/llface.cpp | 4 | ||||
| -rw-r--r-- | indra/newview/llglsandbox.cpp | 6 | ||||
| -rw-r--r-- | indra/newview/llspatialpartition.cpp | 8 | ||||
| -rw-r--r-- | indra/newview/llsprite.cpp | 2 | ||||
| -rw-r--r-- | indra/newview/llviewershadermgr.cpp | 542 | ||||
| -rw-r--r-- | indra/newview/llvograss.cpp | 6 | ||||
| -rw-r--r-- | indra/newview/llvoground.cpp | 2 | ||||
| -rw-r--r-- | indra/newview/llvopartgroup.cpp | 4 | ||||
| -rw-r--r-- | indra/newview/llvosky.cpp | 6 | ||||
| -rw-r--r-- | indra/newview/llvosurfacepatch.cpp | 4 | ||||
| -rw-r--r-- | indra/newview/llvotree.cpp | 4 | ||||
| -rw-r--r-- | indra/newview/llvovolume.cpp | 20 | ||||
| -rw-r--r-- | indra/newview/llvowater.cpp | 4 | ||||
| -rw-r--r-- | indra/newview/llvowlsky.cpp | 4 | ||||
| -rw-r--r-- | indra/newview/pipeline.cpp | 26 | 
17 files changed, 327 insertions, 325 deletions
| diff --git a/indra/newview/lldrawable.cpp b/indra/newview/lldrawable.cpp index bb4174d3b6..14e667088d 100644 --- a/indra/newview/lldrawable.cpp +++ b/indra/newview/lldrawable.cpp @@ -1269,7 +1269,7 @@ LLSpatialPartition* LLDrawable::getSpatialPartition()  LLSpatialBridge::LLSpatialBridge(LLDrawable* root, BOOL render_by_group, U32 data_mask, LLViewerRegion* regionp) :   	LLDrawable(root->getVObj(), true), -	LLSpatialPartition(data_mask, render_by_group, GL_STREAM_DRAW_ARB, regionp) +	LLSpatialPartition(data_mask, render_by_group, GL_STREAM_DRAW, regionp)  {  	LL_PROFILE_ZONE_SCOPED_CATEGORY_DRAWABLE diff --git a/indra/newview/lldrawpoolavatar.cpp b/indra/newview/lldrawpoolavatar.cpp index 4ffa903cca..1072719f2e 100644 --- a/indra/newview/lldrawpoolavatar.cpp +++ b/indra/newview/lldrawpoolavatar.cpp @@ -55,7 +55,7 @@  #include "llperfstats.h"  static U32 sDataMask = LLDrawPoolAvatar::VERTEX_DATA_MASK; -static U32 sBufferUsage = GL_STREAM_DRAW_ARB; +static U32 sBufferUsage = GL_STREAM_DRAW;  static U32 sShaderLevel = 0;  LLGLSLShader* LLDrawPoolAvatar::sVertexProgram = NULL; @@ -147,11 +147,11 @@ void LLDrawPoolAvatar::prerender()  	if (sShaderLevel > 0)  	{ -		sBufferUsage = GL_DYNAMIC_DRAW_ARB; +		sBufferUsage = GL_DYNAMIC_DRAW;  	}  	else  	{ -		sBufferUsage = GL_STREAM_DRAW_ARB; +		sBufferUsage = GL_STREAM_DRAW;  	}  } @@ -939,7 +939,7 @@ LLColor3 LLDrawPoolAvatar::getDebugColor() const  LLVertexBufferAvatar::LLVertexBufferAvatar()  : LLVertexBuffer(sDataMask,  -	GL_STREAM_DRAW_ARB) //avatars are always stream draw due to morph targets +	GL_STREAM_DRAW) //avatars are always stream draw due to morph targets  {      LL_PROFILE_ZONE_SCOPED_CATEGORY_AVATAR  } diff --git a/indra/newview/llface.cpp b/indra/newview/llface.cpp index a7c8a0987e..6619f7d0bd 100644 --- a/indra/newview/llface.cpp +++ b/indra/newview/llface.cpp @@ -1225,7 +1225,7 @@ void LLFace::cacheFaceInVRAM(const LLVolumeFace& vf)  		mask |= LLVertexBuffer::MAP_WEIGHT4;  	} -	LLVertexBuffer* buff = new LLVertexBuffer(mask, GL_STATIC_DRAW_ARB); +	LLVertexBuffer* buff = new LLVertexBuffer(mask, GL_STATIC_DRAW);  	vf.mVertexBuffer = buff;  	buff->allocateBuffer(vf.mNumVertices, 0, true); @@ -1535,7 +1535,7 @@ BOOL LLFace::getGeometryVolume(const LLVolume& volume,  #ifdef GL_TRANSFORM_FEEDBACK_BUFFER  	if (use_transform_feedback && -		mVertexBuffer->getUsage() == GL_DYNAMIC_COPY_ARB && +		mVertexBuffer->getUsage() == GL_DYNAMIC_COPY &&  		gTransformPositionProgram.mProgramObject && //transform shaders are loaded  		mVertexBuffer->useVBOs() && //target buffer is in VRAM  		!rebuild_weights && //TODO: add support for weights diff --git a/indra/newview/llglsandbox.cpp b/indra/newview/llglsandbox.cpp index 03c1b6f631..7488a472ba 100644 --- a/indra/newview/llglsandbox.cpp +++ b/indra/newview/llglsandbox.cpp @@ -1007,8 +1007,8 @@ F32 gpu_benchmark()  		gBenchmarkProgram.mName = "Benchmark Shader";  		gBenchmarkProgram.mFeatures.attachNothing = true;  		gBenchmarkProgram.mShaderFiles.clear(); -		gBenchmarkProgram.mShaderFiles.push_back(std::make_pair("interface/benchmarkV.glsl", GL_VERTEX_SHADER_ARB)); -		gBenchmarkProgram.mShaderFiles.push_back(std::make_pair("interface/benchmarkF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gBenchmarkProgram.mShaderFiles.push_back(std::make_pair("interface/benchmarkV.glsl", GL_VERTEX_SHADER)); +		gBenchmarkProgram.mShaderFiles.push_back(std::make_pair("interface/benchmarkF.glsl", GL_FRAGMENT_SHADER));  		gBenchmarkProgram.mShaderLevel = 1;  		if (!gBenchmarkProgram.createShader(NULL, NULL))  		{ @@ -1091,7 +1091,7 @@ F32 gpu_benchmark()      delete [] pixels;  	//make a dummy triangle to draw with -	LLPointer<LLVertexBuffer> buff = new LLVertexBuffer(LLVertexBuffer::MAP_VERTEX, GL_STREAM_DRAW_ARB); +	LLPointer<LLVertexBuffer> buff = new LLVertexBuffer(LLVertexBuffer::MAP_VERTEX, GL_STREAM_DRAW);  	if (!buff->allocateBuffer(3, 0, true))  	{ diff --git a/indra/newview/llspatialpartition.cpp b/indra/newview/llspatialpartition.cpp index 17c834326c..52eef0e92f 100644 --- a/indra/newview/llspatialpartition.cpp +++ b/indra/newview/llspatialpartition.cpp @@ -1685,7 +1685,7 @@ void renderOctree(LLSpatialGroup* group)  	if (group->mBuilt > 0.f)  	{  		group->mBuilt -= 2.f * gFrameIntervalSeconds.value(); -		if (group->mBufferUsage == GL_STATIC_DRAW_ARB) +		if (group->mBufferUsage == GL_STATIC_DRAW)  		{  			col.setVec(1.0f, 0, 0, group->mBuilt*0.5f);  		} @@ -1695,10 +1695,12 @@ void renderOctree(LLSpatialGroup* group)  			//col.setVec(1.0f, 1.0f, 0, sinf(group->mBuilt*3.14159f)*0.5f);  		} -		if (group->mBufferUsage != GL_STATIC_DRAW_ARB) +		if (group->mBufferUsage != GL_STATIC_DRAW)  		{  			LLGLDepthTest gl_depth(FALSE, FALSE); +#if GL_VERSION_1_1  			glPolygonMode(GL_FRONT_AND_BACK, GL_LINE); +#endif  			gGL.diffuseColor4f(1,0,0,group->mBuilt);  			gGL.flush(); @@ -1793,7 +1795,7 @@ void renderOctree(LLSpatialGroup* group)  	}  	else  	{ -		if (group->mBufferUsage == GL_STATIC_DRAW_ARB && !group->isEmpty()  +		if (group->mBufferUsage == GL_STATIC_DRAW && !group->isEmpty()  			&& group->getSpatialPartition()->mRenderByGroup)  		{  			col.setVec(0.8f, 0.4f, 0.1f, 0.1f); diff --git a/indra/newview/llsprite.cpp b/indra/newview/llsprite.cpp index fd41cdf0d7..40dab61fa6 100644 --- a/indra/newview/llsprite.cpp +++ b/indra/newview/llsprite.cpp @@ -189,7 +189,7 @@ void LLSprite::updateFace(LLFace &face)  	{	  		LLVertexBuffer* buff = new LLVertexBuffer(LLVertexBuffer::MAP_VERTEX |   												LLVertexBuffer::MAP_TEXCOORD0, -												GL_STREAM_DRAW_ARB); +												GL_STREAM_DRAW);  		buff->allocateBuffer(4, 12, TRUE);  		face.setGeomIndex(0);  		face.setIndicesIndex(0); diff --git a/indra/newview/llviewershadermgr.cpp b/indra/newview/llviewershadermgr.cpp index 779837bcf0..859f5bf9e1 100644 --- a/indra/newview/llviewershadermgr.cpp +++ b/indra/newview/llviewershadermgr.cpp @@ -948,7 +948,7 @@ std::string LLViewerShaderMgr::loadBasicShaders()  	for (U32 i = 0; i < shaders.size(); i++)  	{  		// Note usage of GL_VERTEX_SHADER_ARB -		if (loadShaderFile(shaders[i].first, shaders[i].second, GL_VERTEX_SHADER_ARB, &attribs) == 0) +		if (loadShaderFile(shaders[i].first, shaders[i].second, GL_VERTEX_SHADER, &attribs) == 0)  		{  			LL_WARNS("Shader") << "Failed to load vertex shader " << shaders[i].first << LL_ENDL;  			return shaders[i].first; @@ -1008,7 +1008,7 @@ std::string LLViewerShaderMgr::loadBasicShaders()  	for (U32 i = 0; i < shaders.size(); i++)  	{  		// Note usage of GL_FRAGMENT_SHADER_ARB -		if (loadShaderFile(shaders[i].first, shaders[i].second, GL_FRAGMENT_SHADER_ARB, &attribs, index_channels[i]) == 0) +		if (loadShaderFile(shaders[i].first, shaders[i].second, GL_FRAGMENT_SHADER, &attribs, index_channels[i]) == 0)  		{  			LL_WARNS("Shader") << "Failed to load fragment shader " << shaders[i].first << LL_ENDL;  			return shaders[i].first; @@ -1041,8 +1041,8 @@ BOOL LLViewerShaderMgr::loadShadersEnvironment()  		gTerrainProgram.mFeatures.disableTextureIndex = true;  		gTerrainProgram.mFeatures.hasGamma = true;          gTerrainProgram.mShaderFiles.clear(); -        gTerrainProgram.mShaderFiles.push_back(make_pair("environment/terrainV.glsl", GL_VERTEX_SHADER_ARB)); -        gTerrainProgram.mShaderFiles.push_back(make_pair("environment/terrainF.glsl", GL_FRAGMENT_SHADER_ARB)); +        gTerrainProgram.mShaderFiles.push_back(make_pair("environment/terrainV.glsl", GL_VERTEX_SHADER)); +        gTerrainProgram.mShaderFiles.push_back(make_pair("environment/terrainF.glsl", GL_FRAGMENT_SHADER));          gTerrainProgram.mShaderLevel = mShaderLevel[SHADER_ENVIRONMENT];          success = gTerrainProgram.createShader(NULL, NULL);  		llassert(success); @@ -1082,8 +1082,8 @@ BOOL LLViewerShaderMgr::loadShadersWater()  		gWaterProgram.mFeatures.hasTransport = true;          gWaterProgram.mFeatures.hasSrgb = true;  		gWaterProgram.mShaderFiles.clear(); -		gWaterProgram.mShaderFiles.push_back(make_pair("environment/waterV.glsl", GL_VERTEX_SHADER_ARB)); -		gWaterProgram.mShaderFiles.push_back(make_pair("environment/waterF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gWaterProgram.mShaderFiles.push_back(make_pair("environment/waterV.glsl", GL_VERTEX_SHADER)); +		gWaterProgram.mShaderFiles.push_back(make_pair("environment/waterF.glsl", GL_FRAGMENT_SHADER));  		gWaterProgram.mShaderGroup = LLGLSLShader::SG_WATER;  		gWaterProgram.mShaderLevel = mShaderLevel[SHADER_WATER];  		success = gWaterProgram.createShader(NULL, NULL); @@ -1099,8 +1099,8 @@ BOOL LLViewerShaderMgr::loadShadersWater()  		gWaterEdgeProgram.mFeatures.hasTransport = true;          gWaterEdgeProgram.mFeatures.hasSrgb = true;  		gWaterEdgeProgram.mShaderFiles.clear(); -		gWaterEdgeProgram.mShaderFiles.push_back(make_pair("environment/waterV.glsl", GL_VERTEX_SHADER_ARB)); -		gWaterEdgeProgram.mShaderFiles.push_back(make_pair("environment/waterF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gWaterEdgeProgram.mShaderFiles.push_back(make_pair("environment/waterV.glsl", GL_VERTEX_SHADER)); +		gWaterEdgeProgram.mShaderFiles.push_back(make_pair("environment/waterF.glsl", GL_FRAGMENT_SHADER));  		gWaterEdgeProgram.addPermutation("WATER_EDGE", "1");  		gWaterEdgeProgram.mShaderGroup = LLGLSLShader::SG_WATER;  		gWaterEdgeProgram.mShaderLevel = mShaderLevel[SHADER_WATER]; @@ -1115,8 +1115,8 @@ BOOL LLViewerShaderMgr::loadShadersWater()  		gUnderWaterProgram.mFeatures.calculatesAtmospherics = true;  		gUnderWaterProgram.mFeatures.hasWaterFog = true;  		gUnderWaterProgram.mShaderFiles.clear(); -		gUnderWaterProgram.mShaderFiles.push_back(make_pair("environment/waterV.glsl", GL_VERTEX_SHADER_ARB)); -		gUnderWaterProgram.mShaderFiles.push_back(make_pair("environment/underWaterF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gUnderWaterProgram.mShaderFiles.push_back(make_pair("environment/waterV.glsl", GL_VERTEX_SHADER)); +		gUnderWaterProgram.mShaderFiles.push_back(make_pair("environment/underWaterF.glsl", GL_FRAGMENT_SHADER));  		gUnderWaterProgram.mShaderLevel = mShaderLevel[SHADER_WATER];          		gUnderWaterProgram.mShaderGroup = LLGLSLShader::SG_WATER;         		success = gUnderWaterProgram.createShader(NULL, NULL); @@ -1134,8 +1134,8 @@ BOOL LLViewerShaderMgr::loadShadersWater()  		gTerrainWaterProgram.mFeatures.mIndexedTextureChannels = 0;  		gTerrainWaterProgram.mFeatures.disableTextureIndex = true;  		gTerrainWaterProgram.mShaderFiles.clear(); -		gTerrainWaterProgram.mShaderFiles.push_back(make_pair("environment/terrainWaterV.glsl", GL_VERTEX_SHADER_ARB)); -		gTerrainWaterProgram.mShaderFiles.push_back(make_pair("environment/terrainWaterF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gTerrainWaterProgram.mShaderFiles.push_back(make_pair("environment/terrainWaterV.glsl", GL_VERTEX_SHADER)); +		gTerrainWaterProgram.mShaderFiles.push_back(make_pair("environment/terrainWaterF.glsl", GL_FRAGMENT_SHADER));  		gTerrainWaterProgram.mShaderLevel = mShaderLevel[SHADER_ENVIRONMENT];  		gTerrainWaterProgram.mShaderGroup = LLGLSLShader::SG_WATER; @@ -1193,8 +1193,8 @@ BOOL LLViewerShaderMgr::loadShadersEffects()  	{  		gGlowProgram.mName = "Glow Shader (Post)";  		gGlowProgram.mShaderFiles.clear(); -		gGlowProgram.mShaderFiles.push_back(make_pair("effects/glowV.glsl", GL_VERTEX_SHADER_ARB)); -		gGlowProgram.mShaderFiles.push_back(make_pair("effects/glowF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gGlowProgram.mShaderFiles.push_back(make_pair("effects/glowV.glsl", GL_VERTEX_SHADER)); +		gGlowProgram.mShaderFiles.push_back(make_pair("effects/glowF.glsl", GL_FRAGMENT_SHADER));  		gGlowProgram.mShaderLevel = mShaderLevel[SHADER_EFFECT];  		success = gGlowProgram.createShader(NULL, NULL);  		if (!success) @@ -1207,8 +1207,8 @@ BOOL LLViewerShaderMgr::loadShadersEffects()  	{  		gGlowExtractProgram.mName = "Glow Extract Shader (Post)";  		gGlowExtractProgram.mShaderFiles.clear(); -		gGlowExtractProgram.mShaderFiles.push_back(make_pair("effects/glowExtractV.glsl", GL_VERTEX_SHADER_ARB)); -		gGlowExtractProgram.mShaderFiles.push_back(make_pair("effects/glowExtractF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gGlowExtractProgram.mShaderFiles.push_back(make_pair("effects/glowExtractV.glsl", GL_VERTEX_SHADER)); +		gGlowExtractProgram.mShaderFiles.push_back(make_pair("effects/glowExtractF.glsl", GL_FRAGMENT_SHADER));  		gGlowExtractProgram.mShaderLevel = mShaderLevel[SHADER_EFFECT];  		success = gGlowExtractProgram.createShader(NULL, NULL);  		if (!success) @@ -1321,8 +1321,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  	{  		gDeferredHighlightProgram.mName = "Deferred Highlight Shader";  		gDeferredHighlightProgram.mShaderFiles.clear(); -		gDeferredHighlightProgram.mShaderFiles.push_back(make_pair("interface/highlightV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredHighlightProgram.mShaderFiles.push_back(make_pair("deferred/highlightF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredHighlightProgram.mShaderFiles.push_back(make_pair("interface/highlightV.glsl", GL_VERTEX_SHADER)); +		gDeferredHighlightProgram.mShaderFiles.push_back(make_pair("deferred/highlightF.glsl", GL_FRAGMENT_SHADER));  		gDeferredHighlightProgram.mShaderLevel = mShaderLevel[SHADER_INTERFACE];		  		success = gDeferredHighlightProgram.createShader(NULL, NULL);  	} @@ -1331,8 +1331,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  	{  		gDeferredHighlightNormalProgram.mName = "Deferred Highlight Normals Shader";  		gDeferredHighlightNormalProgram.mShaderFiles.clear(); -		gDeferredHighlightNormalProgram.mShaderFiles.push_back(make_pair("interface/highlightNormV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredHighlightNormalProgram.mShaderFiles.push_back(make_pair("deferred/highlightF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredHighlightNormalProgram.mShaderFiles.push_back(make_pair("interface/highlightNormV.glsl", GL_VERTEX_SHADER)); +		gDeferredHighlightNormalProgram.mShaderFiles.push_back(make_pair("deferred/highlightF.glsl", GL_FRAGMENT_SHADER));  		gDeferredHighlightNormalProgram.mShaderLevel = mShaderLevel[SHADER_INTERFACE];		  		success = gHighlightNormalProgram.createShader(NULL, NULL);  	} @@ -1341,8 +1341,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  	{  		gDeferredHighlightSpecularProgram.mName = "Deferred Highlight Spec Shader";  		gDeferredHighlightSpecularProgram.mShaderFiles.clear(); -		gDeferredHighlightSpecularProgram.mShaderFiles.push_back(make_pair("interface/highlightSpecV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredHighlightSpecularProgram.mShaderFiles.push_back(make_pair("deferred/highlightF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredHighlightSpecularProgram.mShaderFiles.push_back(make_pair("interface/highlightSpecV.glsl", GL_VERTEX_SHADER)); +		gDeferredHighlightSpecularProgram.mShaderFiles.push_back(make_pair("deferred/highlightF.glsl", GL_FRAGMENT_SHADER));  		gDeferredHighlightSpecularProgram.mShaderLevel = mShaderLevel[SHADER_INTERFACE];		  		success = gDeferredHighlightSpecularProgram.createShader(NULL, NULL);  	} @@ -1353,8 +1353,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()          gDeferredDiffuseProgram.mFeatures.encodesNormal = true;          gDeferredDiffuseProgram.mFeatures.hasSrgb = true;  		gDeferredDiffuseProgram.mShaderFiles.clear(); -		gDeferredDiffuseProgram.mShaderFiles.push_back(make_pair("deferred/diffuseV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredDiffuseProgram.mShaderFiles.push_back(make_pair("deferred/diffuseIndexedF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredDiffuseProgram.mShaderFiles.push_back(make_pair("deferred/diffuseV.glsl", GL_VERTEX_SHADER)); +		gDeferredDiffuseProgram.mShaderFiles.push_back(make_pair("deferred/diffuseIndexedF.glsl", GL_FRAGMENT_SHADER));  		gDeferredDiffuseProgram.mFeatures.mIndexedTextureChannels = LLGLSLShader::sIndexedTextureChannels;  		gDeferredDiffuseProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];          success = make_rigged_variant(gDeferredDiffuseProgram, gDeferredSkinnedDiffuseProgram); @@ -1366,8 +1366,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredDiffuseAlphaMaskProgram.mName = "Deferred Diffuse Alpha Mask Shader";          gDeferredDiffuseAlphaMaskProgram.mFeatures.encodesNormal = true;  		gDeferredDiffuseAlphaMaskProgram.mShaderFiles.clear(); -		gDeferredDiffuseAlphaMaskProgram.mShaderFiles.push_back(make_pair("deferred/diffuseV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredDiffuseAlphaMaskProgram.mShaderFiles.push_back(make_pair("deferred/diffuseAlphaMaskIndexedF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredDiffuseAlphaMaskProgram.mShaderFiles.push_back(make_pair("deferred/diffuseV.glsl", GL_VERTEX_SHADER)); +		gDeferredDiffuseAlphaMaskProgram.mShaderFiles.push_back(make_pair("deferred/diffuseAlphaMaskIndexedF.glsl", GL_FRAGMENT_SHADER));  		gDeferredDiffuseAlphaMaskProgram.mFeatures.mIndexedTextureChannels = LLGLSLShader::sIndexedTextureChannels;  		gDeferredDiffuseAlphaMaskProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];          success = make_rigged_variant(gDeferredDiffuseAlphaMaskProgram, gDeferredSkinnedDiffuseAlphaMaskProgram); @@ -1379,8 +1379,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredNonIndexedDiffuseAlphaMaskProgram.mName = "Deferred Diffuse Non-Indexed Alpha Mask Shader";  		gDeferredNonIndexedDiffuseAlphaMaskProgram.mFeatures.encodesNormal = true;  		gDeferredNonIndexedDiffuseAlphaMaskProgram.mShaderFiles.clear(); -		gDeferredNonIndexedDiffuseAlphaMaskProgram.mShaderFiles.push_back(make_pair("deferred/diffuseV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredNonIndexedDiffuseAlphaMaskProgram.mShaderFiles.push_back(make_pair("deferred/diffuseAlphaMaskF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredNonIndexedDiffuseAlphaMaskProgram.mShaderFiles.push_back(make_pair("deferred/diffuseV.glsl", GL_VERTEX_SHADER)); +		gDeferredNonIndexedDiffuseAlphaMaskProgram.mShaderFiles.push_back(make_pair("deferred/diffuseAlphaMaskF.glsl", GL_FRAGMENT_SHADER));  		gDeferredNonIndexedDiffuseAlphaMaskProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];  		success = gDeferredNonIndexedDiffuseAlphaMaskProgram.createShader(NULL, NULL);          llassert(success); @@ -1391,8 +1391,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredNonIndexedDiffuseAlphaMaskNoColorProgram.mName = "Deferred Diffuse Non-Indexed Alpha Mask Shader";  		gDeferredNonIndexedDiffuseAlphaMaskNoColorProgram.mFeatures.encodesNormal = true;  		gDeferredNonIndexedDiffuseAlphaMaskNoColorProgram.mShaderFiles.clear(); -		gDeferredNonIndexedDiffuseAlphaMaskNoColorProgram.mShaderFiles.push_back(make_pair("deferred/diffuseNoColorV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredNonIndexedDiffuseAlphaMaskNoColorProgram.mShaderFiles.push_back(make_pair("deferred/diffuseAlphaMaskNoColorF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredNonIndexedDiffuseAlphaMaskNoColorProgram.mShaderFiles.push_back(make_pair("deferred/diffuseNoColorV.glsl", GL_VERTEX_SHADER)); +		gDeferredNonIndexedDiffuseAlphaMaskNoColorProgram.mShaderFiles.push_back(make_pair("deferred/diffuseAlphaMaskNoColorF.glsl", GL_FRAGMENT_SHADER));  		gDeferredNonIndexedDiffuseAlphaMaskNoColorProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];  		success = gDeferredNonIndexedDiffuseAlphaMaskNoColorProgram.createShader(NULL, NULL);  		llassert(success); @@ -1404,8 +1404,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredNonIndexedDiffuseProgram.mShaderFiles.clear();          gDeferredNonIndexedDiffuseProgram.mFeatures.encodesNormal = true;          gDeferredNonIndexedDiffuseProgram.mFeatures.hasSrgb = true; -		gDeferredNonIndexedDiffuseProgram.mShaderFiles.push_back(make_pair("deferred/diffuseV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredNonIndexedDiffuseProgram.mShaderFiles.push_back(make_pair("deferred/diffuseF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredNonIndexedDiffuseProgram.mShaderFiles.push_back(make_pair("deferred/diffuseV.glsl", GL_VERTEX_SHADER)); +		gDeferredNonIndexedDiffuseProgram.mShaderFiles.push_back(make_pair("deferred/diffuseF.glsl", GL_FRAGMENT_SHADER));  		gDeferredNonIndexedDiffuseProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];  		success = gDeferredNonIndexedDiffuseProgram.createShader(NULL, NULL);          llassert(success); @@ -1416,8 +1416,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredBumpProgram.mName = "Deferred Bump Shader";  		gDeferredBumpProgram.mFeatures.encodesNormal = true;  		gDeferredBumpProgram.mShaderFiles.clear(); -		gDeferredBumpProgram.mShaderFiles.push_back(make_pair("deferred/bumpV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredBumpProgram.mShaderFiles.push_back(make_pair("deferred/bumpF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredBumpProgram.mShaderFiles.push_back(make_pair("deferred/bumpV.glsl", GL_VERTEX_SHADER)); +		gDeferredBumpProgram.mShaderFiles.push_back(make_pair("deferred/bumpF.glsl", GL_FRAGMENT_SHADER));  		gDeferredBumpProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];          success = make_rigged_variant(gDeferredBumpProgram, gDeferredSkinnedBumpProgram);  		success = success && gDeferredBumpProgram.createShader(NULL, NULL); @@ -1453,8 +1453,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  			U32 alpha_mode = i & 0x3;  			gDeferredMaterialProgram[i].mShaderFiles.clear(); -			gDeferredMaterialProgram[i].mShaderFiles.push_back(make_pair("deferred/materialV.glsl", GL_VERTEX_SHADER_ARB)); -			gDeferredMaterialProgram[i].mShaderFiles.push_back(make_pair("deferred/materialF.glsl", GL_FRAGMENT_SHADER_ARB)); +			gDeferredMaterialProgram[i].mShaderFiles.push_back(make_pair("deferred/materialV.glsl", GL_VERTEX_SHADER)); +			gDeferredMaterialProgram[i].mShaderFiles.push_back(make_pair("deferred/materialF.glsl", GL_FRAGMENT_SHADER));  			gDeferredMaterialProgram[i].mShaderLevel = mShaderLevel[SHADER_DEFERRED];  			gDeferredMaterialProgram[i].clearPermutations(); @@ -1532,8 +1532,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()              U32 alpha_mode = i & 0x3;              gDeferredMaterialWaterProgram[i].mShaderFiles.clear(); -            gDeferredMaterialWaterProgram[i].mShaderFiles.push_back(make_pair("deferred/materialV.glsl", GL_VERTEX_SHADER_ARB)); -            gDeferredMaterialWaterProgram[i].mShaderFiles.push_back(make_pair("deferred/materialF.glsl", GL_FRAGMENT_SHADER_ARB)); +            gDeferredMaterialWaterProgram[i].mShaderFiles.push_back(make_pair("deferred/materialV.glsl", GL_VERTEX_SHADER)); +            gDeferredMaterialWaterProgram[i].mShaderFiles.push_back(make_pair("deferred/materialF.glsl", GL_FRAGMENT_SHADER));              gDeferredMaterialWaterProgram[i].mShaderLevel = mShaderLevel[SHADER_DEFERRED];              gDeferredMaterialWaterProgram[i].mShaderGroup = LLGLSLShader::SG_WATER; @@ -1634,8 +1634,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredTreeProgram.mName = "Deferred Tree Shader";  		gDeferredTreeProgram.mShaderFiles.clear();          gDeferredTreeProgram.mFeatures.encodesNormal = true; -		gDeferredTreeProgram.mShaderFiles.push_back(make_pair("deferred/treeV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredTreeProgram.mShaderFiles.push_back(make_pair("deferred/treeF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredTreeProgram.mShaderFiles.push_back(make_pair("deferred/treeV.glsl", GL_VERTEX_SHADER)); +		gDeferredTreeProgram.mShaderFiles.push_back(make_pair("deferred/treeF.glsl", GL_FRAGMENT_SHADER));  		gDeferredTreeProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];  		success = gDeferredTreeProgram.createShader(NULL, NULL);  	} @@ -1646,8 +1646,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredTreeShadowProgram.mShaderFiles.clear();  		gDeferredTreeShadowProgram.mFeatures.isDeferred = true;  		gDeferredTreeShadowProgram.mFeatures.hasShadows = true; -		gDeferredTreeShadowProgram.mShaderFiles.push_back(make_pair("deferred/treeShadowV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredTreeShadowProgram.mShaderFiles.push_back(make_pair("deferred/treeShadowF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredTreeShadowProgram.mShaderFiles.push_back(make_pair("deferred/treeShadowV.glsl", GL_VERTEX_SHADER)); +		gDeferredTreeShadowProgram.mShaderFiles.push_back(make_pair("deferred/treeShadowF.glsl", GL_FRAGMENT_SHADER));  		gDeferredTreeShadowProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];          gDeferredTreeShadowProgram.mRiggedVariant = &gDeferredSkinnedTreeShadowProgram;  		success = gDeferredTreeShadowProgram.createShader(NULL, NULL); @@ -1661,8 +1661,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()          gDeferredSkinnedTreeShadowProgram.mFeatures.isDeferred = true;          gDeferredSkinnedTreeShadowProgram.mFeatures.hasShadows = true;          gDeferredSkinnedTreeShadowProgram.mFeatures.hasObjectSkinning = true; -        gDeferredSkinnedTreeShadowProgram.mShaderFiles.push_back(make_pair("deferred/treeShadowSkinnedV.glsl", GL_VERTEX_SHADER_ARB)); -        gDeferredSkinnedTreeShadowProgram.mShaderFiles.push_back(make_pair("deferred/treeShadowF.glsl", GL_FRAGMENT_SHADER_ARB)); +        gDeferredSkinnedTreeShadowProgram.mShaderFiles.push_back(make_pair("deferred/treeShadowSkinnedV.glsl", GL_VERTEX_SHADER)); +        gDeferredSkinnedTreeShadowProgram.mShaderFiles.push_back(make_pair("deferred/treeShadowF.glsl", GL_FRAGMENT_SHADER));          gDeferredSkinnedTreeShadowProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];          success = gDeferredSkinnedTreeShadowProgram.createShader(NULL, NULL);          llassert(success); @@ -1675,8 +1675,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredImpostorProgram.mFeatures.encodesNormal = true;  		//gDeferredImpostorProgram.mFeatures.isDeferred = true;  		gDeferredImpostorProgram.mShaderFiles.clear(); -		gDeferredImpostorProgram.mShaderFiles.push_back(make_pair("deferred/impostorV.glsl", GL_VERTEX_SHADER_ARB)); -        gDeferredImpostorProgram.mShaderFiles.push_back(make_pair("deferred/impostorF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredImpostorProgram.mShaderFiles.push_back(make_pair("deferred/impostorV.glsl", GL_VERTEX_SHADER)); +        gDeferredImpostorProgram.mShaderFiles.push_back(make_pair("deferred/impostorF.glsl", GL_FRAGMENT_SHADER));          gDeferredImpostorProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];          success = gDeferredImpostorProgram.createShader(NULL, NULL);          llassert(success); @@ -1690,8 +1690,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()          gDeferredLightProgram.mFeatures.hasSrgb = true;  		gDeferredLightProgram.mShaderFiles.clear(); -		gDeferredLightProgram.mShaderFiles.push_back(make_pair("deferred/pointLightV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredLightProgram.mShaderFiles.push_back(make_pair("deferred/pointLightF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredLightProgram.mShaderFiles.push_back(make_pair("deferred/pointLightV.glsl", GL_VERTEX_SHADER)); +		gDeferredLightProgram.mShaderFiles.push_back(make_pair("deferred/pointLightF.glsl", GL_FRAGMENT_SHADER));  		gDeferredLightProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];          gDeferredLightProgram.clearPermutations(); @@ -1726,8 +1726,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()              gDeferredMultiLightProgram[i].clearPermutations();  			gDeferredMultiLightProgram[i].mShaderFiles.clear(); -			gDeferredMultiLightProgram[i].mShaderFiles.push_back(make_pair("deferred/multiPointLightV.glsl", GL_VERTEX_SHADER_ARB)); -			gDeferredMultiLightProgram[i].mShaderFiles.push_back(make_pair("deferred/multiPointLightF.glsl", GL_FRAGMENT_SHADER_ARB)); +			gDeferredMultiLightProgram[i].mShaderFiles.push_back(make_pair("deferred/multiPointLightV.glsl", GL_VERTEX_SHADER)); +			gDeferredMultiLightProgram[i].mShaderFiles.push_back(make_pair("deferred/multiPointLightF.glsl", GL_FRAGMENT_SHADER));  			gDeferredMultiLightProgram[i].mShaderLevel = mShaderLevel[SHADER_DEFERRED];  			gDeferredMultiLightProgram[i].addPermutation("LIGHT_COUNT", llformat("%d", i+1)); @@ -1760,8 +1760,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredSpotLightProgram.mFeatures.hasShadows = true;          gDeferredSpotLightProgram.clearPermutations(); -		gDeferredSpotLightProgram.mShaderFiles.push_back(make_pair("deferred/pointLightV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredSpotLightProgram.mShaderFiles.push_back(make_pair("deferred/spotLightF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredSpotLightProgram.mShaderFiles.push_back(make_pair("deferred/pointLightV.glsl", GL_VERTEX_SHADER)); +		gDeferredSpotLightProgram.mShaderFiles.push_back(make_pair("deferred/spotLightF.glsl", GL_FRAGMENT_SHADER));  		gDeferredSpotLightProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];          if (ambient_kill) @@ -1792,8 +1792,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()          gDeferredMultiSpotLightProgram.clearPermutations();  		gDeferredMultiSpotLightProgram.mShaderFiles.clear(); -		gDeferredMultiSpotLightProgram.mShaderFiles.push_back(make_pair("deferred/multiPointLightV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredMultiSpotLightProgram.mShaderFiles.push_back(make_pair("deferred/multiSpotLightF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredMultiSpotLightProgram.mShaderFiles.push_back(make_pair("deferred/multiPointLightV.glsl", GL_VERTEX_SHADER)); +		gDeferredMultiSpotLightProgram.mShaderFiles.push_back(make_pair("deferred/multiSpotLightF.glsl", GL_FRAGMENT_SHADER));  		gDeferredMultiSpotLightProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];          if (local_light_kill) @@ -1832,8 +1832,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()          gDeferredSunProgram.mName = "Deferred Sun Shader";  		gDeferredSunProgram.mShaderFiles.clear(); -		gDeferredSunProgram.mShaderFiles.push_back(make_pair(vertex, GL_VERTEX_SHADER_ARB)); -		gDeferredSunProgram.mShaderFiles.push_back(make_pair(fragment, GL_FRAGMENT_SHADER_ARB)); +		gDeferredSunProgram.mShaderFiles.push_back(make_pair(vertex, GL_VERTEX_SHADER)); +		gDeferredSunProgram.mShaderFiles.push_back(make_pair(fragment, GL_FRAGMENT_SHADER));  		gDeferredSunProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];          success = gDeferredSunProgram.createShader(NULL, NULL); @@ -1846,8 +1846,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredBlurLightProgram.mFeatures.isDeferred = true;  		gDeferredBlurLightProgram.mShaderFiles.clear(); -		gDeferredBlurLightProgram.mShaderFiles.push_back(make_pair("deferred/blurLightV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredBlurLightProgram.mShaderFiles.push_back(make_pair("deferred/blurLightF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredBlurLightProgram.mShaderFiles.push_back(make_pair("deferred/blurLightV.glsl", GL_VERTEX_SHADER)); +		gDeferredBlurLightProgram.mShaderFiles.push_back(make_pair("deferred/blurLightF.glsl", GL_FRAGMENT_SHADER));  		gDeferredBlurLightProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];  		success = gDeferredBlurLightProgram.createShader(NULL, NULL); @@ -1895,8 +1895,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()              }              shader->mShaderFiles.clear(); -            shader->mShaderFiles.push_back(make_pair("deferred/alphaV.glsl", GL_VERTEX_SHADER_ARB)); -            shader->mShaderFiles.push_back(make_pair("deferred/alphaF.glsl", GL_FRAGMENT_SHADER_ARB)); +            shader->mShaderFiles.push_back(make_pair("deferred/alphaV.glsl", GL_VERTEX_SHADER)); +            shader->mShaderFiles.push_back(make_pair("deferred/alphaF.glsl", GL_FRAGMENT_SHADER));              shader->clearPermutations();              shader->addPermutation("USE_VERTEX_COLOR", "1"); @@ -1971,8 +1971,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()              }              shader->mShaderFiles.clear(); -            shader->mShaderFiles.push_back(make_pair("deferred/alphaV.glsl", GL_VERTEX_SHADER_ARB)); -            shader->mShaderFiles.push_back(make_pair("deferred/alphaF.glsl", GL_FRAGMENT_SHADER_ARB)); +            shader->mShaderFiles.push_back(make_pair("deferred/alphaV.glsl", GL_VERTEX_SHADER)); +            shader->mShaderFiles.push_back(make_pair("deferred/alphaF.glsl", GL_FRAGMENT_SHADER));              shader->clearPermutations();              shader->addPermutation("USE_INDEXED_TEX", "1"); @@ -2042,8 +2042,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()              }              shader[i]->mShaderGroup = LLGLSLShader::SG_WATER;              shader[i]->mShaderFiles.clear(); -            shader[i]->mShaderFiles.push_back(make_pair("deferred/alphaV.glsl", GL_VERTEX_SHADER_ARB)); -            shader[i]->mShaderFiles.push_back(make_pair("deferred/alphaF.glsl", GL_FRAGMENT_SHADER_ARB)); +            shader[i]->mShaderFiles.push_back(make_pair("deferred/alphaV.glsl", GL_VERTEX_SHADER)); +            shader[i]->mShaderFiles.push_back(make_pair("deferred/alphaF.glsl", GL_FRAGMENT_SHADER));              shader[i]->clearPermutations();              shader[i]->addPermutation("USE_INDEXED_TEX", "1"); @@ -2102,8 +2102,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredAvatarEyesProgram.mFeatures.hasShadows = true;  		gDeferredAvatarEyesProgram.mShaderFiles.clear(); -		gDeferredAvatarEyesProgram.mShaderFiles.push_back(make_pair("deferred/avatarEyesV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredAvatarEyesProgram.mShaderFiles.push_back(make_pair("deferred/diffuseF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredAvatarEyesProgram.mShaderFiles.push_back(make_pair("deferred/avatarEyesV.glsl", GL_VERTEX_SHADER)); +		gDeferredAvatarEyesProgram.mShaderFiles.push_back(make_pair("deferred/diffuseF.glsl", GL_FRAGMENT_SHADER));  		gDeferredAvatarEyesProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];  		success = gDeferredAvatarEyesProgram.createShader(NULL, NULL);  		llassert(success); @@ -2118,8 +2118,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredFullbrightProgram.mFeatures.hasSrgb = true;		  		gDeferredFullbrightProgram.mFeatures.mIndexedTextureChannels = LLGLSLShader::sIndexedTextureChannels;  		gDeferredFullbrightProgram.mShaderFiles.clear(); -		gDeferredFullbrightProgram.mShaderFiles.push_back(make_pair("deferred/fullbrightV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredFullbrightProgram.mShaderFiles.push_back(make_pair("deferred/fullbrightF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredFullbrightProgram.mShaderFiles.push_back(make_pair("deferred/fullbrightV.glsl", GL_VERTEX_SHADER)); +		gDeferredFullbrightProgram.mShaderFiles.push_back(make_pair("deferred/fullbrightF.glsl", GL_FRAGMENT_SHADER));  		gDeferredFullbrightProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];          success = make_rigged_variant(gDeferredFullbrightProgram, gDeferredSkinnedFullbrightProgram);  		success = gDeferredFullbrightProgram.createShader(NULL, NULL); @@ -2135,8 +2135,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredFullbrightAlphaMaskProgram.mFeatures.hasSrgb = true;		  		gDeferredFullbrightAlphaMaskProgram.mFeatures.mIndexedTextureChannels = LLGLSLShader::sIndexedTextureChannels;  		gDeferredFullbrightAlphaMaskProgram.mShaderFiles.clear(); -		gDeferredFullbrightAlphaMaskProgram.mShaderFiles.push_back(make_pair("deferred/fullbrightV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredFullbrightAlphaMaskProgram.mShaderFiles.push_back(make_pair("deferred/fullbrightF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredFullbrightAlphaMaskProgram.mShaderFiles.push_back(make_pair("deferred/fullbrightV.glsl", GL_VERTEX_SHADER)); +		gDeferredFullbrightAlphaMaskProgram.mShaderFiles.push_back(make_pair("deferred/fullbrightF.glsl", GL_FRAGMENT_SHADER));  		gDeferredFullbrightAlphaMaskProgram.addPermutation("HAS_ALPHA_MASK","1");  		gDeferredFullbrightAlphaMaskProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];          success = make_rigged_variant(gDeferredFullbrightAlphaMaskProgram, gDeferredSkinnedFullbrightAlphaMaskProgram); @@ -2154,8 +2154,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredFullbrightWaterProgram.mFeatures.hasSrgb = true;  		gDeferredFullbrightWaterProgram.mFeatures.mIndexedTextureChannels = LLGLSLShader::sIndexedTextureChannels;  		gDeferredFullbrightWaterProgram.mShaderFiles.clear(); -		gDeferredFullbrightWaterProgram.mShaderFiles.push_back(make_pair("deferred/fullbrightV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredFullbrightWaterProgram.mShaderFiles.push_back(make_pair("deferred/fullbrightF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredFullbrightWaterProgram.mShaderFiles.push_back(make_pair("deferred/fullbrightV.glsl", GL_VERTEX_SHADER)); +		gDeferredFullbrightWaterProgram.mShaderFiles.push_back(make_pair("deferred/fullbrightF.glsl", GL_FRAGMENT_SHADER));  		gDeferredFullbrightWaterProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];  		gDeferredFullbrightWaterProgram.mShaderGroup = LLGLSLShader::SG_WATER;  		gDeferredFullbrightWaterProgram.addPermutation("WATER_FOG","1"); @@ -2174,8 +2174,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredFullbrightAlphaMaskWaterProgram.mFeatures.hasSrgb = true;  		gDeferredFullbrightAlphaMaskWaterProgram.mFeatures.mIndexedTextureChannels = LLGLSLShader::sIndexedTextureChannels;  		gDeferredFullbrightAlphaMaskWaterProgram.mShaderFiles.clear(); -		gDeferredFullbrightAlphaMaskWaterProgram.mShaderFiles.push_back(make_pair("deferred/fullbrightV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredFullbrightAlphaMaskWaterProgram.mShaderFiles.push_back(make_pair("deferred/fullbrightF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredFullbrightAlphaMaskWaterProgram.mShaderFiles.push_back(make_pair("deferred/fullbrightV.glsl", GL_VERTEX_SHADER)); +		gDeferredFullbrightAlphaMaskWaterProgram.mShaderFiles.push_back(make_pair("deferred/fullbrightF.glsl", GL_FRAGMENT_SHADER));  		gDeferredFullbrightAlphaMaskWaterProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];  		gDeferredFullbrightAlphaMaskWaterProgram.mShaderGroup = LLGLSLShader::SG_WATER;  		gDeferredFullbrightAlphaMaskWaterProgram.addPermutation("HAS_ALPHA_MASK","1"); @@ -2195,8 +2195,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredFullbrightShinyProgram.mFeatures.hasSrgb = true;  		gDeferredFullbrightShinyProgram.mFeatures.mIndexedTextureChannels = LLGLSLShader::sIndexedTextureChannels-1;  		gDeferredFullbrightShinyProgram.mShaderFiles.clear(); -		gDeferredFullbrightShinyProgram.mShaderFiles.push_back(make_pair("deferred/fullbrightShinyV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredFullbrightShinyProgram.mShaderFiles.push_back(make_pair("deferred/fullbrightShinyF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredFullbrightShinyProgram.mShaderFiles.push_back(make_pair("deferred/fullbrightShinyV.glsl", GL_VERTEX_SHADER)); +		gDeferredFullbrightShinyProgram.mShaderFiles.push_back(make_pair("deferred/fullbrightShinyF.glsl", GL_FRAGMENT_SHADER));  		gDeferredFullbrightShinyProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];          success = make_rigged_variant(gDeferredFullbrightShinyProgram, gDeferredSkinnedFullbrightShinyProgram);  		success = success && gDeferredFullbrightShinyProgram.createShader(NULL, NULL); @@ -2211,8 +2211,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredEmissiveProgram.mFeatures.hasTransport = true;  		gDeferredEmissiveProgram.mFeatures.mIndexedTextureChannels = LLGLSLShader::sIndexedTextureChannels;  		gDeferredEmissiveProgram.mShaderFiles.clear(); -		gDeferredEmissiveProgram.mShaderFiles.push_back(make_pair("deferred/emissiveV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredEmissiveProgram.mShaderFiles.push_back(make_pair("deferred/emissiveF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredEmissiveProgram.mShaderFiles.push_back(make_pair("deferred/emissiveV.glsl", GL_VERTEX_SHADER)); +		gDeferredEmissiveProgram.mShaderFiles.push_back(make_pair("deferred/emissiveF.glsl", GL_FRAGMENT_SHADER));  		gDeferredEmissiveProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];          success = make_rigged_variant(gDeferredEmissiveProgram, gDeferredSkinnedEmissiveProgram);  		success = success && gDeferredEmissiveProgram.createShader(NULL, NULL); @@ -2230,8 +2230,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()          gDeferredWaterProgram.mFeatures.hasSrgb = true;  		gDeferredWaterProgram.mShaderFiles.clear(); -		gDeferredWaterProgram.mShaderFiles.push_back(make_pair("deferred/waterV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredWaterProgram.mShaderFiles.push_back(make_pair("deferred/waterF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredWaterProgram.mShaderFiles.push_back(make_pair("deferred/waterV.glsl", GL_VERTEX_SHADER)); +		gDeferredWaterProgram.mShaderFiles.push_back(make_pair("deferred/waterF.glsl", GL_FRAGMENT_SHADER));  		gDeferredWaterProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];  		gDeferredWaterProgram.mShaderGroup = LLGLSLShader::SG_WATER;  		success = gDeferredWaterProgram.createShader(NULL, NULL); @@ -2251,8 +2251,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		//gDeferredUnderWaterProgram.mFeatures.hasShadows = true;  		gDeferredUnderWaterProgram.mShaderFiles.clear(); -		gDeferredUnderWaterProgram.mShaderFiles.push_back(make_pair("deferred/waterV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredUnderWaterProgram.mShaderFiles.push_back(make_pair("deferred/underWaterF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredUnderWaterProgram.mShaderFiles.push_back(make_pair("deferred/waterV.glsl", GL_VERTEX_SHADER)); +		gDeferredUnderWaterProgram.mShaderFiles.push_back(make_pair("deferred/underWaterF.glsl", GL_FRAGMENT_SHADER));  		gDeferredUnderWaterProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];          gDeferredUnderWaterProgram.mShaderGroup = LLGLSLShader::SG_WATER;  		success = gDeferredUnderWaterProgram.createShader(NULL, NULL); @@ -2272,8 +2272,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredSoftenProgram.mFeatures.hasShadows = use_sun_shadow;          gDeferredSoftenProgram.clearPermutations(); -		gDeferredSoftenProgram.mShaderFiles.push_back(make_pair("deferred/softenLightV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredSoftenProgram.mShaderFiles.push_back(make_pair("deferred/softenLightF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredSoftenProgram.mShaderFiles.push_back(make_pair("deferred/softenLightV.glsl", GL_VERTEX_SHADER)); +		gDeferredSoftenProgram.mShaderFiles.push_back(make_pair("deferred/softenLightF.glsl", GL_FRAGMENT_SHADER));  		gDeferredSoftenProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED]; @@ -2305,8 +2305,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  	{  		gDeferredSoftenWaterProgram.mName = "Deferred Soften Underwater Shader";  		gDeferredSoftenWaterProgram.mShaderFiles.clear(); -		gDeferredSoftenWaterProgram.mShaderFiles.push_back(make_pair("deferred/softenLightV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredSoftenWaterProgram.mShaderFiles.push_back(make_pair("deferred/softenLightF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredSoftenWaterProgram.mShaderFiles.push_back(make_pair("deferred/softenLightV.glsl", GL_VERTEX_SHADER)); +		gDeferredSoftenWaterProgram.mShaderFiles.push_back(make_pair("deferred/softenLightF.glsl", GL_FRAGMENT_SHADER));          gDeferredSoftenWaterProgram.clearPermutations();  		gDeferredSoftenWaterProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED]; @@ -2351,8 +2351,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredShadowProgram.mFeatures.isDeferred = true;  		gDeferredShadowProgram.mFeatures.hasShadows = true;  		gDeferredShadowProgram.mShaderFiles.clear(); -		gDeferredShadowProgram.mShaderFiles.push_back(make_pair("deferred/shadowV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredShadowProgram.mShaderFiles.push_back(make_pair("deferred/shadowF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredShadowProgram.mShaderFiles.push_back(make_pair("deferred/shadowV.glsl", GL_VERTEX_SHADER)); +		gDeferredShadowProgram.mShaderFiles.push_back(make_pair("deferred/shadowF.glsl", GL_FRAGMENT_SHADER));  		gDeferredShadowProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];  		if (gGLManager.mHasDepthClamp)  		{ @@ -2370,8 +2370,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()          gDeferredSkinnedShadowProgram.mFeatures.hasShadows = true;          gDeferredSkinnedShadowProgram.mFeatures.hasObjectSkinning = true;          gDeferredSkinnedShadowProgram.mShaderFiles.clear(); -        gDeferredSkinnedShadowProgram.mShaderFiles.push_back(make_pair("deferred/shadowSkinnedV.glsl", GL_VERTEX_SHADER_ARB)); -        gDeferredSkinnedShadowProgram.mShaderFiles.push_back(make_pair("deferred/shadowF.glsl", GL_FRAGMENT_SHADER_ARB)); +        gDeferredSkinnedShadowProgram.mShaderFiles.push_back(make_pair("deferred/shadowSkinnedV.glsl", GL_VERTEX_SHADER)); +        gDeferredSkinnedShadowProgram.mShaderFiles.push_back(make_pair("deferred/shadowF.glsl", GL_FRAGMENT_SHADER));          gDeferredSkinnedShadowProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];          if (gGLManager.mHasDepthClamp)          { @@ -2387,8 +2387,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredShadowCubeProgram.mFeatures.isDeferred = true;  		gDeferredShadowCubeProgram.mFeatures.hasShadows = true;  		gDeferredShadowCubeProgram.mShaderFiles.clear(); -		gDeferredShadowCubeProgram.mShaderFiles.push_back(make_pair("deferred/shadowCubeV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredShadowCubeProgram.mShaderFiles.push_back(make_pair("deferred/shadowF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredShadowCubeProgram.mShaderFiles.push_back(make_pair("deferred/shadowCubeV.glsl", GL_VERTEX_SHADER)); +		gDeferredShadowCubeProgram.mShaderFiles.push_back(make_pair("deferred/shadowF.glsl", GL_FRAGMENT_SHADER));  		if (gGLManager.mHasDepthClamp)  		{  			gDeferredShadowCubeProgram.addPermutation("DEPTH_CLAMP", "1"); @@ -2404,8 +2404,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredShadowFullbrightAlphaMaskProgram.mFeatures.mIndexedTextureChannels = LLGLSLShader::sIndexedTextureChannels;  		gDeferredShadowFullbrightAlphaMaskProgram.mShaderFiles.clear(); -		gDeferredShadowFullbrightAlphaMaskProgram.mShaderFiles.push_back(make_pair("deferred/shadowAlphaMaskV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredShadowFullbrightAlphaMaskProgram.mShaderFiles.push_back(make_pair("deferred/shadowAlphaMaskF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredShadowFullbrightAlphaMaskProgram.mShaderFiles.push_back(make_pair("deferred/shadowAlphaMaskV.glsl", GL_VERTEX_SHADER)); +		gDeferredShadowFullbrightAlphaMaskProgram.mShaderFiles.push_back(make_pair("deferred/shadowAlphaMaskF.glsl", GL_FRAGMENT_SHADER));          gDeferredShadowFullbrightAlphaMaskProgram.clearPermutations();  		if (gGLManager.mHasDepthClamp) @@ -2425,8 +2425,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()          gDeferredSkinnedShadowFullbrightAlphaMaskProgram.mFeatures.mIndexedTextureChannels = LLGLSLShader::sIndexedTextureChannels;          gDeferredSkinnedShadowFullbrightAlphaMaskProgram.mFeatures.hasObjectSkinning = true;          gDeferredSkinnedShadowFullbrightAlphaMaskProgram.mShaderFiles.clear(); -        gDeferredSkinnedShadowFullbrightAlphaMaskProgram.mShaderFiles.push_back(make_pair("deferred/shadowAlphaMaskSkinnedV.glsl", GL_VERTEX_SHADER_ARB)); -        gDeferredSkinnedShadowFullbrightAlphaMaskProgram.mShaderFiles.push_back(make_pair("deferred/shadowAlphaMaskF.glsl", GL_FRAGMENT_SHADER_ARB)); +        gDeferredSkinnedShadowFullbrightAlphaMaskProgram.mShaderFiles.push_back(make_pair("deferred/shadowAlphaMaskSkinnedV.glsl", GL_VERTEX_SHADER)); +        gDeferredSkinnedShadowFullbrightAlphaMaskProgram.mShaderFiles.push_back(make_pair("deferred/shadowAlphaMaskF.glsl", GL_FRAGMENT_SHADER));          gDeferredSkinnedShadowFullbrightAlphaMaskProgram.clearPermutations();          if (gGLManager.mHasDepthClamp) @@ -2445,8 +2445,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredShadowAlphaMaskProgram.mFeatures.mIndexedTextureChannels = LLGLSLShader::sIndexedTextureChannels;  		gDeferredShadowAlphaMaskProgram.mShaderFiles.clear(); -		gDeferredShadowAlphaMaskProgram.mShaderFiles.push_back(make_pair("deferred/shadowAlphaMaskV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredShadowAlphaMaskProgram.mShaderFiles.push_back(make_pair("deferred/shadowAlphaMaskF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredShadowAlphaMaskProgram.mShaderFiles.push_back(make_pair("deferred/shadowAlphaMaskV.glsl", GL_VERTEX_SHADER)); +		gDeferredShadowAlphaMaskProgram.mShaderFiles.push_back(make_pair("deferred/shadowAlphaMaskF.glsl", GL_FRAGMENT_SHADER));  		if (gGLManager.mHasDepthClamp)  		{  			gDeferredShadowAlphaMaskProgram.addPermutation("DEPTH_CLAMP", "1"); @@ -2463,8 +2463,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()          gDeferredSkinnedShadowAlphaMaskProgram.mFeatures.mIndexedTextureChannels = LLGLSLShader::sIndexedTextureChannels;          gDeferredSkinnedShadowAlphaMaskProgram.mFeatures.hasObjectSkinning = true;          gDeferredSkinnedShadowAlphaMaskProgram.mShaderFiles.clear(); -        gDeferredSkinnedShadowAlphaMaskProgram.mShaderFiles.push_back(make_pair("deferred/shadowAlphaMaskSkinnedV.glsl", GL_VERTEX_SHADER_ARB)); -        gDeferredSkinnedShadowAlphaMaskProgram.mShaderFiles.push_back(make_pair("deferred/shadowAlphaMaskF.glsl", GL_FRAGMENT_SHADER_ARB)); +        gDeferredSkinnedShadowAlphaMaskProgram.mShaderFiles.push_back(make_pair("deferred/shadowAlphaMaskSkinnedV.glsl", GL_VERTEX_SHADER)); +        gDeferredSkinnedShadowAlphaMaskProgram.mShaderFiles.push_back(make_pair("deferred/shadowAlphaMaskF.glsl", GL_FRAGMENT_SHADER));          if (gGLManager.mHasDepthClamp)          {              gDeferredSkinnedShadowAlphaMaskProgram.addPermutation("DEPTH_CLAMP", "1"); @@ -2480,8 +2480,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredAvatarShadowProgram.mFeatures.hasSkinning = true;  		gDeferredAvatarShadowProgram.mShaderFiles.clear(); -		gDeferredAvatarShadowProgram.mShaderFiles.push_back(make_pair("deferred/avatarShadowV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredAvatarShadowProgram.mShaderFiles.push_back(make_pair("deferred/avatarShadowF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredAvatarShadowProgram.mShaderFiles.push_back(make_pair("deferred/avatarShadowV.glsl", GL_VERTEX_SHADER)); +		gDeferredAvatarShadowProgram.mShaderFiles.push_back(make_pair("deferred/avatarShadowF.glsl", GL_FRAGMENT_SHADER));  		if (gGLManager.mHasDepthClamp)  		{  			gDeferredAvatarShadowProgram.addPermutation("DEPTH_CLAMP", "1"); @@ -2496,8 +2496,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredAvatarAlphaShadowProgram.mName = "Deferred Avatar Alpha Shadow Shader";  		gDeferredAvatarAlphaShadowProgram.mFeatures.hasSkinning = true;  		gDeferredAvatarAlphaShadowProgram.mShaderFiles.clear(); -		gDeferredAvatarAlphaShadowProgram.mShaderFiles.push_back(make_pair("deferred/avatarAlphaShadowV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredAvatarAlphaShadowProgram.mShaderFiles.push_back(make_pair("deferred/avatarAlphaShadowF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredAvatarAlphaShadowProgram.mShaderFiles.push_back(make_pair("deferred/avatarAlphaShadowV.glsl", GL_VERTEX_SHADER)); +		gDeferredAvatarAlphaShadowProgram.mShaderFiles.push_back(make_pair("deferred/avatarAlphaShadowF.glsl", GL_FRAGMENT_SHADER));  		gDeferredAvatarAlphaShadowProgram.addPermutation("DEPTH_CLAMP", gGLManager.mHasDepthClamp ? "1" : "0");  		gDeferredAvatarAlphaShadowProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];  		success = gDeferredAvatarAlphaShadowProgram.createShader(NULL, NULL); @@ -2509,8 +2509,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredAvatarAlphaMaskShadowProgram.mName = "Deferred Avatar Alpha Mask Shadow Shader";  		gDeferredAvatarAlphaMaskShadowProgram.mFeatures.hasSkinning  = true;  		gDeferredAvatarAlphaMaskShadowProgram.mShaderFiles.clear(); -		gDeferredAvatarAlphaMaskShadowProgram.mShaderFiles.push_back(make_pair("deferred/avatarAlphaShadowV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredAvatarAlphaMaskShadowProgram.mShaderFiles.push_back(make_pair("deferred/avatarAlphaMaskShadowF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredAvatarAlphaMaskShadowProgram.mShaderFiles.push_back(make_pair("deferred/avatarAlphaShadowV.glsl", GL_VERTEX_SHADER)); +		gDeferredAvatarAlphaMaskShadowProgram.mShaderFiles.push_back(make_pair("deferred/avatarAlphaMaskShadowF.glsl", GL_FRAGMENT_SHADER));  		gDeferredAvatarAlphaMaskShadowProgram.addPermutation("DEPTH_CLAMP", gGLManager.mHasDepthClamp ? "1" : "0");  		gDeferredAvatarAlphaMaskShadowProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];  		success = gDeferredAvatarAlphaMaskShadowProgram.createShader(NULL, NULL); @@ -2523,8 +2523,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredAttachmentShadowProgram.mFeatures.hasObjectSkinning = true;  		gDeferredAttachmentShadowProgram.mShaderFiles.clear(); -		gDeferredAttachmentShadowProgram.mShaderFiles.push_back(make_pair("deferred/attachmentShadowV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredAttachmentShadowProgram.mShaderFiles.push_back(make_pair("deferred/attachmentShadowF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredAttachmentShadowProgram.mShaderFiles.push_back(make_pair("deferred/attachmentShadowV.glsl", GL_VERTEX_SHADER)); +		gDeferredAttachmentShadowProgram.mShaderFiles.push_back(make_pair("deferred/attachmentShadowF.glsl", GL_FRAGMENT_SHADER));  		if (gGLManager.mHasDepthClamp)  		{  			gDeferredAttachmentShadowProgram.addPermutation("DEPTH_CLAMP", "1"); @@ -2539,8 +2539,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredAttachmentAlphaShadowProgram.mName = "Deferred Attachment Alpha Shadow Shader";  		gDeferredAttachmentAlphaShadowProgram.mFeatures.hasObjectSkinning = true;  		gDeferredAttachmentAlphaShadowProgram.mShaderFiles.clear(); -		gDeferredAttachmentAlphaShadowProgram.mShaderFiles.push_back(make_pair("deferred/attachmentAlphaShadowV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredAttachmentAlphaShadowProgram.mShaderFiles.push_back(make_pair("deferred/attachmentAlphaShadowF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredAttachmentAlphaShadowProgram.mShaderFiles.push_back(make_pair("deferred/attachmentAlphaShadowV.glsl", GL_VERTEX_SHADER)); +		gDeferredAttachmentAlphaShadowProgram.mShaderFiles.push_back(make_pair("deferred/attachmentAlphaShadowF.glsl", GL_FRAGMENT_SHADER));  		gDeferredAttachmentAlphaShadowProgram.addPermutation("DEPTH_CLAMP", gGLManager.mHasDepthClamp ? "1" : "0");  		gDeferredAttachmentAlphaShadowProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];  		success = gDeferredAttachmentAlphaShadowProgram.createShader(NULL, NULL); @@ -2552,8 +2552,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredAttachmentAlphaMaskShadowProgram.mName = "Deferred Attachment Alpha Mask Shadow Shader";  		gDeferredAttachmentAlphaMaskShadowProgram.mFeatures.hasObjectSkinning = true;  		gDeferredAttachmentAlphaMaskShadowProgram.mShaderFiles.clear(); -		gDeferredAttachmentAlphaMaskShadowProgram.mShaderFiles.push_back(make_pair("deferred/attachmentAlphaShadowV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredAttachmentAlphaMaskShadowProgram.mShaderFiles.push_back(make_pair("deferred/attachmentAlphaMaskShadowF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredAttachmentAlphaMaskShadowProgram.mShaderFiles.push_back(make_pair("deferred/attachmentAlphaShadowV.glsl", GL_VERTEX_SHADER)); +		gDeferredAttachmentAlphaMaskShadowProgram.mShaderFiles.push_back(make_pair("deferred/attachmentAlphaMaskShadowF.glsl", GL_FRAGMENT_SHADER));  		gDeferredAttachmentAlphaMaskShadowProgram.addPermutation("DEPTH_CLAMP", gGLManager.mHasDepthClamp ? "1" : "0");  		gDeferredAttachmentAlphaMaskShadowProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];  		success = gDeferredAttachmentAlphaMaskShadowProgram.createShader(NULL, NULL); @@ -2576,8 +2576,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredTerrainProgram.mFeatures.hasTransport = true;  		gDeferredTerrainProgram.mShaderFiles.clear(); -		gDeferredTerrainProgram.mShaderFiles.push_back(make_pair("deferred/terrainV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredTerrainProgram.mShaderFiles.push_back(make_pair("deferred/terrainF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredTerrainProgram.mShaderFiles.push_back(make_pair("deferred/terrainV.glsl", GL_VERTEX_SHADER)); +		gDeferredTerrainProgram.mShaderFiles.push_back(make_pair("deferred/terrainF.glsl", GL_FRAGMENT_SHADER));  		gDeferredTerrainProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];          success = gDeferredTerrainProgram.createShader(NULL, NULL);  		llassert(success); @@ -2599,8 +2599,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredTerrainWaterProgram.mFeatures.hasTransport = true;  		gDeferredTerrainWaterProgram.mShaderFiles.clear(); -		gDeferredTerrainWaterProgram.mShaderFiles.push_back(make_pair("deferred/terrainV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredTerrainWaterProgram.mShaderFiles.push_back(make_pair("deferred/terrainF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredTerrainWaterProgram.mShaderFiles.push_back(make_pair("deferred/terrainV.glsl", GL_VERTEX_SHADER)); +		gDeferredTerrainWaterProgram.mShaderFiles.push_back(make_pair("deferred/terrainF.glsl", GL_FRAGMENT_SHADER));  		gDeferredTerrainWaterProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];  		gDeferredTerrainWaterProgram.mShaderGroup = LLGLSLShader::SG_WATER;  		gDeferredTerrainWaterProgram.addPermutation("WATER_FOG", "1"); @@ -2614,8 +2614,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredAvatarProgram.mFeatures.hasSkinning = true;  		gDeferredAvatarProgram.mFeatures.encodesNormal = true;  		gDeferredAvatarProgram.mShaderFiles.clear(); -		gDeferredAvatarProgram.mShaderFiles.push_back(make_pair("deferred/avatarV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredAvatarProgram.mShaderFiles.push_back(make_pair("deferred/avatarF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredAvatarProgram.mShaderFiles.push_back(make_pair("deferred/avatarV.glsl", GL_VERTEX_SHADER)); +		gDeferredAvatarProgram.mShaderFiles.push_back(make_pair("deferred/avatarF.glsl", GL_FRAGMENT_SHADER));  		gDeferredAvatarProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];  		success = gDeferredAvatarProgram.createShader(NULL, NULL);  		llassert(success); @@ -2639,8 +2639,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredAvatarAlphaProgram.mFeatures.hasShadows = true;  		gDeferredAvatarAlphaProgram.mShaderFiles.clear(); -        gDeferredAvatarAlphaProgram.mShaderFiles.push_back(make_pair("deferred/alphaV.glsl", GL_VERTEX_SHADER_ARB)); -        gDeferredAvatarAlphaProgram.mShaderFiles.push_back(make_pair("deferred/alphaF.glsl", GL_FRAGMENT_SHADER_ARB)); +        gDeferredAvatarAlphaProgram.mShaderFiles.push_back(make_pair("deferred/alphaV.glsl", GL_VERTEX_SHADER)); +        gDeferredAvatarAlphaProgram.mShaderFiles.push_back(make_pair("deferred/alphaF.glsl", GL_FRAGMENT_SHADER));  		gDeferredAvatarAlphaProgram.clearPermutations();  		gDeferredAvatarAlphaProgram.addPermutation("USE_DIFFUSE_TEX", "1"); @@ -2679,8 +2679,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredPostGammaCorrectProgram.mFeatures.hasSrgb = true;  		gDeferredPostGammaCorrectProgram.mFeatures.isDeferred = true;  		gDeferredPostGammaCorrectProgram.mShaderFiles.clear(); -		gDeferredPostGammaCorrectProgram.mShaderFiles.push_back(make_pair("deferred/postDeferredNoTCV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredPostGammaCorrectProgram.mShaderFiles.push_back(make_pair("deferred/postDeferredGammaCorrect.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredPostGammaCorrectProgram.mShaderFiles.push_back(make_pair("deferred/postDeferredNoTCV.glsl", GL_VERTEX_SHADER)); +		gDeferredPostGammaCorrectProgram.mShaderFiles.push_back(make_pair("deferred/postDeferredGammaCorrect.glsl", GL_FRAGMENT_SHADER));          gDeferredPostGammaCorrectProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];  		success = gDeferredPostGammaCorrectProgram.createShader(NULL, NULL);  		llassert(success); @@ -2691,8 +2691,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gFXAAProgram.mName = "FXAA Shader";  		gFXAAProgram.mFeatures.isDeferred = true;  		gFXAAProgram.mShaderFiles.clear(); -		gFXAAProgram.mShaderFiles.push_back(make_pair("deferred/postDeferredV.glsl", GL_VERTEX_SHADER_ARB)); -		gFXAAProgram.mShaderFiles.push_back(make_pair("deferred/fxaaF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gFXAAProgram.mShaderFiles.push_back(make_pair("deferred/postDeferredV.glsl", GL_VERTEX_SHADER)); +		gFXAAProgram.mShaderFiles.push_back(make_pair("deferred/fxaaF.glsl", GL_FRAGMENT_SHADER));  		gFXAAProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];  		success = gFXAAProgram.createShader(NULL, NULL);  		llassert(success); @@ -2703,8 +2703,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredPostProgram.mName = "Deferred Post Shader";  		gFXAAProgram.mFeatures.isDeferred = true;  		gDeferredPostProgram.mShaderFiles.clear(); -		gDeferredPostProgram.mShaderFiles.push_back(make_pair("deferred/postDeferredNoTCV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredPostProgram.mShaderFiles.push_back(make_pair("deferred/postDeferredF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredPostProgram.mShaderFiles.push_back(make_pair("deferred/postDeferredNoTCV.glsl", GL_VERTEX_SHADER)); +		gDeferredPostProgram.mShaderFiles.push_back(make_pair("deferred/postDeferredF.glsl", GL_FRAGMENT_SHADER));  		gDeferredPostProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];  		success = gDeferredPostProgram.createShader(NULL, NULL);  		llassert(success); @@ -2715,8 +2715,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredCoFProgram.mName = "Deferred CoF Shader";  		gDeferredCoFProgram.mShaderFiles.clear();  		gDeferredCoFProgram.mFeatures.isDeferred = true; -		gDeferredCoFProgram.mShaderFiles.push_back(make_pair("deferred/postDeferredNoTCV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredCoFProgram.mShaderFiles.push_back(make_pair("deferred/cofF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredCoFProgram.mShaderFiles.push_back(make_pair("deferred/postDeferredNoTCV.glsl", GL_VERTEX_SHADER)); +		gDeferredCoFProgram.mShaderFiles.push_back(make_pair("deferred/cofF.glsl", GL_FRAGMENT_SHADER));  		gDeferredCoFProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];  		success = gDeferredCoFProgram.createShader(NULL, NULL);  		llassert(success); @@ -2727,8 +2727,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredDoFCombineProgram.mName = "Deferred DoFCombine Shader";  		gDeferredDoFCombineProgram.mFeatures.isDeferred = true;  		gDeferredDoFCombineProgram.mShaderFiles.clear(); -		gDeferredDoFCombineProgram.mShaderFiles.push_back(make_pair("deferred/postDeferredNoTCV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredDoFCombineProgram.mShaderFiles.push_back(make_pair("deferred/dofCombineF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredDoFCombineProgram.mShaderFiles.push_back(make_pair("deferred/postDeferredNoTCV.glsl", GL_VERTEX_SHADER)); +		gDeferredDoFCombineProgram.mShaderFiles.push_back(make_pair("deferred/dofCombineF.glsl", GL_FRAGMENT_SHADER));  		gDeferredDoFCombineProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];  		success = gDeferredDoFCombineProgram.createShader(NULL, NULL);  		llassert(success); @@ -2739,8 +2739,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredPostNoDoFProgram.mName = "Deferred Post Shader";  		gDeferredPostNoDoFProgram.mFeatures.isDeferred = true;  		gDeferredPostNoDoFProgram.mShaderFiles.clear(); -		gDeferredPostNoDoFProgram.mShaderFiles.push_back(make_pair("deferred/postDeferredNoTCV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredPostNoDoFProgram.mShaderFiles.push_back(make_pair("deferred/postDeferredNoDoFF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredPostNoDoFProgram.mShaderFiles.push_back(make_pair("deferred/postDeferredNoTCV.glsl", GL_VERTEX_SHADER)); +		gDeferredPostNoDoFProgram.mShaderFiles.push_back(make_pair("deferred/postDeferredNoDoFF.glsl", GL_FRAGMENT_SHADER));  		gDeferredPostNoDoFProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];  		success = gDeferredPostNoDoFProgram.createShader(NULL, NULL);  		llassert(success); @@ -2755,8 +2755,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  		gDeferredWLSkyProgram.mFeatures.hasGamma = true;  		gDeferredWLSkyProgram.mFeatures.hasSrgb = true; -		gDeferredWLSkyProgram.mShaderFiles.push_back(make_pair("deferred/skyV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredWLSkyProgram.mShaderFiles.push_back(make_pair("deferred/skyF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredWLSkyProgram.mShaderFiles.push_back(make_pair("deferred/skyV.glsl", GL_VERTEX_SHADER)); +		gDeferredWLSkyProgram.mShaderFiles.push_back(make_pair("deferred/skyF.glsl", GL_FRAGMENT_SHADER));  		gDeferredWLSkyProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];  		gDeferredWLSkyProgram.mShaderGroup = LLGLSLShader::SG_SKY; @@ -2773,8 +2773,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()          gDeferredWLCloudProgram.mFeatures.hasGamma = true;          gDeferredWLCloudProgram.mFeatures.hasSrgb = true; -		gDeferredWLCloudProgram.mShaderFiles.push_back(make_pair("deferred/cloudsV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredWLCloudProgram.mShaderFiles.push_back(make_pair("deferred/cloudsF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredWLCloudProgram.mShaderFiles.push_back(make_pair("deferred/cloudsV.glsl", GL_VERTEX_SHADER)); +		gDeferredWLCloudProgram.mShaderFiles.push_back(make_pair("deferred/cloudsF.glsl", GL_FRAGMENT_SHADER));  		gDeferredWLCloudProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];  		gDeferredWLCloudProgram.mShaderGroup = LLGLSLShader::SG_SKY;  		success = gDeferredWLCloudProgram.createShader(NULL, NULL); @@ -2792,8 +2792,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()          gDeferredWLSunProgram.mFeatures.disableTextureIndex = true;          gDeferredWLSunProgram.mFeatures.hasSrgb = true;          gDeferredWLSunProgram.mShaderFiles.clear(); -        gDeferredWLSunProgram.mShaderFiles.push_back(make_pair("deferred/sunDiscV.glsl", GL_VERTEX_SHADER_ARB)); -        gDeferredWLSunProgram.mShaderFiles.push_back(make_pair("deferred/sunDiscF.glsl", GL_FRAGMENT_SHADER_ARB)); +        gDeferredWLSunProgram.mShaderFiles.push_back(make_pair("deferred/sunDiscV.glsl", GL_VERTEX_SHADER)); +        gDeferredWLSunProgram.mShaderFiles.push_back(make_pair("deferred/sunDiscF.glsl", GL_FRAGMENT_SHADER));          gDeferredWLSunProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];          gDeferredWLSunProgram.mShaderGroup = LLGLSLShader::SG_SKY;          success = gDeferredWLSunProgram.createShader(NULL, NULL); @@ -2812,8 +2812,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()          gDeferredWLMoonProgram.mFeatures.disableTextureIndex = true;          gDeferredWLMoonProgram.mShaderFiles.clear(); -        gDeferredWLMoonProgram.mShaderFiles.push_back(make_pair("deferred/moonV.glsl", GL_VERTEX_SHADER_ARB)); -        gDeferredWLMoonProgram.mShaderFiles.push_back(make_pair("deferred/moonF.glsl", GL_FRAGMENT_SHADER_ARB)); +        gDeferredWLMoonProgram.mShaderFiles.push_back(make_pair("deferred/moonV.glsl", GL_VERTEX_SHADER)); +        gDeferredWLMoonProgram.mShaderFiles.push_back(make_pair("deferred/moonF.glsl", GL_FRAGMENT_SHADER));          gDeferredWLMoonProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];          gDeferredWLMoonProgram.mShaderGroup = LLGLSLShader::SG_SKY;   	 	success = gDeferredWLMoonProgram.createShader(NULL, NULL); @@ -2824,8 +2824,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  	{  		gDeferredStarProgram.mName = "Deferred Star Program";  		gDeferredStarProgram.mShaderFiles.clear(); -		gDeferredStarProgram.mShaderFiles.push_back(make_pair("deferred/starsV.glsl", GL_VERTEX_SHADER_ARB)); -		gDeferredStarProgram.mShaderFiles.push_back(make_pair("deferred/starsF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDeferredStarProgram.mShaderFiles.push_back(make_pair("deferred/starsV.glsl", GL_VERTEX_SHADER)); +		gDeferredStarProgram.mShaderFiles.push_back(make_pair("deferred/starsF.glsl", GL_FRAGMENT_SHADER));  		gDeferredStarProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];  		gDeferredStarProgram.mShaderGroup = LLGLSLShader::SG_SKY;  		success = gDeferredStarProgram.createShader(NULL, NULL); @@ -2836,8 +2836,8 @@ BOOL LLViewerShaderMgr::loadShadersDeferred()  	{  		gNormalMapGenProgram.mName = "Normal Map Generation Program";  		gNormalMapGenProgram.mShaderFiles.clear(); -		gNormalMapGenProgram.mShaderFiles.push_back(make_pair("deferred/normgenV.glsl", GL_VERTEX_SHADER_ARB)); -		gNormalMapGenProgram.mShaderFiles.push_back(make_pair("deferred/normgenF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gNormalMapGenProgram.mShaderFiles.push_back(make_pair("deferred/normgenV.glsl", GL_VERTEX_SHADER)); +		gNormalMapGenProgram.mShaderFiles.push_back(make_pair("deferred/normgenF.glsl", GL_FRAGMENT_SHADER));  		gNormalMapGenProgram.mShaderLevel = mShaderLevel[SHADER_DEFERRED];  		gNormalMapGenProgram.mShaderGroup = LLGLSLShader::SG_SKY;  		success = gNormalMapGenProgram.createShader(NULL, NULL); @@ -2860,8 +2860,8 @@ BOOL LLViewerShaderMgr::loadShadersObject()  		gObjectSimpleNonIndexedTexGenProgram.mFeatures.hasLighting = true;  		gObjectSimpleNonIndexedTexGenProgram.mFeatures.disableTextureIndex = true;  		gObjectSimpleNonIndexedTexGenProgram.mShaderFiles.clear(); -		gObjectSimpleNonIndexedTexGenProgram.mShaderFiles.push_back(make_pair("objects/simpleTexGenV.glsl", GL_VERTEX_SHADER_ARB)); -		gObjectSimpleNonIndexedTexGenProgram.mShaderFiles.push_back(make_pair("objects/simpleF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gObjectSimpleNonIndexedTexGenProgram.mShaderFiles.push_back(make_pair("objects/simpleTexGenV.glsl", GL_VERTEX_SHADER)); +		gObjectSimpleNonIndexedTexGenProgram.mShaderFiles.push_back(make_pair("objects/simpleF.glsl", GL_FRAGMENT_SHADER));  		gObjectSimpleNonIndexedTexGenProgram.mShaderLevel = mShaderLevel[SHADER_OBJECT];  		success = gObjectSimpleNonIndexedTexGenProgram.createShader(NULL, NULL);  	} @@ -2876,8 +2876,8 @@ BOOL LLViewerShaderMgr::loadShadersObject()  		gObjectSimpleNonIndexedTexGenWaterProgram.mFeatures.hasLighting = true;  		gObjectSimpleNonIndexedTexGenWaterProgram.mFeatures.disableTextureIndex = true;  		gObjectSimpleNonIndexedTexGenWaterProgram.mShaderFiles.clear(); -		gObjectSimpleNonIndexedTexGenWaterProgram.mShaderFiles.push_back(make_pair("objects/simpleTexGenV.glsl", GL_VERTEX_SHADER_ARB)); -		gObjectSimpleNonIndexedTexGenWaterProgram.mShaderFiles.push_back(make_pair("objects/simpleWaterF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gObjectSimpleNonIndexedTexGenWaterProgram.mShaderFiles.push_back(make_pair("objects/simpleTexGenV.glsl", GL_VERTEX_SHADER)); +		gObjectSimpleNonIndexedTexGenWaterProgram.mShaderFiles.push_back(make_pair("objects/simpleWaterF.glsl", GL_FRAGMENT_SHADER));  		gObjectSimpleNonIndexedTexGenWaterProgram.mShaderLevel = mShaderLevel[SHADER_OBJECT];  		gObjectSimpleNonIndexedTexGenWaterProgram.mShaderGroup = LLGLSLShader::SG_WATER;  		success = gObjectSimpleNonIndexedTexGenWaterProgram.createShader(NULL, NULL); @@ -2894,8 +2894,8 @@ BOOL LLViewerShaderMgr::loadShadersObject()  		gObjectAlphaMaskNonIndexedProgram.mFeatures.disableTextureIndex = true;  		gObjectAlphaMaskNonIndexedProgram.mFeatures.hasAlphaMask = true;  		gObjectAlphaMaskNonIndexedProgram.mShaderFiles.clear(); -		gObjectAlphaMaskNonIndexedProgram.mShaderFiles.push_back(make_pair("objects/simpleNonIndexedV.glsl", GL_VERTEX_SHADER_ARB)); -		gObjectAlphaMaskNonIndexedProgram.mShaderFiles.push_back(make_pair("objects/simpleF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gObjectAlphaMaskNonIndexedProgram.mShaderFiles.push_back(make_pair("objects/simpleNonIndexedV.glsl", GL_VERTEX_SHADER)); +		gObjectAlphaMaskNonIndexedProgram.mShaderFiles.push_back(make_pair("objects/simpleF.glsl", GL_FRAGMENT_SHADER));  		gObjectAlphaMaskNonIndexedProgram.mShaderLevel = mShaderLevel[SHADER_OBJECT];  		success = gObjectAlphaMaskNonIndexedProgram.createShader(NULL, NULL);  	} @@ -2911,8 +2911,8 @@ BOOL LLViewerShaderMgr::loadShadersObject()  		gObjectAlphaMaskNonIndexedWaterProgram.mFeatures.disableTextureIndex = true;  		gObjectAlphaMaskNonIndexedWaterProgram.mFeatures.hasAlphaMask = true;  		gObjectAlphaMaskNonIndexedWaterProgram.mShaderFiles.clear(); -		gObjectAlphaMaskNonIndexedWaterProgram.mShaderFiles.push_back(make_pair("objects/simpleNonIndexedV.glsl", GL_VERTEX_SHADER_ARB)); -		gObjectAlphaMaskNonIndexedWaterProgram.mShaderFiles.push_back(make_pair("objects/simpleWaterF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gObjectAlphaMaskNonIndexedWaterProgram.mShaderFiles.push_back(make_pair("objects/simpleNonIndexedV.glsl", GL_VERTEX_SHADER)); +		gObjectAlphaMaskNonIndexedWaterProgram.mShaderFiles.push_back(make_pair("objects/simpleWaterF.glsl", GL_FRAGMENT_SHADER));  		gObjectAlphaMaskNonIndexedWaterProgram.mShaderLevel = mShaderLevel[SHADER_OBJECT];  		gObjectAlphaMaskNonIndexedWaterProgram.mShaderGroup = LLGLSLShader::SG_WATER;  		success = gObjectAlphaMaskNonIndexedWaterProgram.createShader(NULL, NULL); @@ -2929,8 +2929,8 @@ BOOL LLViewerShaderMgr::loadShadersObject()  		gObjectAlphaMaskNoColorProgram.mFeatures.disableTextureIndex = true;  		gObjectAlphaMaskNoColorProgram.mFeatures.hasAlphaMask = true;  		gObjectAlphaMaskNoColorProgram.mShaderFiles.clear(); -		gObjectAlphaMaskNoColorProgram.mShaderFiles.push_back(make_pair("objects/simpleNoColorV.glsl", GL_VERTEX_SHADER_ARB)); -		gObjectAlphaMaskNoColorProgram.mShaderFiles.push_back(make_pair("objects/simpleF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gObjectAlphaMaskNoColorProgram.mShaderFiles.push_back(make_pair("objects/simpleNoColorV.glsl", GL_VERTEX_SHADER)); +		gObjectAlphaMaskNoColorProgram.mShaderFiles.push_back(make_pair("objects/simpleF.glsl", GL_FRAGMENT_SHADER));  		gObjectAlphaMaskNoColorProgram.mShaderLevel = mShaderLevel[SHADER_OBJECT];  		success = gObjectAlphaMaskNoColorProgram.createShader(NULL, NULL);  	} @@ -2946,8 +2946,8 @@ BOOL LLViewerShaderMgr::loadShadersObject()  		gObjectAlphaMaskNoColorWaterProgram.mFeatures.disableTextureIndex = true;  		gObjectAlphaMaskNoColorWaterProgram.mFeatures.hasAlphaMask = true;  		gObjectAlphaMaskNoColorWaterProgram.mShaderFiles.clear(); -		gObjectAlphaMaskNoColorWaterProgram.mShaderFiles.push_back(make_pair("objects/simpleNoColorV.glsl", GL_VERTEX_SHADER_ARB)); -		gObjectAlphaMaskNoColorWaterProgram.mShaderFiles.push_back(make_pair("objects/simpleWaterF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gObjectAlphaMaskNoColorWaterProgram.mShaderFiles.push_back(make_pair("objects/simpleNoColorV.glsl", GL_VERTEX_SHADER)); +		gObjectAlphaMaskNoColorWaterProgram.mShaderFiles.push_back(make_pair("objects/simpleWaterF.glsl", GL_FRAGMENT_SHADER));  		gObjectAlphaMaskNoColorWaterProgram.mShaderLevel = mShaderLevel[SHADER_OBJECT];  		gObjectAlphaMaskNoColorWaterProgram.mShaderGroup = LLGLSLShader::SG_WATER;  		success = gObjectAlphaMaskNoColorWaterProgram.createShader(NULL, NULL); @@ -2964,8 +2964,8 @@ BOOL LLViewerShaderMgr::loadShadersObject()  		gTreeProgram.mFeatures.disableTextureIndex = true;  		gTreeProgram.mFeatures.hasAlphaMask = true;  		gTreeProgram.mShaderFiles.clear(); -		gTreeProgram.mShaderFiles.push_back(make_pair("objects/treeV.glsl", GL_VERTEX_SHADER_ARB)); -		gTreeProgram.mShaderFiles.push_back(make_pair("objects/simpleF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gTreeProgram.mShaderFiles.push_back(make_pair("objects/treeV.glsl", GL_VERTEX_SHADER)); +		gTreeProgram.mShaderFiles.push_back(make_pair("objects/simpleF.glsl", GL_FRAGMENT_SHADER));  		gTreeProgram.mShaderLevel = mShaderLevel[SHADER_OBJECT];  		success = gTreeProgram.createShader(NULL, NULL);  	} @@ -2981,8 +2981,8 @@ BOOL LLViewerShaderMgr::loadShadersObject()  		gTreeWaterProgram.mFeatures.disableTextureIndex = true;  		gTreeWaterProgram.mFeatures.hasAlphaMask = true;  		gTreeWaterProgram.mShaderFiles.clear(); -		gTreeWaterProgram.mShaderFiles.push_back(make_pair("objects/treeV.glsl", GL_VERTEX_SHADER_ARB)); -		gTreeWaterProgram.mShaderFiles.push_back(make_pair("objects/simpleWaterF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gTreeWaterProgram.mShaderFiles.push_back(make_pair("objects/treeV.glsl", GL_VERTEX_SHADER)); +		gTreeWaterProgram.mShaderFiles.push_back(make_pair("objects/simpleWaterF.glsl", GL_FRAGMENT_SHADER));  		gTreeWaterProgram.mShaderLevel = mShaderLevel[SHADER_OBJECT];  		gTreeWaterProgram.mShaderGroup = LLGLSLShader::SG_WATER;  		success = gTreeWaterProgram.createShader(NULL, NULL); @@ -2998,8 +2998,8 @@ BOOL LLViewerShaderMgr::loadShadersObject()  		gObjectFullbrightNoColorProgram.mFeatures.hasSrgb = true;  		gObjectFullbrightNoColorProgram.mFeatures.disableTextureIndex = true;  		gObjectFullbrightNoColorProgram.mShaderFiles.clear(); -		gObjectFullbrightNoColorProgram.mShaderFiles.push_back(make_pair("objects/fullbrightNoColorV.glsl", GL_VERTEX_SHADER_ARB)); -		gObjectFullbrightNoColorProgram.mShaderFiles.push_back(make_pair("objects/fullbrightF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gObjectFullbrightNoColorProgram.mShaderFiles.push_back(make_pair("objects/fullbrightNoColorV.glsl", GL_VERTEX_SHADER)); +		gObjectFullbrightNoColorProgram.mShaderFiles.push_back(make_pair("objects/fullbrightF.glsl", GL_FRAGMENT_SHADER));  		gObjectFullbrightNoColorProgram.mShaderLevel = mShaderLevel[SHADER_OBJECT];  		success = gObjectFullbrightNoColorProgram.createShader(NULL, NULL);  	} @@ -3013,8 +3013,8 @@ BOOL LLViewerShaderMgr::loadShadersObject()  		gObjectFullbrightNoColorWaterProgram.mFeatures.hasTransport = true;  		gObjectFullbrightNoColorWaterProgram.mFeatures.disableTextureIndex = true;  		gObjectFullbrightNoColorWaterProgram.mShaderFiles.clear(); -		gObjectFullbrightNoColorWaterProgram.mShaderFiles.push_back(make_pair("objects/fullbrightNoColorV.glsl", GL_VERTEX_SHADER_ARB)); -		gObjectFullbrightNoColorWaterProgram.mShaderFiles.push_back(make_pair("objects/fullbrightWaterF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gObjectFullbrightNoColorWaterProgram.mShaderFiles.push_back(make_pair("objects/fullbrightNoColorV.glsl", GL_VERTEX_SHADER)); +		gObjectFullbrightNoColorWaterProgram.mShaderFiles.push_back(make_pair("objects/fullbrightWaterF.glsl", GL_FRAGMENT_SHADER));  		gObjectFullbrightNoColorWaterProgram.mShaderLevel = mShaderLevel[SHADER_OBJECT];  		gObjectFullbrightNoColorWaterProgram.mShaderGroup = LLGLSLShader::SG_WATER;  		success = gObjectFullbrightNoColorWaterProgram.createShader(NULL, NULL); @@ -3026,8 +3026,8 @@ BOOL LLViewerShaderMgr::loadShadersObject()  		gImpostorProgram.mFeatures.disableTextureIndex = true;  		gImpostorProgram.mFeatures.hasSrgb = true;  		gImpostorProgram.mShaderFiles.clear(); -		gImpostorProgram.mShaderFiles.push_back(make_pair("objects/impostorV.glsl", GL_VERTEX_SHADER_ARB)); -		gImpostorProgram.mShaderFiles.push_back(make_pair("objects/impostorF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gImpostorProgram.mShaderFiles.push_back(make_pair("objects/impostorV.glsl", GL_VERTEX_SHADER)); +		gImpostorProgram.mShaderFiles.push_back(make_pair("objects/impostorF.glsl", GL_FRAGMENT_SHADER));  		gImpostorProgram.mShaderLevel = mShaderLevel[SHADER_OBJECT];  		success = gImpostorProgram.createShader(NULL, NULL);  	} @@ -3043,8 +3043,8 @@ BOOL LLViewerShaderMgr::loadShadersObject()  		gObjectPreviewProgram.mFeatures.mIndexedTextureChannels = 0;  		gObjectPreviewProgram.mFeatures.disableTextureIndex = true;  		gObjectPreviewProgram.mShaderFiles.clear(); -		gObjectPreviewProgram.mShaderFiles.push_back(make_pair("objects/previewV.glsl", GL_VERTEX_SHADER_ARB)); -		gObjectPreviewProgram.mShaderFiles.push_back(make_pair("objects/previewF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gObjectPreviewProgram.mShaderFiles.push_back(make_pair("objects/previewV.glsl", GL_VERTEX_SHADER)); +		gObjectPreviewProgram.mShaderFiles.push_back(make_pair("objects/previewF.glsl", GL_FRAGMENT_SHADER));  		gObjectPreviewProgram.mShaderLevel = mShaderLevel[SHADER_OBJECT];  		success = gObjectPreviewProgram.createShader(NULL, NULL);  		gObjectPreviewProgram.mFeatures.hasLighting = true; @@ -3061,8 +3061,8 @@ BOOL LLViewerShaderMgr::loadShadersObject()  		gPhysicsPreviewProgram.mFeatures.mIndexedTextureChannels = 0;  		gPhysicsPreviewProgram.mFeatures.disableTextureIndex = true;  		gPhysicsPreviewProgram.mShaderFiles.clear(); -		gPhysicsPreviewProgram.mShaderFiles.push_back(make_pair("objects/previewPhysicsV.glsl", GL_VERTEX_SHADER_ARB)); -		gPhysicsPreviewProgram.mShaderFiles.push_back(make_pair("objects/previewPhysicsF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gPhysicsPreviewProgram.mShaderFiles.push_back(make_pair("objects/previewPhysicsV.glsl", GL_VERTEX_SHADER)); +		gPhysicsPreviewProgram.mShaderFiles.push_back(make_pair("objects/previewPhysicsF.glsl", GL_FRAGMENT_SHADER));  		gPhysicsPreviewProgram.mShaderLevel = mShaderLevel[SHADER_OBJECT];  		success = gPhysicsPreviewProgram.createShader(NULL, NULL);  		gPhysicsPreviewProgram.mFeatures.hasLighting = false; @@ -3078,8 +3078,8 @@ BOOL LLViewerShaderMgr::loadShadersObject()  		gObjectSimpleProgram.mFeatures.hasLighting = true;  		gObjectSimpleProgram.mFeatures.mIndexedTextureChannels = 0;  		gObjectSimpleProgram.mShaderFiles.clear(); -		gObjectSimpleProgram.mShaderFiles.push_back(make_pair("objects/simpleV.glsl", GL_VERTEX_SHADER_ARB)); -		gObjectSimpleProgram.mShaderFiles.push_back(make_pair("objects/simpleF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gObjectSimpleProgram.mShaderFiles.push_back(make_pair("objects/simpleV.glsl", GL_VERTEX_SHADER)); +		gObjectSimpleProgram.mShaderFiles.push_back(make_pair("objects/simpleF.glsl", GL_FRAGMENT_SHADER));  		gObjectSimpleProgram.mShaderLevel = mShaderLevel[SHADER_OBJECT];          success = make_rigged_variant(gObjectSimpleProgram, gSkinnedObjectSimpleProgram);  		success = success && gObjectSimpleProgram.createShader(NULL, NULL); @@ -3099,8 +3099,8 @@ BOOL LLViewerShaderMgr::loadShadersObject()  		//  		gObjectSimpleImpostorProgram.mFeatures.hasAlphaMask = true;   		gObjectSimpleImpostorProgram.mShaderFiles.clear(); -		gObjectSimpleImpostorProgram.mShaderFiles.push_back(make_pair("objects/simpleV.glsl", GL_VERTEX_SHADER_ARB)); -		gObjectSimpleImpostorProgram.mShaderFiles.push_back(make_pair("objects/simpleF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gObjectSimpleImpostorProgram.mShaderFiles.push_back(make_pair("objects/simpleV.glsl", GL_VERTEX_SHADER)); +		gObjectSimpleImpostorProgram.mShaderFiles.push_back(make_pair("objects/simpleF.glsl", GL_FRAGMENT_SHADER));  		gObjectSimpleImpostorProgram.mShaderLevel = mShaderLevel[SHADER_OBJECT];          success = make_rigged_variant(gObjectSimpleImpostorProgram, gSkinnedObjectSimpleImpostorProgram);  		success = success && gObjectSimpleImpostorProgram.createShader(NULL, NULL); @@ -3116,8 +3116,8 @@ BOOL LLViewerShaderMgr::loadShadersObject()  		gObjectSimpleWaterProgram.mFeatures.hasLighting = true;  		gObjectSimpleWaterProgram.mFeatures.mIndexedTextureChannels = 0;  		gObjectSimpleWaterProgram.mShaderFiles.clear(); -		gObjectSimpleWaterProgram.mShaderFiles.push_back(make_pair("objects/simpleV.glsl", GL_VERTEX_SHADER_ARB)); -		gObjectSimpleWaterProgram.mShaderFiles.push_back(make_pair("objects/simpleWaterF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gObjectSimpleWaterProgram.mShaderFiles.push_back(make_pair("objects/simpleV.glsl", GL_VERTEX_SHADER)); +		gObjectSimpleWaterProgram.mShaderFiles.push_back(make_pair("objects/simpleWaterF.glsl", GL_FRAGMENT_SHADER));  		gObjectSimpleWaterProgram.mShaderLevel = mShaderLevel[SHADER_OBJECT];  		gObjectSimpleWaterProgram.mShaderGroup = LLGLSLShader::SG_WATER;          make_rigged_variant(gObjectSimpleWaterProgram, gSkinnedObjectSimpleWaterProgram); @@ -3129,8 +3129,8 @@ BOOL LLViewerShaderMgr::loadShadersObject()  		gObjectBumpProgram.mName = "Bump Shader";  		gObjectBumpProgram.mFeatures.encodesNormal = true;  		gObjectBumpProgram.mShaderFiles.clear(); -		gObjectBumpProgram.mShaderFiles.push_back(make_pair("objects/bumpV.glsl", GL_VERTEX_SHADER_ARB)); -		gObjectBumpProgram.mShaderFiles.push_back(make_pair("objects/bumpF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gObjectBumpProgram.mShaderFiles.push_back(make_pair("objects/bumpV.glsl", GL_VERTEX_SHADER)); +		gObjectBumpProgram.mShaderFiles.push_back(make_pair("objects/bumpF.glsl", GL_FRAGMENT_SHADER));  		gObjectBumpProgram.mShaderLevel = mShaderLevel[SHADER_OBJECT];          success = make_rigged_variant(gObjectBumpProgram, gSkinnedObjectBumpProgram);  		success = success && gObjectBumpProgram.createShader(NULL, NULL); @@ -3159,8 +3159,8 @@ BOOL LLViewerShaderMgr::loadShadersObject()  		gObjectSimpleAlphaMaskProgram.mFeatures.hasAlphaMask = true;  		gObjectSimpleAlphaMaskProgram.mFeatures.mIndexedTextureChannels = 0;  		gObjectSimpleAlphaMaskProgram.mShaderFiles.clear(); -		gObjectSimpleAlphaMaskProgram.mShaderFiles.push_back(make_pair("objects/simpleV.glsl", GL_VERTEX_SHADER_ARB)); -		gObjectSimpleAlphaMaskProgram.mShaderFiles.push_back(make_pair("objects/simpleF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gObjectSimpleAlphaMaskProgram.mShaderFiles.push_back(make_pair("objects/simpleV.glsl", GL_VERTEX_SHADER)); +		gObjectSimpleAlphaMaskProgram.mShaderFiles.push_back(make_pair("objects/simpleF.glsl", GL_FRAGMENT_SHADER));  		gObjectSimpleAlphaMaskProgram.mShaderLevel = mShaderLevel[SHADER_OBJECT];          success = make_rigged_variant(gObjectSimpleAlphaMaskProgram, gSkinnedObjectSimpleAlphaMaskProgram);  		success = success && gObjectSimpleAlphaMaskProgram.createShader(NULL, NULL); @@ -3177,8 +3177,8 @@ BOOL LLViewerShaderMgr::loadShadersObject()  		gObjectSimpleWaterAlphaMaskProgram.mFeatures.hasAlphaMask = true;  		gObjectSimpleWaterAlphaMaskProgram.mFeatures.mIndexedTextureChannels = 0;  		gObjectSimpleWaterAlphaMaskProgram.mShaderFiles.clear(); -		gObjectSimpleWaterAlphaMaskProgram.mShaderFiles.push_back(make_pair("objects/simpleV.glsl", GL_VERTEX_SHADER_ARB)); -		gObjectSimpleWaterAlphaMaskProgram.mShaderFiles.push_back(make_pair("objects/simpleWaterF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gObjectSimpleWaterAlphaMaskProgram.mShaderFiles.push_back(make_pair("objects/simpleV.glsl", GL_VERTEX_SHADER)); +		gObjectSimpleWaterAlphaMaskProgram.mShaderFiles.push_back(make_pair("objects/simpleWaterF.glsl", GL_FRAGMENT_SHADER));  		gObjectSimpleWaterAlphaMaskProgram.mShaderLevel = mShaderLevel[SHADER_OBJECT];  		gObjectSimpleWaterAlphaMaskProgram.mShaderGroup = LLGLSLShader::SG_WATER;          success = make_rigged_variant(gObjectSimpleWaterAlphaMaskProgram, gSkinnedObjectSimpleWaterAlphaMaskProgram); @@ -3195,8 +3195,8 @@ BOOL LLViewerShaderMgr::loadShadersObject()  		gObjectFullbrightProgram.mFeatures.hasSrgb = true;  		gObjectFullbrightProgram.mFeatures.mIndexedTextureChannels = 0;  		gObjectFullbrightProgram.mShaderFiles.clear(); -		gObjectFullbrightProgram.mShaderFiles.push_back(make_pair("objects/fullbrightV.glsl", GL_VERTEX_SHADER_ARB)); -		gObjectFullbrightProgram.mShaderFiles.push_back(make_pair("objects/fullbrightF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gObjectFullbrightProgram.mShaderFiles.push_back(make_pair("objects/fullbrightV.glsl", GL_VERTEX_SHADER)); +		gObjectFullbrightProgram.mShaderFiles.push_back(make_pair("objects/fullbrightF.glsl", GL_FRAGMENT_SHADER));  		gObjectFullbrightProgram.mShaderLevel = mShaderLevel[SHADER_OBJECT];          success = make_rigged_variant(gObjectFullbrightProgram, gSkinnedObjectFullbrightProgram);          success = success && gObjectFullbrightProgram.createShader(NULL, NULL); @@ -3211,8 +3211,8 @@ BOOL LLViewerShaderMgr::loadShadersObject()  		gObjectFullbrightWaterProgram.mFeatures.hasTransport = true;  		gObjectFullbrightWaterProgram.mFeatures.mIndexedTextureChannels = 0;  		gObjectFullbrightWaterProgram.mShaderFiles.clear(); -		gObjectFullbrightWaterProgram.mShaderFiles.push_back(make_pair("objects/fullbrightV.glsl", GL_VERTEX_SHADER_ARB)); -		gObjectFullbrightWaterProgram.mShaderFiles.push_back(make_pair("objects/fullbrightWaterF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gObjectFullbrightWaterProgram.mShaderFiles.push_back(make_pair("objects/fullbrightV.glsl", GL_VERTEX_SHADER)); +		gObjectFullbrightWaterProgram.mShaderFiles.push_back(make_pair("objects/fullbrightWaterF.glsl", GL_FRAGMENT_SHADER));  		gObjectFullbrightWaterProgram.mShaderLevel = mShaderLevel[SHADER_OBJECT];  		gObjectFullbrightWaterProgram.mShaderGroup = LLGLSLShader::SG_WATER;          success = make_rigged_variant(gObjectFullbrightWaterProgram, gSkinnedObjectFullbrightWaterProgram); @@ -3229,8 +3229,8 @@ BOOL LLViewerShaderMgr::loadShadersObject()  		gObjectEmissiveProgram.mFeatures.hasSrgb = true;  		gObjectEmissiveProgram.mFeatures.mIndexedTextureChannels = 0;  		gObjectEmissiveProgram.mShaderFiles.clear(); -		gObjectEmissiveProgram.mShaderFiles.push_back(make_pair("objects/emissiveV.glsl", GL_VERTEX_SHADER_ARB)); -		gObjectEmissiveProgram.mShaderFiles.push_back(make_pair("objects/fullbrightF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gObjectEmissiveProgram.mShaderFiles.push_back(make_pair("objects/emissiveV.glsl", GL_VERTEX_SHADER)); +		gObjectEmissiveProgram.mShaderFiles.push_back(make_pair("objects/fullbrightF.glsl", GL_FRAGMENT_SHADER));  		gObjectEmissiveProgram.mShaderLevel = mShaderLevel[SHADER_OBJECT];          success = make_rigged_variant(gObjectEmissiveProgram, gSkinnedObjectEmissiveProgram);  		success = success && gObjectEmissiveProgram.createShader(NULL, NULL); @@ -3245,8 +3245,8 @@ BOOL LLViewerShaderMgr::loadShadersObject()  		gObjectEmissiveWaterProgram.mFeatures.hasTransport = true;  		gObjectEmissiveWaterProgram.mFeatures.mIndexedTextureChannels = 0;  		gObjectEmissiveWaterProgram.mShaderFiles.clear(); -		gObjectEmissiveWaterProgram.mShaderFiles.push_back(make_pair("objects/emissiveV.glsl", GL_VERTEX_SHADER_ARB)); -		gObjectEmissiveWaterProgram.mShaderFiles.push_back(make_pair("objects/fullbrightWaterF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gObjectEmissiveWaterProgram.mShaderFiles.push_back(make_pair("objects/emissiveV.glsl", GL_VERTEX_SHADER)); +		gObjectEmissiveWaterProgram.mShaderFiles.push_back(make_pair("objects/fullbrightWaterF.glsl", GL_FRAGMENT_SHADER));  		gObjectEmissiveWaterProgram.mShaderLevel = mShaderLevel[SHADER_OBJECT];  		gObjectEmissiveWaterProgram.mShaderGroup = LLGLSLShader::SG_WATER;          success = make_rigged_variant(gObjectEmissiveWaterProgram, gSkinnedObjectEmissiveWaterProgram); @@ -3264,8 +3264,8 @@ BOOL LLViewerShaderMgr::loadShadersObject()  		gObjectFullbrightAlphaMaskProgram.mFeatures.hasSrgb = true;  		gObjectFullbrightAlphaMaskProgram.mFeatures.mIndexedTextureChannels = 0;  		gObjectFullbrightAlphaMaskProgram.mShaderFiles.clear(); -		gObjectFullbrightAlphaMaskProgram.mShaderFiles.push_back(make_pair("objects/fullbrightV.glsl", GL_VERTEX_SHADER_ARB)); -		gObjectFullbrightAlphaMaskProgram.mShaderFiles.push_back(make_pair("objects/fullbrightF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gObjectFullbrightAlphaMaskProgram.mShaderFiles.push_back(make_pair("objects/fullbrightV.glsl", GL_VERTEX_SHADER)); +		gObjectFullbrightAlphaMaskProgram.mShaderFiles.push_back(make_pair("objects/fullbrightF.glsl", GL_FRAGMENT_SHADER));  		gObjectFullbrightAlphaMaskProgram.mShaderLevel = mShaderLevel[SHADER_OBJECT];          success = make_rigged_variant(gObjectFullbrightAlphaMaskProgram, gSkinnedObjectFullbrightAlphaMaskProgram);  		success = success && gObjectFullbrightAlphaMaskProgram.createShader(NULL, NULL); @@ -3281,8 +3281,8 @@ BOOL LLViewerShaderMgr::loadShadersObject()  		gObjectFullbrightWaterAlphaMaskProgram.mFeatures.hasAlphaMask = true;  		gObjectFullbrightWaterAlphaMaskProgram.mFeatures.mIndexedTextureChannels = 0;  		gObjectFullbrightWaterAlphaMaskProgram.mShaderFiles.clear(); -		gObjectFullbrightWaterAlphaMaskProgram.mShaderFiles.push_back(make_pair("objects/fullbrightV.glsl", GL_VERTEX_SHADER_ARB)); -		gObjectFullbrightWaterAlphaMaskProgram.mShaderFiles.push_back(make_pair("objects/fullbrightWaterF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gObjectFullbrightWaterAlphaMaskProgram.mShaderFiles.push_back(make_pair("objects/fullbrightV.glsl", GL_VERTEX_SHADER)); +		gObjectFullbrightWaterAlphaMaskProgram.mShaderFiles.push_back(make_pair("objects/fullbrightWaterF.glsl", GL_FRAGMENT_SHADER));  		gObjectFullbrightWaterAlphaMaskProgram.mShaderLevel = mShaderLevel[SHADER_OBJECT];  		gObjectFullbrightWaterAlphaMaskProgram.mShaderGroup = LLGLSLShader::SG_WATER;          success = make_rigged_variant(gObjectFullbrightWaterAlphaMaskProgram, gSkinnedObjectFullbrightWaterAlphaMaskProgram); @@ -3299,8 +3299,8 @@ BOOL LLViewerShaderMgr::loadShadersObject()  		gObjectShinyProgram.mFeatures.isShiny = true;  		gObjectShinyProgram.mFeatures.mIndexedTextureChannels = 0;  		gObjectShinyProgram.mShaderFiles.clear(); -		gObjectShinyProgram.mShaderFiles.push_back(make_pair("objects/shinyV.glsl", GL_VERTEX_SHADER_ARB)); -		gObjectShinyProgram.mShaderFiles.push_back(make_pair("objects/shinyF.glsl", GL_FRAGMENT_SHADER_ARB));		 +		gObjectShinyProgram.mShaderFiles.push_back(make_pair("objects/shinyV.glsl", GL_VERTEX_SHADER)); +		gObjectShinyProgram.mShaderFiles.push_back(make_pair("objects/shinyF.glsl", GL_FRAGMENT_SHADER));		  		gObjectShinyProgram.mShaderLevel = mShaderLevel[SHADER_OBJECT];          success = make_rigged_variant(gObjectShinyProgram, gSkinnedObjectShinyProgram);  		success = success && gObjectShinyProgram.createShader(NULL, NULL); @@ -3316,8 +3316,8 @@ BOOL LLViewerShaderMgr::loadShadersObject()  		gObjectShinyWaterProgram.mFeatures.hasAtmospherics = true;  		gObjectShinyWaterProgram.mFeatures.mIndexedTextureChannels = 0;  		gObjectShinyWaterProgram.mShaderFiles.clear(); -		gObjectShinyWaterProgram.mShaderFiles.push_back(make_pair("objects/shinyWaterF.glsl", GL_FRAGMENT_SHADER_ARB)); -		gObjectShinyWaterProgram.mShaderFiles.push_back(make_pair("objects/shinyV.glsl", GL_VERTEX_SHADER_ARB)); +		gObjectShinyWaterProgram.mShaderFiles.push_back(make_pair("objects/shinyWaterF.glsl", GL_FRAGMENT_SHADER)); +		gObjectShinyWaterProgram.mShaderFiles.push_back(make_pair("objects/shinyV.glsl", GL_VERTEX_SHADER));  		gObjectShinyWaterProgram.mShaderLevel = mShaderLevel[SHADER_OBJECT];  		gObjectShinyWaterProgram.mShaderGroup = LLGLSLShader::SG_WATER;          success = make_rigged_variant(gObjectShinyWaterProgram, gSkinnedObjectShinyWaterProgram); @@ -3334,8 +3334,8 @@ BOOL LLViewerShaderMgr::loadShadersObject()  		gObjectFullbrightShinyProgram.mFeatures.hasTransport = true;  		gObjectFullbrightShinyProgram.mFeatures.mIndexedTextureChannels = 0;  		gObjectFullbrightShinyProgram.mShaderFiles.clear(); -		gObjectFullbrightShinyProgram.mShaderFiles.push_back(make_pair("objects/fullbrightShinyV.glsl", GL_VERTEX_SHADER_ARB)); -		gObjectFullbrightShinyProgram.mShaderFiles.push_back(make_pair("objects/fullbrightShinyF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gObjectFullbrightShinyProgram.mShaderFiles.push_back(make_pair("objects/fullbrightShinyV.glsl", GL_VERTEX_SHADER)); +		gObjectFullbrightShinyProgram.mShaderFiles.push_back(make_pair("objects/fullbrightShinyF.glsl", GL_FRAGMENT_SHADER));  		gObjectFullbrightShinyProgram.mShaderLevel = mShaderLevel[SHADER_OBJECT];          success = make_rigged_variant(gObjectFullbrightShinyProgram, gSkinnedObjectFullbrightShinyProgram);  		success = success && gObjectFullbrightShinyProgram.createShader(NULL, NULL); @@ -3352,8 +3352,8 @@ BOOL LLViewerShaderMgr::loadShadersObject()  		gObjectFullbrightShinyWaterProgram.mFeatures.hasWaterFog = true;  		gObjectFullbrightShinyWaterProgram.mFeatures.mIndexedTextureChannels = 0;  		gObjectFullbrightShinyWaterProgram.mShaderFiles.clear(); -		gObjectFullbrightShinyWaterProgram.mShaderFiles.push_back(make_pair("objects/fullbrightShinyV.glsl", GL_VERTEX_SHADER_ARB)); -		gObjectFullbrightShinyWaterProgram.mShaderFiles.push_back(make_pair("objects/fullbrightShinyWaterF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gObjectFullbrightShinyWaterProgram.mShaderFiles.push_back(make_pair("objects/fullbrightShinyV.glsl", GL_VERTEX_SHADER)); +		gObjectFullbrightShinyWaterProgram.mShaderFiles.push_back(make_pair("objects/fullbrightShinyWaterF.glsl", GL_FRAGMENT_SHADER));  		gObjectFullbrightShinyWaterProgram.mShaderLevel = mShaderLevel[SHADER_OBJECT];  		gObjectFullbrightShinyWaterProgram.mShaderGroup = LLGLSLShader::SG_WATER;          success = make_rigged_variant(gObjectFullbrightShinyWaterProgram, gSkinnedObjectFullbrightShinyWaterProgram); @@ -3394,8 +3394,8 @@ BOOL LLViewerShaderMgr::loadShadersAvatar()  		gAvatarProgram.mFeatures.hasAlphaMask = true;  		gAvatarProgram.mFeatures.disableTextureIndex = true;  		gAvatarProgram.mShaderFiles.clear(); -		gAvatarProgram.mShaderFiles.push_back(make_pair("avatar/avatarV.glsl", GL_VERTEX_SHADER_ARB)); -		gAvatarProgram.mShaderFiles.push_back(make_pair("avatar/avatarF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gAvatarProgram.mShaderFiles.push_back(make_pair("avatar/avatarV.glsl", GL_VERTEX_SHADER)); +		gAvatarProgram.mShaderFiles.push_back(make_pair("avatar/avatarF.glsl", GL_FRAGMENT_SHADER));  		gAvatarProgram.mShaderLevel = mShaderLevel[SHADER_AVATAR];  		success = gAvatarProgram.createShader(NULL, NULL); @@ -3411,8 +3411,8 @@ BOOL LLViewerShaderMgr::loadShadersAvatar()  			gAvatarWaterProgram.mFeatures.hasAlphaMask = true;  			gAvatarWaterProgram.mFeatures.disableTextureIndex = true;  			gAvatarWaterProgram.mShaderFiles.clear(); -			gAvatarWaterProgram.mShaderFiles.push_back(make_pair("avatar/avatarV.glsl", GL_VERTEX_SHADER_ARB)); -			gAvatarWaterProgram.mShaderFiles.push_back(make_pair("objects/simpleWaterF.glsl", GL_FRAGMENT_SHADER_ARB)); +			gAvatarWaterProgram.mShaderFiles.push_back(make_pair("avatar/avatarV.glsl", GL_VERTEX_SHADER)); +			gAvatarWaterProgram.mShaderFiles.push_back(make_pair("objects/simpleWaterF.glsl", GL_FRAGMENT_SHADER));  			// Note: no cloth under water:  			gAvatarWaterProgram.mShaderLevel = llmin(mShaderLevel[SHADER_AVATAR], 1);	  			gAvatarWaterProgram.mShaderGroup = LLGLSLShader::SG_WATER;				 @@ -3432,8 +3432,8 @@ BOOL LLViewerShaderMgr::loadShadersAvatar()  		gAvatarPickProgram.mFeatures.hasSkinning = true;  		gAvatarPickProgram.mFeatures.disableTextureIndex = true;  		gAvatarPickProgram.mShaderFiles.clear(); -		gAvatarPickProgram.mShaderFiles.push_back(make_pair("avatar/pickAvatarV.glsl", GL_VERTEX_SHADER_ARB)); -		gAvatarPickProgram.mShaderFiles.push_back(make_pair("avatar/pickAvatarF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gAvatarPickProgram.mShaderFiles.push_back(make_pair("avatar/pickAvatarV.glsl", GL_VERTEX_SHADER)); +		gAvatarPickProgram.mShaderFiles.push_back(make_pair("avatar/pickAvatarF.glsl", GL_FRAGMENT_SHADER));  		gAvatarPickProgram.mShaderLevel = mShaderLevel[SHADER_AVATAR];  		success = gAvatarPickProgram.createShader(NULL, NULL);  	} @@ -3450,8 +3450,8 @@ BOOL LLViewerShaderMgr::loadShadersAvatar()  		gAvatarEyeballProgram.mFeatures.hasAlphaMask = true;  		gAvatarEyeballProgram.mFeatures.disableTextureIndex = true;  		gAvatarEyeballProgram.mShaderFiles.clear(); -		gAvatarEyeballProgram.mShaderFiles.push_back(make_pair("avatar/eyeballV.glsl", GL_VERTEX_SHADER_ARB)); -		gAvatarEyeballProgram.mShaderFiles.push_back(make_pair("avatar/eyeballF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gAvatarEyeballProgram.mShaderFiles.push_back(make_pair("avatar/eyeballV.glsl", GL_VERTEX_SHADER)); +		gAvatarEyeballProgram.mShaderFiles.push_back(make_pair("avatar/eyeballF.glsl", GL_FRAGMENT_SHADER));  		gAvatarEyeballProgram.mShaderLevel = mShaderLevel[SHADER_AVATAR];  		success = gAvatarEyeballProgram.createShader(NULL, NULL);  	} @@ -3474,8 +3474,8 @@ BOOL LLViewerShaderMgr::loadShadersInterface()  	{  		gHighlightProgram.mName = "Highlight Shader";  		gHighlightProgram.mShaderFiles.clear(); -		gHighlightProgram.mShaderFiles.push_back(make_pair("interface/highlightV.glsl", GL_VERTEX_SHADER_ARB)); -		gHighlightProgram.mShaderFiles.push_back(make_pair("interface/highlightF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gHighlightProgram.mShaderFiles.push_back(make_pair("interface/highlightV.glsl", GL_VERTEX_SHADER)); +		gHighlightProgram.mShaderFiles.push_back(make_pair("interface/highlightF.glsl", GL_FRAGMENT_SHADER));  		gHighlightProgram.mShaderLevel = mShaderLevel[SHADER_INTERFACE];          success = make_rigged_variant(gHighlightProgram, gSkinnedHighlightProgram);  		success = success && gHighlightProgram.createShader(NULL, NULL); @@ -3485,8 +3485,8 @@ BOOL LLViewerShaderMgr::loadShadersInterface()  	{  		gHighlightNormalProgram.mName = "Highlight Normals Shader";  		gHighlightNormalProgram.mShaderFiles.clear(); -		gHighlightNormalProgram.mShaderFiles.push_back(make_pair("interface/highlightNormV.glsl", GL_VERTEX_SHADER_ARB)); -		gHighlightNormalProgram.mShaderFiles.push_back(make_pair("interface/highlightF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gHighlightNormalProgram.mShaderFiles.push_back(make_pair("interface/highlightNormV.glsl", GL_VERTEX_SHADER)); +		gHighlightNormalProgram.mShaderFiles.push_back(make_pair("interface/highlightF.glsl", GL_FRAGMENT_SHADER));  		gHighlightNormalProgram.mShaderLevel = mShaderLevel[SHADER_INTERFACE];  		success = gHighlightNormalProgram.createShader(NULL, NULL);  	} @@ -3495,8 +3495,8 @@ BOOL LLViewerShaderMgr::loadShadersInterface()  	{  		gHighlightSpecularProgram.mName = "Highlight Spec Shader";  		gHighlightSpecularProgram.mShaderFiles.clear(); -		gHighlightSpecularProgram.mShaderFiles.push_back(make_pair("interface/highlightSpecV.glsl", GL_VERTEX_SHADER_ARB)); -		gHighlightSpecularProgram.mShaderFiles.push_back(make_pair("interface/highlightF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gHighlightSpecularProgram.mShaderFiles.push_back(make_pair("interface/highlightSpecV.glsl", GL_VERTEX_SHADER)); +		gHighlightSpecularProgram.mShaderFiles.push_back(make_pair("interface/highlightF.glsl", GL_FRAGMENT_SHADER));  		gHighlightSpecularProgram.mShaderLevel = mShaderLevel[SHADER_INTERFACE];  		success = gHighlightSpecularProgram.createShader(NULL, NULL);  	} @@ -3505,8 +3505,8 @@ BOOL LLViewerShaderMgr::loadShadersInterface()  	{  		gUIProgram.mName = "UI Shader";  		gUIProgram.mShaderFiles.clear(); -		gUIProgram.mShaderFiles.push_back(make_pair("interface/uiV.glsl", GL_VERTEX_SHADER_ARB)); -		gUIProgram.mShaderFiles.push_back(make_pair("interface/uiF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gUIProgram.mShaderFiles.push_back(make_pair("interface/uiV.glsl", GL_VERTEX_SHADER)); +		gUIProgram.mShaderFiles.push_back(make_pair("interface/uiF.glsl", GL_FRAGMENT_SHADER));  		gUIProgram.mShaderLevel = mShaderLevel[SHADER_INTERFACE];  		success = gUIProgram.createShader(NULL, NULL);  	} @@ -3515,8 +3515,8 @@ BOOL LLViewerShaderMgr::loadShadersInterface()  	{  		gPathfindingProgram.mName = "Pathfinding Shader";  		gPathfindingProgram.mShaderFiles.clear(); -		gPathfindingProgram.mShaderFiles.push_back(make_pair("interface/pathfindingV.glsl", GL_VERTEX_SHADER_ARB)); -		gPathfindingProgram.mShaderFiles.push_back(make_pair("interface/pathfindingF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gPathfindingProgram.mShaderFiles.push_back(make_pair("interface/pathfindingV.glsl", GL_VERTEX_SHADER)); +		gPathfindingProgram.mShaderFiles.push_back(make_pair("interface/pathfindingF.glsl", GL_FRAGMENT_SHADER));  		gPathfindingProgram.mShaderLevel = mShaderLevel[SHADER_INTERFACE];  		success = gPathfindingProgram.createShader(NULL, NULL);  	} @@ -3525,8 +3525,8 @@ BOOL LLViewerShaderMgr::loadShadersInterface()  	{  		gPathfindingNoNormalsProgram.mName = "PathfindingNoNormals Shader";  		gPathfindingNoNormalsProgram.mShaderFiles.clear(); -		gPathfindingNoNormalsProgram.mShaderFiles.push_back(make_pair("interface/pathfindingNoNormalV.glsl", GL_VERTEX_SHADER_ARB)); -		gPathfindingNoNormalsProgram.mShaderFiles.push_back(make_pair("interface/pathfindingF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gPathfindingNoNormalsProgram.mShaderFiles.push_back(make_pair("interface/pathfindingNoNormalV.glsl", GL_VERTEX_SHADER)); +		gPathfindingNoNormalsProgram.mShaderFiles.push_back(make_pair("interface/pathfindingF.glsl", GL_FRAGMENT_SHADER));  		gPathfindingNoNormalsProgram.mShaderLevel = mShaderLevel[SHADER_INTERFACE];  		success = gPathfindingNoNormalsProgram.createShader(NULL, NULL);  	} @@ -3535,8 +3535,8 @@ BOOL LLViewerShaderMgr::loadShadersInterface()  	{  		gCustomAlphaProgram.mName = "Custom Alpha Shader";  		gCustomAlphaProgram.mShaderFiles.clear(); -		gCustomAlphaProgram.mShaderFiles.push_back(make_pair("interface/customalphaV.glsl", GL_VERTEX_SHADER_ARB)); -		gCustomAlphaProgram.mShaderFiles.push_back(make_pair("interface/customalphaF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gCustomAlphaProgram.mShaderFiles.push_back(make_pair("interface/customalphaV.glsl", GL_VERTEX_SHADER)); +		gCustomAlphaProgram.mShaderFiles.push_back(make_pair("interface/customalphaF.glsl", GL_FRAGMENT_SHADER));  		gCustomAlphaProgram.mShaderLevel = mShaderLevel[SHADER_INTERFACE];  		success = gCustomAlphaProgram.createShader(NULL, NULL);  	} @@ -3545,8 +3545,8 @@ BOOL LLViewerShaderMgr::loadShadersInterface()  	{  		gSplatTextureRectProgram.mName = "Splat Texture Rect Shader";  		gSplatTextureRectProgram.mShaderFiles.clear(); -		gSplatTextureRectProgram.mShaderFiles.push_back(make_pair("interface/splattexturerectV.glsl", GL_VERTEX_SHADER_ARB)); -		gSplatTextureRectProgram.mShaderFiles.push_back(make_pair("interface/splattexturerectF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gSplatTextureRectProgram.mShaderFiles.push_back(make_pair("interface/splattexturerectV.glsl", GL_VERTEX_SHADER)); +		gSplatTextureRectProgram.mShaderFiles.push_back(make_pair("interface/splattexturerectF.glsl", GL_FRAGMENT_SHADER));  		gSplatTextureRectProgram.mShaderLevel = mShaderLevel[SHADER_INTERFACE];  		success = gSplatTextureRectProgram.createShader(NULL, NULL);  		if (success) @@ -3561,8 +3561,8 @@ BOOL LLViewerShaderMgr::loadShadersInterface()  	{  		gGlowCombineProgram.mName = "Glow Combine Shader";  		gGlowCombineProgram.mShaderFiles.clear(); -		gGlowCombineProgram.mShaderFiles.push_back(make_pair("interface/glowcombineV.glsl", GL_VERTEX_SHADER_ARB)); -		gGlowCombineProgram.mShaderFiles.push_back(make_pair("interface/glowcombineF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gGlowCombineProgram.mShaderFiles.push_back(make_pair("interface/glowcombineV.glsl", GL_VERTEX_SHADER)); +		gGlowCombineProgram.mShaderFiles.push_back(make_pair("interface/glowcombineF.glsl", GL_FRAGMENT_SHADER));  		gGlowCombineProgram.mShaderLevel = mShaderLevel[SHADER_INTERFACE];  		success = gGlowCombineProgram.createShader(NULL, NULL);  		if (success) @@ -3578,8 +3578,8 @@ BOOL LLViewerShaderMgr::loadShadersInterface()  	{  		gGlowCombineFXAAProgram.mName = "Glow CombineFXAA Shader";  		gGlowCombineFXAAProgram.mShaderFiles.clear(); -		gGlowCombineFXAAProgram.mShaderFiles.push_back(make_pair("interface/glowcombineFXAAV.glsl", GL_VERTEX_SHADER_ARB)); -		gGlowCombineFXAAProgram.mShaderFiles.push_back(make_pair("interface/glowcombineFXAAF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gGlowCombineFXAAProgram.mShaderFiles.push_back(make_pair("interface/glowcombineFXAAV.glsl", GL_VERTEX_SHADER)); +		gGlowCombineFXAAProgram.mShaderFiles.push_back(make_pair("interface/glowcombineFXAAF.glsl", GL_FRAGMENT_SHADER));  		gGlowCombineFXAAProgram.mShaderLevel = mShaderLevel[SHADER_INTERFACE];  		success = gGlowCombineFXAAProgram.createShader(NULL, NULL);  		if (success) @@ -3596,8 +3596,8 @@ BOOL LLViewerShaderMgr::loadShadersInterface()  	{  		gTwoTextureAddProgram.mName = "Two Texture Add Shader";  		gTwoTextureAddProgram.mShaderFiles.clear(); -		gTwoTextureAddProgram.mShaderFiles.push_back(make_pair("interface/twotextureaddV.glsl", GL_VERTEX_SHADER_ARB)); -		gTwoTextureAddProgram.mShaderFiles.push_back(make_pair("interface/twotextureaddF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gTwoTextureAddProgram.mShaderFiles.push_back(make_pair("interface/twotextureaddV.glsl", GL_VERTEX_SHADER)); +		gTwoTextureAddProgram.mShaderFiles.push_back(make_pair("interface/twotextureaddF.glsl", GL_FRAGMENT_SHADER));  		gTwoTextureAddProgram.mShaderLevel = mShaderLevel[SHADER_INTERFACE];  		success = gTwoTextureAddProgram.createShader(NULL, NULL);  		if (success) @@ -3613,8 +3613,8 @@ BOOL LLViewerShaderMgr::loadShadersInterface()  	{  		gTwoTextureCompareProgram.mName = "Two Texture Compare Shader";  		gTwoTextureCompareProgram.mShaderFiles.clear(); -		gTwoTextureCompareProgram.mShaderFiles.push_back(make_pair("interface/twotexturecompareV.glsl", GL_VERTEX_SHADER_ARB)); -		gTwoTextureCompareProgram.mShaderFiles.push_back(make_pair("interface/twotexturecompareF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gTwoTextureCompareProgram.mShaderFiles.push_back(make_pair("interface/twotexturecompareV.glsl", GL_VERTEX_SHADER)); +		gTwoTextureCompareProgram.mShaderFiles.push_back(make_pair("interface/twotexturecompareF.glsl", GL_FRAGMENT_SHADER));  		gTwoTextureCompareProgram.mShaderLevel = mShaderLevel[SHADER_INTERFACE];  		success = gTwoTextureCompareProgram.createShader(NULL, NULL);  		if (success) @@ -3630,8 +3630,8 @@ BOOL LLViewerShaderMgr::loadShadersInterface()  	{  		gOneTextureFilterProgram.mName = "One Texture Filter Shader";  		gOneTextureFilterProgram.mShaderFiles.clear(); -		gOneTextureFilterProgram.mShaderFiles.push_back(make_pair("interface/onetexturefilterV.glsl", GL_VERTEX_SHADER_ARB)); -		gOneTextureFilterProgram.mShaderFiles.push_back(make_pair("interface/onetexturefilterF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gOneTextureFilterProgram.mShaderFiles.push_back(make_pair("interface/onetexturefilterV.glsl", GL_VERTEX_SHADER)); +		gOneTextureFilterProgram.mShaderFiles.push_back(make_pair("interface/onetexturefilterF.glsl", GL_FRAGMENT_SHADER));  		gOneTextureFilterProgram.mShaderLevel = mShaderLevel[SHADER_INTERFACE];  		success = gOneTextureFilterProgram.createShader(NULL, NULL);  		if (success) @@ -3646,8 +3646,8 @@ BOOL LLViewerShaderMgr::loadShadersInterface()  	{  		gOneTextureNoColorProgram.mName = "One Texture No Color Shader";  		gOneTextureNoColorProgram.mShaderFiles.clear(); -		gOneTextureNoColorProgram.mShaderFiles.push_back(make_pair("interface/onetexturenocolorV.glsl", GL_VERTEX_SHADER_ARB)); -		gOneTextureNoColorProgram.mShaderFiles.push_back(make_pair("interface/onetexturenocolorF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gOneTextureNoColorProgram.mShaderFiles.push_back(make_pair("interface/onetexturenocolorV.glsl", GL_VERTEX_SHADER)); +		gOneTextureNoColorProgram.mShaderFiles.push_back(make_pair("interface/onetexturenocolorF.glsl", GL_FRAGMENT_SHADER));  		gOneTextureNoColorProgram.mShaderLevel = mShaderLevel[SHADER_INTERFACE];  		success = gOneTextureNoColorProgram.createShader(NULL, NULL);  		if (success) @@ -3661,8 +3661,8 @@ BOOL LLViewerShaderMgr::loadShadersInterface()  	{  		gSolidColorProgram.mName = "Solid Color Shader";  		gSolidColorProgram.mShaderFiles.clear(); -		gSolidColorProgram.mShaderFiles.push_back(make_pair("interface/solidcolorV.glsl", GL_VERTEX_SHADER_ARB)); -		gSolidColorProgram.mShaderFiles.push_back(make_pair("interface/solidcolorF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gSolidColorProgram.mShaderFiles.push_back(make_pair("interface/solidcolorV.glsl", GL_VERTEX_SHADER)); +		gSolidColorProgram.mShaderFiles.push_back(make_pair("interface/solidcolorF.glsl", GL_FRAGMENT_SHADER));  		gSolidColorProgram.mShaderLevel = mShaderLevel[SHADER_INTERFACE];  		success = gSolidColorProgram.createShader(NULL, NULL);  		if (success) @@ -3677,8 +3677,8 @@ BOOL LLViewerShaderMgr::loadShadersInterface()  	{  		gOcclusionProgram.mName = "Occlusion Shader";  		gOcclusionProgram.mShaderFiles.clear(); -		gOcclusionProgram.mShaderFiles.push_back(make_pair("interface/occlusionV.glsl", GL_VERTEX_SHADER_ARB)); -		gOcclusionProgram.mShaderFiles.push_back(make_pair("interface/occlusionF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gOcclusionProgram.mShaderFiles.push_back(make_pair("interface/occlusionV.glsl", GL_VERTEX_SHADER)); +		gOcclusionProgram.mShaderFiles.push_back(make_pair("interface/occlusionF.glsl", GL_FRAGMENT_SHADER));  		gOcclusionProgram.mShaderLevel = mShaderLevel[SHADER_INTERFACE];          gOcclusionProgram.mRiggedVariant = &gSkinnedOcclusionProgram;  		success = gOcclusionProgram.createShader(NULL, NULL); @@ -3689,8 +3689,8 @@ BOOL LLViewerShaderMgr::loadShadersInterface()          gSkinnedOcclusionProgram.mName = "Skinned Occlusion Shader";          gSkinnedOcclusionProgram.mFeatures.hasObjectSkinning = true;          gSkinnedOcclusionProgram.mShaderFiles.clear(); -        gSkinnedOcclusionProgram.mShaderFiles.push_back(make_pair("interface/occlusionSkinnedV.glsl", GL_VERTEX_SHADER_ARB)); -        gSkinnedOcclusionProgram.mShaderFiles.push_back(make_pair("interface/occlusionF.glsl", GL_FRAGMENT_SHADER_ARB)); +        gSkinnedOcclusionProgram.mShaderFiles.push_back(make_pair("interface/occlusionSkinnedV.glsl", GL_VERTEX_SHADER)); +        gSkinnedOcclusionProgram.mShaderFiles.push_back(make_pair("interface/occlusionF.glsl", GL_FRAGMENT_SHADER));          gSkinnedOcclusionProgram.mShaderLevel = mShaderLevel[SHADER_INTERFACE];          success = gSkinnedOcclusionProgram.createShader(NULL, NULL);      } @@ -3699,8 +3699,8 @@ BOOL LLViewerShaderMgr::loadShadersInterface()  	{  		gOcclusionCubeProgram.mName = "Occlusion Cube Shader";  		gOcclusionCubeProgram.mShaderFiles.clear(); -		gOcclusionCubeProgram.mShaderFiles.push_back(make_pair("interface/occlusionCubeV.glsl", GL_VERTEX_SHADER_ARB)); -		gOcclusionCubeProgram.mShaderFiles.push_back(make_pair("interface/occlusionF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gOcclusionCubeProgram.mShaderFiles.push_back(make_pair("interface/occlusionCubeV.glsl", GL_VERTEX_SHADER)); +		gOcclusionCubeProgram.mShaderFiles.push_back(make_pair("interface/occlusionF.glsl", GL_FRAGMENT_SHADER));  		gOcclusionCubeProgram.mShaderLevel = mShaderLevel[SHADER_INTERFACE];  		success = gOcclusionCubeProgram.createShader(NULL, NULL);  	} @@ -3709,8 +3709,8 @@ BOOL LLViewerShaderMgr::loadShadersInterface()  	{  		gDebugProgram.mName = "Debug Shader";  		gDebugProgram.mShaderFiles.clear(); -		gDebugProgram.mShaderFiles.push_back(make_pair("interface/debugV.glsl", GL_VERTEX_SHADER_ARB)); -		gDebugProgram.mShaderFiles.push_back(make_pair("interface/debugF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDebugProgram.mShaderFiles.push_back(make_pair("interface/debugV.glsl", GL_VERTEX_SHADER)); +		gDebugProgram.mShaderFiles.push_back(make_pair("interface/debugF.glsl", GL_FRAGMENT_SHADER));          gDebugProgram.mRiggedVariant = &gSkinnedDebugProgram;  		gDebugProgram.mShaderLevel = mShaderLevel[SHADER_INTERFACE];          success = make_rigged_variant(gDebugProgram, gSkinnedDebugProgram); @@ -3721,8 +3721,8 @@ BOOL LLViewerShaderMgr::loadShadersInterface()  	{  		gClipProgram.mName = "Clip Shader";  		gClipProgram.mShaderFiles.clear(); -		gClipProgram.mShaderFiles.push_back(make_pair("interface/clipV.glsl", GL_VERTEX_SHADER_ARB)); -		gClipProgram.mShaderFiles.push_back(make_pair("interface/clipF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gClipProgram.mShaderFiles.push_back(make_pair("interface/clipV.glsl", GL_VERTEX_SHADER)); +		gClipProgram.mShaderFiles.push_back(make_pair("interface/clipF.glsl", GL_FRAGMENT_SHADER));  		gClipProgram.mShaderLevel = mShaderLevel[SHADER_INTERFACE];  		success = gClipProgram.createShader(NULL, NULL);  	} @@ -3731,8 +3731,8 @@ BOOL LLViewerShaderMgr::loadShadersInterface()  	{  		gDownsampleDepthProgram.mName = "DownsampleDepth Shader";  		gDownsampleDepthProgram.mShaderFiles.clear(); -		gDownsampleDepthProgram.mShaderFiles.push_back(make_pair("interface/downsampleDepthV.glsl", GL_VERTEX_SHADER_ARB)); -		gDownsampleDepthProgram.mShaderFiles.push_back(make_pair("interface/downsampleDepthF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDownsampleDepthProgram.mShaderFiles.push_back(make_pair("interface/downsampleDepthV.glsl", GL_VERTEX_SHADER)); +		gDownsampleDepthProgram.mShaderFiles.push_back(make_pair("interface/downsampleDepthF.glsl", GL_FRAGMENT_SHADER));  		gDownsampleDepthProgram.mShaderLevel = mShaderLevel[SHADER_INTERFACE];  		success = gDownsampleDepthProgram.createShader(NULL, NULL);  	} @@ -3741,8 +3741,8 @@ BOOL LLViewerShaderMgr::loadShadersInterface()  	{  		gBenchmarkProgram.mName = "Benchmark Shader";  		gBenchmarkProgram.mShaderFiles.clear(); -		gBenchmarkProgram.mShaderFiles.push_back(make_pair("interface/benchmarkV.glsl", GL_VERTEX_SHADER_ARB)); -		gBenchmarkProgram.mShaderFiles.push_back(make_pair("interface/benchmarkF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gBenchmarkProgram.mShaderFiles.push_back(make_pair("interface/benchmarkV.glsl", GL_VERTEX_SHADER)); +		gBenchmarkProgram.mShaderFiles.push_back(make_pair("interface/benchmarkF.glsl", GL_FRAGMENT_SHADER));  		gBenchmarkProgram.mShaderLevel = mShaderLevel[SHADER_INTERFACE];  		success = gBenchmarkProgram.createShader(NULL, NULL);  	} @@ -3751,8 +3751,8 @@ BOOL LLViewerShaderMgr::loadShadersInterface()  	{  		gDownsampleDepthRectProgram.mName = "DownsampleDepthRect Shader";  		gDownsampleDepthRectProgram.mShaderFiles.clear(); -		gDownsampleDepthRectProgram.mShaderFiles.push_back(make_pair("interface/downsampleDepthV.glsl", GL_VERTEX_SHADER_ARB)); -		gDownsampleDepthRectProgram.mShaderFiles.push_back(make_pair("interface/downsampleDepthRectF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gDownsampleDepthRectProgram.mShaderFiles.push_back(make_pair("interface/downsampleDepthV.glsl", GL_VERTEX_SHADER)); +		gDownsampleDepthRectProgram.mShaderFiles.push_back(make_pair("interface/downsampleDepthRectF.glsl", GL_FRAGMENT_SHADER));  		gDownsampleDepthRectProgram.mShaderLevel = mShaderLevel[SHADER_INTERFACE];  		success = gDownsampleDepthRectProgram.createShader(NULL, NULL);  	} @@ -3761,8 +3761,8 @@ BOOL LLViewerShaderMgr::loadShadersInterface()  	{  		gAlphaMaskProgram.mName = "Alpha Mask Shader";  		gAlphaMaskProgram.mShaderFiles.clear(); -		gAlphaMaskProgram.mShaderFiles.push_back(make_pair("interface/alphamaskV.glsl", GL_VERTEX_SHADER_ARB)); -		gAlphaMaskProgram.mShaderFiles.push_back(make_pair("interface/alphamaskF.glsl", GL_FRAGMENT_SHADER_ARB)); +		gAlphaMaskProgram.mShaderFiles.push_back(make_pair("interface/alphamaskV.glsl", GL_VERTEX_SHADER)); +		gAlphaMaskProgram.mShaderFiles.push_back(make_pair("interface/alphamaskF.glsl", GL_FRAGMENT_SHADER));  		gAlphaMaskProgram.mShaderLevel = mShaderLevel[SHADER_INTERFACE];  		success = gAlphaMaskProgram.createShader(NULL, NULL);  	} @@ -3797,8 +3797,8 @@ BOOL LLViewerShaderMgr::loadShadersWindLight()          gWLSkyProgram.mFeatures.hasTransport = true;          gWLSkyProgram.mFeatures.hasGamma = true;          gWLSkyProgram.mFeatures.hasSrgb = true; -        gWLSkyProgram.mShaderFiles.push_back(make_pair("windlight/skyV.glsl", GL_VERTEX_SHADER_ARB)); -        gWLSkyProgram.mShaderFiles.push_back(make_pair("windlight/skyF.glsl", GL_FRAGMENT_SHADER_ARB)); +        gWLSkyProgram.mShaderFiles.push_back(make_pair("windlight/skyV.glsl", GL_VERTEX_SHADER)); +        gWLSkyProgram.mShaderFiles.push_back(make_pair("windlight/skyF.glsl", GL_FRAGMENT_SHADER));          gWLSkyProgram.mShaderLevel = mShaderLevel[SHADER_WINDLIGHT];          gWLSkyProgram.mShaderGroup = LLGLSLShader::SG_SKY;          success = gWLSkyProgram.createShader(NULL, NULL); @@ -3812,8 +3812,8 @@ BOOL LLViewerShaderMgr::loadShadersWindLight()          gWLCloudProgram.mFeatures.hasTransport = true;          gWLCloudProgram.mFeatures.hasGamma = true;          gWLCloudProgram.mFeatures.hasSrgb = true; -        gWLCloudProgram.mShaderFiles.push_back(make_pair("windlight/cloudsV.glsl", GL_VERTEX_SHADER_ARB)); -        gWLCloudProgram.mShaderFiles.push_back(make_pair("windlight/cloudsF.glsl", GL_FRAGMENT_SHADER_ARB)); +        gWLCloudProgram.mShaderFiles.push_back(make_pair("windlight/cloudsV.glsl", GL_VERTEX_SHADER)); +        gWLCloudProgram.mShaderFiles.push_back(make_pair("windlight/cloudsF.glsl", GL_FRAGMENT_SHADER));          gWLCloudProgram.mShaderLevel = mShaderLevel[SHADER_WINDLIGHT];          gWLCloudProgram.mShaderGroup = LLGLSLShader::SG_SKY;          success = gWLCloudProgram.createShader(NULL, NULL); @@ -3830,8 +3830,8 @@ BOOL LLViewerShaderMgr::loadShadersWindLight()          gWLSunProgram.mFeatures.isFullbright = true;          gWLSunProgram.mFeatures.disableTextureIndex = true;          gWLSunProgram.mShaderGroup = LLGLSLShader::SG_SKY; -        gWLSunProgram.mShaderFiles.push_back(make_pair("windlight/sunDiscV.glsl", GL_VERTEX_SHADER_ARB)); -        gWLSunProgram.mShaderFiles.push_back(make_pair("windlight/sunDiscF.glsl", GL_FRAGMENT_SHADER_ARB)); +        gWLSunProgram.mShaderFiles.push_back(make_pair("windlight/sunDiscV.glsl", GL_VERTEX_SHADER)); +        gWLSunProgram.mShaderFiles.push_back(make_pair("windlight/sunDiscF.glsl", GL_FRAGMENT_SHADER));          gWLSunProgram.mShaderLevel = mShaderLevel[SHADER_WINDLIGHT];          gWLSunProgram.mShaderGroup = LLGLSLShader::SG_SKY;          success = gWLSunProgram.createShader(NULL, NULL); @@ -3848,8 +3848,8 @@ BOOL LLViewerShaderMgr::loadShadersWindLight()          gWLMoonProgram.mFeatures.isFullbright = true;          gWLMoonProgram.mFeatures.disableTextureIndex = true;          gWLMoonProgram.mShaderGroup = LLGLSLShader::SG_SKY; -        gWLMoonProgram.mShaderFiles.push_back(make_pair("windlight/moonV.glsl", GL_VERTEX_SHADER_ARB)); -        gWLMoonProgram.mShaderFiles.push_back(make_pair("windlight/moonF.glsl", GL_FRAGMENT_SHADER_ARB)); +        gWLMoonProgram.mShaderFiles.push_back(make_pair("windlight/moonV.glsl", GL_VERTEX_SHADER)); +        gWLMoonProgram.mShaderFiles.push_back(make_pair("windlight/moonF.glsl", GL_FRAGMENT_SHADER));          gWLMoonProgram.mShaderLevel = mShaderLevel[SHADER_WINDLIGHT];          gWLMoonProgram.mShaderGroup = LLGLSLShader::SG_SKY;          success = gWLMoonProgram.createShader(NULL, NULL); @@ -3876,7 +3876,7 @@ BOOL LLViewerShaderMgr::loadTransformShaders()  	{          gTransformPositionProgram.mName = "Position Transform Shader";  		gTransformPositionProgram.mShaderFiles.clear(); -		gTransformPositionProgram.mShaderFiles.push_back(make_pair("transform/positionV.glsl", GL_VERTEX_SHADER_ARB)); +		gTransformPositionProgram.mShaderFiles.push_back(make_pair("transform/positionV.glsl", GL_VERTEX_SHADER));  		gTransformPositionProgram.mShaderLevel = mShaderLevel[SHADER_TRANSFORM];  		const char* varyings[] = { @@ -3891,7 +3891,7 @@ BOOL LLViewerShaderMgr::loadTransformShaders()  	{  		gTransformTexCoordProgram.mName = "TexCoord Transform Shader";  		gTransformTexCoordProgram.mShaderFiles.clear(); -		gTransformTexCoordProgram.mShaderFiles.push_back(make_pair("transform/texcoordV.glsl", GL_VERTEX_SHADER_ARB)); +		gTransformTexCoordProgram.mShaderFiles.push_back(make_pair("transform/texcoordV.glsl", GL_VERTEX_SHADER));  		gTransformTexCoordProgram.mShaderLevel = mShaderLevel[SHADER_TRANSFORM];  		const char* varyings[] = { @@ -3905,7 +3905,7 @@ BOOL LLViewerShaderMgr::loadTransformShaders()  	{  		gTransformNormalProgram.mName = "Normal Transform Shader";  		gTransformNormalProgram.mShaderFiles.clear(); -		gTransformNormalProgram.mShaderFiles.push_back(make_pair("transform/normalV.glsl", GL_VERTEX_SHADER_ARB)); +		gTransformNormalProgram.mShaderFiles.push_back(make_pair("transform/normalV.glsl", GL_VERTEX_SHADER));  		gTransformNormalProgram.mShaderLevel = mShaderLevel[SHADER_TRANSFORM];  		const char* varyings[] = { @@ -3919,7 +3919,7 @@ BOOL LLViewerShaderMgr::loadTransformShaders()  	{  		gTransformColorProgram.mName = "Color Transform Shader";  		gTransformColorProgram.mShaderFiles.clear(); -		gTransformColorProgram.mShaderFiles.push_back(make_pair("transform/colorV.glsl", GL_VERTEX_SHADER_ARB)); +		gTransformColorProgram.mShaderFiles.push_back(make_pair("transform/colorV.glsl", GL_VERTEX_SHADER));  		gTransformColorProgram.mShaderLevel = mShaderLevel[SHADER_TRANSFORM];  		const char* varyings[] = { @@ -3933,7 +3933,7 @@ BOOL LLViewerShaderMgr::loadTransformShaders()  	{  		gTransformTangentProgram.mName = "Binormal Transform Shader";  		gTransformTangentProgram.mShaderFiles.clear(); -		gTransformTangentProgram.mShaderFiles.push_back(make_pair("transform/binormalV.glsl", GL_VERTEX_SHADER_ARB)); +		gTransformTangentProgram.mShaderFiles.push_back(make_pair("transform/binormalV.glsl", GL_VERTEX_SHADER));          gTransformTangentProgram.mShaderLevel = mShaderLevel[SHADER_TRANSFORM];  		const char* varyings[] = { diff --git a/indra/newview/llvograss.cpp b/indra/newview/llvograss.cpp index 9a41eedb54..96fa1df218 100644 --- a/indra/newview/llvograss.cpp +++ b/indra/newview/llvograss.cpp @@ -594,7 +594,7 @@ U32 LLVOGrass::getPartitionType() const  }  LLGrassPartition::LLGrassPartition(LLViewerRegion* regionp) -: LLSpatialPartition(LLDrawPoolAlpha::VERTEX_DATA_MASK | LLVertexBuffer::MAP_TEXTURE_INDEX, TRUE, GL_STREAM_DRAW_ARB, regionp) +: LLSpatialPartition(LLDrawPoolAlpha::VERTEX_DATA_MASK | LLVertexBuffer::MAP_TEXTURE_INDEX, TRUE, GL_STREAM_DRAW, regionp)  {  	mDrawableType = LLPipeline::RENDER_TYPE_GRASS;  	mPartitionType = LLViewerRegion::PARTITION_GRASS; @@ -602,7 +602,7 @@ LLGrassPartition::LLGrassPartition(LLViewerRegion* regionp)  	mDepthMask = TRUE;  	mSlopRatio = 0.1f;  	mRenderPass = LLRenderPass::PASS_GRASS; -	mBufferUsage = GL_DYNAMIC_DRAW_ARB; +	mBufferUsage = GL_DYNAMIC_DRAW;  }  void LLGrassPartition::addGeometryCount(LLSpatialGroup* group, U32& vertex_count, U32& index_count) @@ -626,7 +626,7 @@ void LLGrassPartition::addGeometryCount(LLSpatialGroup* group, U32& vertex_count  		if (drawablep->isAnimating())  		{ -			group->mBufferUsage = GL_STREAM_DRAW_ARB; +			group->mBufferUsage = GL_STREAM_DRAW;  		}  		U32 count = 0; diff --git a/indra/newview/llvoground.cpp b/indra/newview/llvoground.cpp index 52a6395618..28bd5a3c97 100644 --- a/indra/newview/llvoground.cpp +++ b/indra/newview/llvoground.cpp @@ -93,7 +93,7 @@ BOOL LLVOGround::updateGeometry(LLDrawable *drawable)  	if (!face->getVertexBuffer())  	{  		face->setSize(5, 12); -		LLVertexBuffer* buff = new LLVertexBuffer(LLDrawPoolGround::VERTEX_DATA_MASK, GL_STREAM_DRAW_ARB); +		LLVertexBuffer* buff = new LLVertexBuffer(LLDrawPoolGround::VERTEX_DATA_MASK, GL_STREAM_DRAW);  		if (!buff->allocateBuffer(face->getGeomCount(), face->getIndicesCount(), TRUE))  		{  			LL_WARNS() << "Failed to allocate Vertex Buffer for VOGround to " diff --git a/indra/newview/llvopartgroup.cpp b/indra/newview/llvopartgroup.cpp index 51cf5f20c6..e39154d395 100644 --- a/indra/newview/llvopartgroup.cpp +++ b/indra/newview/llvopartgroup.cpp @@ -65,7 +65,7 @@ void LLVOPartGroup::restoreGL()  {  	//TODO: optimize out binormal mask here.  Specular and normal coords as well. -	sVB = new LLVertexBuffer(VERTEX_DATA_MASK | LLVertexBuffer::MAP_TANGENT | LLVertexBuffer::MAP_TEXCOORD1 | LLVertexBuffer::MAP_TEXCOORD2, GL_STREAM_DRAW_ARB); +	sVB = new LLVertexBuffer(VERTEX_DATA_MASK | LLVertexBuffer::MAP_TANGENT | LLVertexBuffer::MAP_TEXCOORD1 | LLVertexBuffer::MAP_TEXCOORD2, GL_STREAM_DRAW);  	U32 count = LL_MAX_PARTICLE_COUNT;  	if (!sVB->allocateBuffer(count*4, count*6, true))  	{ @@ -737,7 +737,7 @@ U32 LLVOPartGroup::getPartitionType() const  }  LLParticlePartition::LLParticlePartition(LLViewerRegion* regionp) -: LLSpatialPartition(LLDrawPoolAlpha::VERTEX_DATA_MASK | LLVertexBuffer::MAP_TEXTURE_INDEX, TRUE, GL_STREAM_DRAW_ARB, regionp) +: LLSpatialPartition(LLDrawPoolAlpha::VERTEX_DATA_MASK | LLVertexBuffer::MAP_TEXTURE_INDEX, TRUE, GL_STREAM_DRAW, regionp)  {  	mRenderPass = LLRenderPass::PASS_ALPHA;  	mDrawableType = LLPipeline::RENDER_TYPE_PARTICLES; diff --git a/indra/newview/llvosky.cpp b/indra/newview/llvosky.cpp index 909588367b..efe18a78e1 100644 --- a/indra/newview/llvosky.cpp +++ b/indra/newview/llvosky.cpp @@ -1010,7 +1010,7 @@ BOOL LLVOSky::updateGeometry(LLDrawable *drawable)  			face->setSize(4, 6);  			face->setGeomIndex(0);  			face->setIndicesIndex(0); -			LLVertexBuffer* buff = new LLVertexBuffer(LLDrawPoolSky::VERTEX_DATA_MASK, GL_STREAM_DRAW_ARB); +			LLVertexBuffer* buff = new LLVertexBuffer(LLDrawPoolSky::VERTEX_DATA_MASK, GL_STREAM_DRAW);  			buff->allocateBuffer(4, 6, TRUE);  			face->setVertexBuffer(buff); @@ -1139,7 +1139,7 @@ bool LLVOSky::updateHeavenlyBodyGeometry(LLDrawable *drawable, F32 scale, const  	if (!facep->getVertexBuffer())  	{  		facep->setSize(4, 6); -		LLVertexBuffer* buff = new LLVertexBuffer(LLDrawPoolSky::VERTEX_DATA_MASK, GL_STREAM_DRAW_ARB); +		LLVertexBuffer* buff = new LLVertexBuffer(LLDrawPoolSky::VERTEX_DATA_MASK, GL_STREAM_DRAW);  		if (!buff->allocateBuffer(facep->getGeomCount(), facep->getIndicesCount(), TRUE))  		{  			LL_WARNS() << "Failed to allocate Vertex Buffer for vosky to " @@ -1379,7 +1379,7 @@ void LLVOSky::updateReflectionGeometry(LLDrawable *drawable, F32 H,  	if (!face->getVertexBuffer() || quads*4 != face->getGeomCount())  	{  		face->setSize(quads * 4, quads * 6); -		LLVertexBuffer* buff = new LLVertexBuffer(LLDrawPoolWater::VERTEX_DATA_MASK, GL_STREAM_DRAW_ARB); +		LLVertexBuffer* buff = new LLVertexBuffer(LLDrawPoolWater::VERTEX_DATA_MASK, GL_STREAM_DRAW);  		if (!buff->allocateBuffer(face->getGeomCount(), face->getIndicesCount(), TRUE))  		{  			LL_WARNS() << "Failed to allocate Vertex Buffer for vosky to " diff --git a/indra/newview/llvosurfacepatch.cpp b/indra/newview/llvosurfacepatch.cpp index 5cb7e7478b..57f728a65e 100644 --- a/indra/newview/llvosurfacepatch.cpp +++ b/indra/newview/llvosurfacepatch.cpp @@ -51,7 +51,7 @@ class LLVertexBufferTerrain : public LLVertexBuffer  {  public:  	LLVertexBufferTerrain() : -		LLVertexBuffer(MAP_VERTEX | MAP_NORMAL | MAP_TEXCOORD0 | MAP_TEXCOORD1 | MAP_COLOR, GL_DYNAMIC_DRAW_ARB) +		LLVertexBuffer(MAP_VERTEX | MAP_NORMAL | MAP_TEXCOORD0 | MAP_TEXCOORD1 | MAP_COLOR, GL_DYNAMIC_DRAW)  	{  		//texture coordinates 2 and 3 exist, but use the same data as texture coordinate 1  	}; @@ -994,7 +994,7 @@ U32 LLVOSurfacePatch::getPartitionType() const  }  LLTerrainPartition::LLTerrainPartition(LLViewerRegion* regionp) -: LLSpatialPartition(LLDrawPoolTerrain::VERTEX_DATA_MASK, FALSE, GL_DYNAMIC_DRAW_ARB, regionp) +: LLSpatialPartition(LLDrawPoolTerrain::VERTEX_DATA_MASK, FALSE, GL_DYNAMIC_DRAW, regionp)  {  	mOcclusionEnabled = FALSE;  	mInfiniteFarClip = TRUE; diff --git a/indra/newview/llvotree.cpp b/indra/newview/llvotree.cpp index 493162b47b..3da535dd09 100644 --- a/indra/newview/llvotree.cpp +++ b/indra/newview/llvotree.cpp @@ -921,7 +921,7 @@ void LLVOTree::updateMesh()  	LLFace* facep = mDrawable->getFace(0);  	if (!facep) return; -	LLVertexBuffer* buff = new LLVertexBuffer(LLDrawPoolTree::VERTEX_DATA_MASK, GL_STATIC_DRAW_ARB); +	LLVertexBuffer* buff = new LLVertexBuffer(LLDrawPoolTree::VERTEX_DATA_MASK, GL_STATIC_DRAW);  	if (!buff->allocateBuffer(vert_count, index_count, TRUE))  	{  		LL_WARNS() << "Failed to allocate Vertex Buffer on mesh update to " @@ -1226,7 +1226,7 @@ U32 LLVOTree::getPartitionType() const  }  LLTreePartition::LLTreePartition(LLViewerRegion* regionp) -: LLSpatialPartition(0, FALSE, GL_DYNAMIC_DRAW_ARB, regionp) +: LLSpatialPartition(0, FALSE, GL_DYNAMIC_DRAW, regionp)  {  	mDrawableType = LLPipeline::RENDER_TYPE_TREE;  	mPartitionType = LLViewerRegion::PARTITION_TREE; diff --git a/indra/newview/llvovolume.cpp b/indra/newview/llvovolume.cpp index 4ddba872f1..86c6567c83 100644 --- a/indra/newview/llvovolume.cpp +++ b/indra/newview/llvovolume.cpp @@ -5071,7 +5071,7 @@ U32 LLVOVolume::getPartitionType() const  }  LLVolumePartition::LLVolumePartition(LLViewerRegion* regionp) -: LLSpatialPartition(LLVOVolume::VERTEX_DATA_MASK, TRUE, GL_DYNAMIC_DRAW_ARB, regionp), +: LLSpatialPartition(LLVOVolume::VERTEX_DATA_MASK, TRUE, GL_DYNAMIC_DRAW, regionp),  LLVolumeGeometryManager()  {  	mLODPeriod = 32; @@ -5079,7 +5079,7 @@ LLVolumeGeometryManager()  	mDrawableType = LLPipeline::RENDER_TYPE_VOLUME;  	mPartitionType = LLViewerRegion::PARTITION_VOLUME;  	mSlopRatio = 0.25f; -	mBufferUsage = GL_DYNAMIC_DRAW_ARB; +	mBufferUsage = GL_DYNAMIC_DRAW;  }  LLVolumeBridge::LLVolumeBridge(LLDrawable* drawablep, LLViewerRegion* regionp) @@ -5091,7 +5091,7 @@ LLVolumeGeometryManager()  	mDrawableType = LLPipeline::RENDER_TYPE_VOLUME;  	mPartitionType = LLViewerRegion::PARTITION_BRIDGE; -	mBufferUsage = GL_DYNAMIC_DRAW_ARB; +	mBufferUsage = GL_DYNAMIC_DRAW;  	mSlopRatio = 0.25f;  } @@ -5674,7 +5674,7 @@ void LLVolumeGeometryManager::rebuildGeom(LLSpatialGroup* group)  			if (drawablep->isAnimating())  			{ //fall back to stream draw for animating verts -				useage = GL_STREAM_DRAW_ARB; +				useage = GL_STREAM_DRAW;  			}  			LLVOVolume* vobj = drawablep->getVOVolume(); @@ -6276,10 +6276,10 @@ U32 LLVolumeGeometryManager::genDrawInfo(LLSpatialGroup* group, U32 mask, LLFace  	if (use_transform_feedback &&  		gTransformPositionProgram.mProgramObject && //transform shaders are loaded -		buffer_usage == GL_DYNAMIC_DRAW_ARB && //target buffer is in VRAM +		buffer_usage == GL_DYNAMIC_DRAW && //target buffer is in VRAM  		!(mask & LLVertexBuffer::MAP_WEIGHT4)) //TODO: add support for weights  	{ -		buffer_usage = GL_DYNAMIC_COPY_ARB; +		buffer_usage = GL_DYNAMIC_COPY;  	}  #if LL_DARWIN @@ -6502,9 +6502,9 @@ U32 LLVolumeGeometryManager::genDrawInfo(LLSpatialGroup* group, U32 mask, LLFace  		} -		if (flexi && buffer_usage && buffer_usage != GL_STREAM_DRAW_ARB) +		if (flexi && buffer_usage && buffer_usage != GL_STREAM_DRAW)  		{ -			buffer_usage = GL_STREAM_DRAW_ARB; +			buffer_usage = GL_STREAM_DRAW;  		}  		//create vertex buffer @@ -6914,7 +6914,7 @@ void LLVolumeGeometryManager::addGeometryCount(LLSpatialGroup* group, U32& verte          if (drawablep->isAnimating())          { //fall back to stream draw for animating verts -            usage = GL_STREAM_DRAW_ARB; +            usage = GL_STREAM_DRAW;          }      } @@ -6943,7 +6943,7 @@ void LLGeometryManager::addGeometryCount(LLSpatialGroup* group, U32 &vertex_coun  		if (drawablep->isAnimating())  		{ //fall back to stream draw for animating verts -			usage = GL_STREAM_DRAW_ARB; +			usage = GL_STREAM_DRAW;  		}  		//for each face diff --git a/indra/newview/llvowater.cpp b/indra/newview/llvowater.cpp index 089a7712c0..6f30092326 100644 --- a/indra/newview/llvowater.cpp +++ b/indra/newview/llvowater.cpp @@ -152,7 +152,7 @@ BOOL LLVOWater::updateGeometry(LLDrawable *drawable)  	LLVertexBuffer* buff = face->getVertexBuffer();  	if (!buff || !buff->isWriteable())  	{ -		buff = new LLVertexBuffer(LLDrawPoolWater::VERTEX_DATA_MASK, GL_DYNAMIC_DRAW_ARB); +		buff = new LLVertexBuffer(LLDrawPoolWater::VERTEX_DATA_MASK, GL_DYNAMIC_DRAW);  		if (!buff->allocateBuffer(face->getGeomCount(), face->getIndicesCount(), TRUE))  		{  			LL_WARNS() << "Failed to allocate Vertex Buffer on water update to " @@ -295,7 +295,7 @@ U32 LLVOVoidWater::getPartitionType() const  }  LLWaterPartition::LLWaterPartition(LLViewerRegion* regionp) -: LLSpatialPartition(0, FALSE, GL_DYNAMIC_DRAW_ARB, regionp) +: LLSpatialPartition(0, FALSE, GL_DYNAMIC_DRAW, regionp)  {  	mInfiniteFarClip = TRUE;  	mDrawableType = LLPipeline::RENDER_TYPE_WATER; diff --git a/indra/newview/llvowlsky.cpp b/indra/newview/llvowlsky.cpp index d1f584cbca..c7df343ad0 100644 --- a/indra/newview/llvowlsky.cpp +++ b/indra/newview/llvowlsky.cpp @@ -151,7 +151,7 @@ BOOL LLVOWLSky::updateGeometry(LLDrawable * drawable)      if (mFsSkyVerts.isNull())      { -        mFsSkyVerts = new LLVertexBuffer(LLDrawPoolWLSky::ADV_ATMO_SKY_VERTEX_DATA_MASK, GL_STATIC_DRAW_ARB); +        mFsSkyVerts = new LLVertexBuffer(LLDrawPoolWLSky::ADV_ATMO_SKY_VERTEX_DATA_MASK, GL_STATIC_DRAW);          if (!mFsSkyVerts->allocateBuffer(4, 6, TRUE))  		{ @@ -216,7 +216,7 @@ BOOL LLVOWLSky::updateGeometry(LLDrawable * drawable)  		for (U32 i = 0; i < strips_segments ;++i)  		{ -			LLVertexBuffer * segment = new LLVertexBuffer(LLDrawPoolWLSky::SKY_VERTEX_DATA_MASK, GL_STATIC_DRAW_ARB); +			LLVertexBuffer * segment = new LLVertexBuffer(LLDrawPoolWLSky::SKY_VERTEX_DATA_MASK, GL_STATIC_DRAW);  			mStripsVerts[i] = segment;  			U32 num_stacks_this_seg = stacks_per_seg; diff --git a/indra/newview/pipeline.cpp b/indra/newview/pipeline.cpp index 23b863aa19..fa5a9c97eb 100644 --- a/indra/newview/pipeline.cpp +++ b/indra/newview/pipeline.cpp @@ -523,7 +523,7 @@ void LLPipeline::init()  	if (mCubeVB.isNull())  	{ -		mCubeVB = ll_create_cube_vb(LLVertexBuffer::MAP_VERTEX, GL_STATIC_DRAW_ARB); +		mCubeVB = ll_create_cube_vb(LLVertexBuffer::MAP_VERTEX, GL_STATIC_DRAW);  	}  	mDeferredVB = new LLVertexBuffer(DEFERRED_VB_MASK, 0); @@ -903,7 +903,7 @@ bool LLPipeline::allocateScreenBuffer(U32 resX, U32 resY, U32 samples)  		if (gGLManager.mGLVersion < 4.f && gGLManager.mIsNVIDIA)  		{ -			screenFormat = GL_RGBA16F_ARB; +			screenFormat = GL_RGBA16F;  		}  		if (!mScreen.allocate(resX, resY, screenFormat, FALSE, FALSE, LLTexUnit::TT_RECT_TEXTURE, FALSE, samples)) return false; @@ -1282,7 +1282,7 @@ void LLPipeline::createGLBuffers()  			LLImageGL::generateTextures(1, &mNoiseMap);  			gGL.getTexUnit(0)->bindManual(LLTexUnit::TT_TEXTURE, mNoiseMap); -			LLImageGL::setManualImage(LLTexUnit::getInternalType(LLTexUnit::TT_TEXTURE), 0, GL_RGB16F_ARB, noiseRes, noiseRes, GL_RGB, GL_FLOAT, noise, false); +			LLImageGL::setManualImage(LLTexUnit::getInternalType(LLTexUnit::TT_TEXTURE), 0, GL_RGB16F, noiseRes, noiseRes, GL_RGB, GL_FLOAT, noise, false);  			gGL.getTexUnit(0)->setTextureFilteringOption(LLTexUnit::TFO_POINT);  		} @@ -1297,7 +1297,7 @@ void LLPipeline::createGLBuffers()  			LLImageGL::generateTextures(1, &mTrueNoiseMap);  			gGL.getTexUnit(0)->bindManual(LLTexUnit::TT_TEXTURE, mTrueNoiseMap); -			LLImageGL::setManualImage(LLTexUnit::getInternalType(LLTexUnit::TT_TEXTURE), 0, GL_RGB16F_ARB, noiseRes, noiseRes, GL_RGB,GL_FLOAT, noise, false); +			LLImageGL::setManualImage(LLTexUnit::getInternalType(LLTexUnit::TT_TEXTURE), 0, GL_RGB16F, noiseRes, noiseRes, GL_RGB,GL_FLOAT, noise, false);  			gGL.getTexUnit(0)->setTextureFilteringOption(LLTexUnit::TFO_POINT);  		} @@ -2399,7 +2399,7 @@ void LLPipeline::updateCull(LLCamera& camera, LLCullResult& result, LLPlane* pla  	{  		if (mCubeVB.isNull())  		{ //cube VB will be used for issuing occlusion queries -			mCubeVB = ll_create_cube_vb(LLVertexBuffer::MAP_VERTEX, GL_STATIC_DRAW_ARB); +			mCubeVB = ll_create_cube_vb(LLVertexBuffer::MAP_VERTEX, GL_STATIC_DRAW);  		}  		mCubeVB->setBuffer(LLVertexBuffer::MAP_VERTEX);  	} @@ -2655,7 +2655,7 @@ void LLPipeline::doOcclusion(LLCamera& camera)  		if (mCubeVB.isNull())  		{ //cube VB will be used for issuing occlusion queries -			mCubeVB = ll_create_cube_vb(LLVertexBuffer::MAP_VERTEX, GL_STATIC_DRAW_ARB); +			mCubeVB = ll_create_cube_vb(LLVertexBuffer::MAP_VERTEX, GL_STATIC_DRAW);  		}  		mCubeVB->setBuffer(LLVertexBuffer::MAP_VERTEX); @@ -8167,8 +8167,8 @@ void LLPipeline::bindDeferredShader(LLGLSLShader& shader, LLRenderTarget* light_  			gGL.getTexUnit(channel)->setTextureAddressMode(LLTexUnit::TAM_CLAMP);  			stop_glerror(); -			glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_MODE_ARB, GL_COMPARE_R_TO_TEXTURE_ARB); -			glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_FUNC_ARB, GL_LEQUAL); +			glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_MODE, GL_COMPARE_REF_TO_TEXTURE); +			glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_FUNC, GL_LEQUAL);  			stop_glerror();  		}  	} @@ -8189,8 +8189,8 @@ void LLPipeline::bindDeferredShader(LLGLSLShader& shader, LLRenderTarget* light_  			gGL.getTexUnit(channel)->setTextureAddressMode(LLTexUnit::TAM_CLAMP);  			stop_glerror(); -			glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_MODE_ARB, GL_COMPARE_R_TO_TEXTURE_ARB); -			glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_FUNC_ARB, GL_LEQUAL); +			glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_MODE, GL_COMPARE_REF_TO_TEXTURE); +			glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_FUNC, GL_LEQUAL);  			stop_glerror();  		}  	} @@ -8602,7 +8602,7 @@ void LLPipeline::renderDeferredLighting(LLRenderTarget *screen_target)                  if (mCubeVB.isNull())                  { -                    mCubeVB = ll_create_cube_vb(LLVertexBuffer::MAP_VERTEX, GL_STATIC_DRAW_ARB); +                    mCubeVB = ll_create_cube_vb(LLVertexBuffer::MAP_VERTEX, GL_STATIC_DRAW);                  }                  mCubeVB->setBuffer(LLVertexBuffer::MAP_VERTEX); @@ -9104,7 +9104,7 @@ void LLPipeline::unbindDeferredShader(LLGLSLShader &shader)  	{  		if (shader.disableTexture(LLShaderMgr::DEFERRED_SHADOW0+i) > -1)  		{ -			glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_MODE_ARB, GL_NONE); +			glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_MODE, GL_NONE);  		}  	} @@ -9112,7 +9112,7 @@ void LLPipeline::unbindDeferredShader(LLGLSLShader &shader)  	{  		if (shader.disableTexture(LLShaderMgr::DEFERRED_SHADOW0+i) > -1)  		{ -			glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_MODE_ARB, GL_NONE); +			glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_COMPARE_MODE, GL_NONE);  		}  	} | 
