summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
Diffstat (limited to 'indra')
-rw-r--r--indra/llrender/llgl.cpp9
-rw-r--r--indra/newview/llpanelface.cpp8
-rw-r--r--indra/newview/llpanelface.h1
3 files changed, 15 insertions, 3 deletions
diff --git a/indra/llrender/llgl.cpp b/indra/llrender/llgl.cpp
index 35b6951779..f8aa63c16f 100644
--- a/indra/llrender/llgl.cpp
+++ b/indra/llrender/llgl.cpp
@@ -2561,5 +2561,10 @@ void LLGLSyncFence::wait()
#endif
}
-
-
+#if LL_WINDOWS
+// Expose desired use of high-performance graphics processor to Optimus driver
+extern "C"
+{
+ _declspec(dllexport) DWORD NvOptimusEnablement = 0x00000001;
+}
+#endif \ No newline at end of file
diff --git a/indra/newview/llpanelface.cpp b/indra/newview/llpanelface.cpp
index 01ce4470f0..1bd8692a0e 100644
--- a/indra/newview/llpanelface.cpp
+++ b/indra/newview/llpanelface.cpp
@@ -550,8 +550,14 @@ struct LLPanelFaceSetAlignedTEFunctor : public LLSelectedTEFunctor
if (set_aligned)
{
object->setTEOffset(te, uv_offset.mV[VX], uv_offset.mV[VY]);
- object->setTEScale(te, uv_scale.mV[VX], uv_scale.mV[VY]);
+ object->setTEScale(te, uv_scale.mV[VX], uv_scale.mV[VY]);
object->setTERotation(te, uv_rot);
+ LLPanelFace::LLSelectedTEMaterial::setNormalOffsetX(mPanel, uv_offset.mV[VX]);
+ LLPanelFace::LLSelectedTEMaterial::setNormalOffsetY(mPanel, uv_offset.mV[VY]);
+ LLPanelFace::LLSelectedTEMaterial::setSpecularOffsetX(mPanel, uv_offset.mV[VX]);
+ LLPanelFace::LLSelectedTEMaterial::setSpecularOffsetY(mPanel, uv_offset.mV[VY]);
+ LLPanelFace::LLSelectedTEMaterial::setNormalRotation(mPanel, uv_rot);
+ LLPanelFace::LLSelectedTEMaterial::setSpecularRotation(mPanel, uv_rot);
}
}
if (!set_aligned)
diff --git a/indra/newview/llpanelface.h b/indra/newview/llpanelface.h
index 7c084cb0ab..7820af8bcd 100644
--- a/indra/newview/llpanelface.h
+++ b/indra/newview/llpanelface.h
@@ -414,6 +414,7 @@ private:
bool mUpdateInFlight;
bool mUpdatePending;
+public:
#if defined(DEF_GET_MAT_STATE)
#undef DEF_GET_MAT_STATE
#endif