diff --git a/indra/newview/llfloaterpreference.cpp b/indra/newview/llfloaterpreference.cpp
index 456005f1feafc62799dd82716326c35e0c4e3fca..952643326ae979dc85958050e1aac14a5f605bfe 100644
--- a/indra/newview/llfloaterpreference.cpp
+++ b/indra/newview/llfloaterpreference.cpp
@@ -656,6 +656,13 @@ void LLFloaterPreference::onOpen(const LLSD& key)
 		getChildView("maturity_desired_combobox")->setVisible( false);
 	}
 
+	bool enable_mesh = gSavedSettings.getBOOL("MeshEnabled");
+
+	getChildView("UseLightShaders")->setVisible(enable_mesh);
+	getChildView("UseSSAO")->setVisible(enable_mesh);
+	getChildView("shadows_label")->setVisible(enable_mesh);
+	getChildView("ShadowDetail")->setVisible(enable_mesh);
+
 	if (LLStartUp::getStartupState() == STATE_STARTED)
 	{
 		mFavoritesRecordMayExist = gSavedPerAccountSettings.getBOOL("ShowFavoritesOnLogin");