From: Gareth H. <ga...@va...> - 2000-06-27 14:49:27
|
Complete: * Almost all missing functionality (fog, color masks etc) implemented/verified. Scissors are coming with my current work, but this is the last of it. I played around with the hardware scissors a bit and I think I've worked out a way to use them all the time. The SC_TOP_LEFT and SC_BOTTOM_RIGHT registers need to be saved and restored on X server/DRI client switch, but if this is done there should be no problems. * LOD bias now supported (as much as possible). * Lazy state management, the first step in moving state management into the kernel. Quake3 Fastest scores: original=60 KW=66 GTH=75 latest=78 and getting faster. * Cleaner state upload mechanism, perhaps the second step in moving state into kernel. Context is uploaded as a 12-dword block each time, reducing both computational and register writing overhead. Other state uploaded as needed (tex0, tex1, window etc) in the same way. Context programming can now be ripped out and plugged directly into the kernel module. * General cleanup of texture state management, removal of a lot of redundancy in new state calculations. Texture objects now maintain all of their state, so there is no more prim/sec texture state with the context. In the next couple of hours I'll whip up a small patch that contains the PCI card and fog fixes for XFree86 4.0.1 as I'd like to get this in but the rest of the changes are too significant to make it in before the release deadline. These two things certainly count as bug fixes, whereas the rest of my work is new stuff. I'll be plugging the elt path code in later tonight. It's been done for ages now. Kernel optimizations after that. -- Gareth |