David Megginson writes: > > Curtis L. Olson writes: > > > We artifically raise the lights a bit to attempt to avoid zbuffer > > fighting. The formula is based on the altitude above ground and the > > distance away ... however, it's rough and imperfect ... > > I'm still working on understanding the code. First, you have > > point_list geod_light_nodes > = calc_elevations( root, light_nodes.get_node_list(), 0.5 ); > > That means that the base elevation for each light is already 0.5m > above the runway. Does FlightGear have ssg do further elevation > adjustments at runtime?
void FGTileEntry::prep_ssg_node( { ........ if ( gnd_lights_transform ) { ...... if ( general.get_glDepthBits() > 16 ) { sgScaleVec3( lift_vec, 10.0 + agl / 100.0 + dist / 10000 ); } else { sgScaleVec3( lift_vec, 10.0 + agl / 20.0 + dist / 5000 ); } ... if ( rwy_lights_transform ) { ... if ( general.get_glDepthBits() > 16 ) { sgScaleVec3( lift_vec, 0.0 + agl / 500.0 + dist / 10000 ); } else { sgScaleVec3( lift_vec, 1.0 + agl / 20.0 + dist / 5000 ); } .... if ( lightmaps_transform ) { .. if ( general.get_glDepthBits() > 16 ) { sgScaleVec3( lift_vec, 0.0 + agl1 / 2000.0 + dist1 / 10000 ); } else { sgScaleVec3( lift_vec, 0.0 + agl1 / 20.0 + dist1 / 5000 ); } ... } HTH Norman _______________________________________________ Flightgear-devel mailing list [EMAIL PROTECTED] http://mail.flightgear.org/mailman/listinfo/flightgear-devel