Andy Ross writes: > Jon S. Berndt wrote: > > Christian Mayer wrote: > > > Get a card with T&L setup (i.e. a GeForce or a Radeon). FlightGear > > > profits heaps from the T&L setup. > > > > How? > > Presumably because most (all? I didn't check) of the geometry is > stored in display lists. These can be stored on-card and eliminate > the need for per-frame vertex transfers across the AGP bus. In modern > hardware bus bandwidth, and not processing power is the primary > limitter of 3D performance. > > It's worth pointing out for Linux (and BSD) folks, though, that the > DRI drivers for the Radeon don't yet support the on-card GPU. All > vertex transformations are still done in the CPU; the graphics > hardware is used for texturing only. Hopefully this will change soon.
My understanding is a bit different. FlightGear doesn't use display lists because as I understand it, even on a GeForce card they really have no benifit. The display lists are actually stored in the driver in main memory rather than on the card so the vertex data actually has to go over the bus anyway. So, it's just as well to resend the data every time. Every point in the flightgear world that gets sent to the card to be drawn (as part of a line or triangle or whatever) needs to be run through a matrix tranformation pipeline to transform it into screen coordinates. For older cards/drivers this math had to be done on the main CPU. The GeForce cards however can do this math on the card in parallel with everything else. Similar thing for lighting. For each point you draw (or triangle vertex with garoud shading) you must calculate the relative light source(s) angle to the point's normal vector and run that through some formulas to get the amount of light illuminating that point. (There are diffuse, specular, ambient, and emissive components to the light, and each of these has an RGB component so the math is non trivial in the general case.) Again in older cards/drivers this math had to be done by the main CPU but the GeForce does it in hardware in parallel with everything else. Because FlightGear stuck with basic opengl calls (and didn't try to optimize or find shortcuts for calculating the transform and lighting math for older less capable systems) we automatically get the advantage of doing this on the graphics card in hardware for cards that support it (such as the GeForce.) That's how I understand it anyway. Perhaps someone else can clarify this further if my understanding is flawed. Regards, Curt. -- Curtis Olson IVLab / HumanFIRST Program FlightGear Project Twin Cities [EMAIL PROTECTED] [EMAIL PROTECTED] Minnesota http://www.menet.umn.edu/~curt http://www.flightgear.org _______________________________________________ Flightgear-devel mailing list [EMAIL PROTECTED] http://mail.flightgear.org/mailman/listinfo/flightgear-devel
