diff --git a/src/framework/WindowManager.cpp b/src/framework/WindowManager.cpp
index 179d6530a7a3910cd28aff6bbad1f47566d9b9fd..476df07fc133b60baeb5cc4d10701396c6ca3c18 100644
--- a/src/framework/WindowManager.cpp
+++ b/src/framework/WindowManager.cpp
@@ -122,13 +122,17 @@ bool WindowManager::initialize(const int width, const int height, const int fram
 	SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 1);
 	SDL_GL_SetAttribute(SDL_GL_SWAP_CONTROL, 1);
 
+	// enable opt-in quality feature FSAA (4x)
+	if(m_BoincAdapter->graphicsQualitySetting() == BOINCClientAdapter::HighGraphicsQualitySetting) {
+		SDL_GL_SetAttribute(SDL_GL_MULTISAMPLESAMPLES, 4);
+		SDL_GL_SetAttribute(SDL_GL_MULTISAMPLEBUFFERS, 1);
+	}
+
 	// unused requirements
 	//SDL_GL_SetAttribute(SDL_GL_ALPHA_SIZE, 8);
 	//SDL_GL_SetAttribute(SDL_GL_BUFFER_SIZE, 32);
 	//SDL_GL_SetAttribute(SDL_GL_DEPTH_SIZE, 24);
 	//SDL_GL_SetAttribute(SDL_GL_ACCELERATED_VISUAL, 1);
-	//SDL_GL_SetAttribute(SDL_GL_MULTISAMPLESAMPLES, 4);
-	//SDL_GL_SetAttribute(SDL_GL_MULTISAMPLEBUFFERS, 1);
 
 	// we always start in windowed mode
 	// (starting in fullscreen fails with high CPU load!)
diff --git a/src/starsphere/Starsphere.cpp b/src/starsphere/Starsphere.cpp
index 0a66c9ef43fca348c12c636fe0b7d20fa305bc6b..f4bd78281bb888d8ab60d6f0ad37437f53c17f77 100644
--- a/src/starsphere/Starsphere.cpp
+++ b/src/starsphere/Starsphere.cpp
@@ -863,11 +863,7 @@ void Starsphere::render(const double timeOfDay)
 		glPushMatrix();
 		glLoadIdentity();
 
-		if (isFeature(LOGO)) {
-			// call subclass implementation
-			renderLogo();
-		}
-
+		if (isFeature(LOGO)) renderLogo();
 		if (isFeature(SEARCHINFO)) renderSearchInformation();
 
 		// restore original state
diff --git a/src/starsphere/StarsphereRadio.cpp b/src/starsphere/StarsphereRadio.cpp
index 1312eb2a0bf6843e9539b46c6d04005a69555a3a..7ebc1a7812cef9ab4f721828517ef198aa2f1327 100644
--- a/src/starsphere/StarsphereRadio.cpp
+++ b/src/starsphere/StarsphereRadio.cpp
@@ -371,6 +371,11 @@ void StarsphereRadio::generateObservatories(float dimFactor)
 	m_areciboObservatory = glGenLists(1);
 	glNewList(m_areciboObservatory, GL_COMPILE);
 
+		// enable opt-in quality feature FSAA (GL_POLYGON_SMOOTH is discouraged)
+		if(m_QualitySetting == BOINCClientAdapter::HighGraphicsQualitySetting) {
+			glEnable(GL_MULTISAMPLE_ARB);
+		}
+
 		// we don't dim Arecibo, just IFOs
 		glColor3f(0.75, 0.75, 0.75);
 
@@ -434,6 +439,11 @@ void StarsphereRadio::generateObservatories(float dimFactor)
 			sphVertex3D(RAdeg+0.7, DEdeg-0.7, radius);
 		glEnd();
 
+		// disable opt-in quality feature FSAA again
+		if(m_QualitySetting == BOINCClientAdapter::HighGraphicsQualitySetting) {
+			glDisable(GL_MULTISAMPLE_ARB);
+		}
+
 	glEndList();
 }