1
0
Fork 0

Require /sim/rendering/experimental-lighting to be true before using

experimental lighting rendering (which is very expensive on my
machine, for example).  To use distance attenuation,
/sim/rendering/distance-attenuation must also be true.
This commit is contained in:
david 2002-12-31 01:15:59 +00:00
parent 8e60042052
commit 7cc894be4b

View file

@ -738,21 +738,24 @@ void fgRenderFrame() {
glFogf (GL_FOG_DENSITY, rwy_exp2_punch_through);
ssgSetNearFar( scene_nearplane, scene_farplane );
// Enable states for drawing points with GL_extension
glEnable(GL_POINT_SMOOTH);
if (fgGetBool("/sim/rendering/experimental-lighting")) {
if ( fgGetBool("/sim/rendering/distance-attenuation")
&& glutExtensionSupported("GL_EXT_point_parameters") )
{
float quadratic[3] = {1.0, 0.001, 0.0000001};
// makes the points fade as they move away
glPointParameterfvEXT(GL_DISTANCE_ATTENUATION_EXT, quadratic);
glPointParameterfEXT(GL_POINT_SIZE_MIN_EXT, 1.0);
}
glPointSize(4.0);
// Enable states for drawing points with GL_extension
glEnable(GL_POINT_SMOOTH);
// blending function for runway lights
glBlendFunc ( GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA) ;
if ( fgGetBool("/sim/rendering/distance-attenuation")
&& glutExtensionSupported("GL_EXT_point_parameters") )
{
float quadratic[3] = {1.0, 0.001, 0.0000001};
// makes the points fade as they move away
glPointParameterfvEXT(GL_DISTANCE_ATTENUATION_EXT, quadratic);
glPointParameterfEXT(GL_POINT_SIZE_MIN_EXT, 1.0);
}
glPointSize(4.0);
// blending function for runway lights
glBlendFunc ( GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA) ;
}
glTexGeni(GL_S, GL_TEXTURE_GEN_MODE, GL_SPHERE_MAP);
glTexGeni(GL_T, GL_TEXTURE_GEN_MODE, GL_SPHERE_MAP);
@ -785,15 +788,17 @@ void fgRenderFrame() {
//_frame_count++;
if ( fgGetBool("/sim/rendering/distance-attenuation")
&& glutExtensionSupported("GL_EXT_point_parameters") )
{
glPointParameterfvEXT(GL_DISTANCE_ATTENUATION_EXT,
default_attenuation);
}
if (fgGetBool("/sim/rendering/experimental-lighting")) {
if ( fgGetBool("/sim/rendering/distance-attenuation")
&& glutExtensionSupported("GL_EXT_point_parameters") )
{
glPointParameterfvEXT(GL_DISTANCE_ATTENUATION_EXT,
default_attenuation);
}
glPointSize(1.0);
glDisable(GL_POINT_SMOOTH);
glPointSize(1.0);
glDisable(GL_POINT_SMOOTH);
}
// draw ground lighting
glFogf (GL_FOG_DENSITY, ground_exp2_punch_through);