From: Vladimir D. <vo...@mi...> - 2005-01-22 04:19:09
|
Just an update on what is going on with R300 driver along with some TODOs in case anyone would have a bit of spare time this weekend and wants to play with R300 (or later) cards: * coordinates upload and allocation of input registers (to vertex processor) work. This means that whatever the configuration of TNL pipeline all the data that needs to be uploaded to the chip will be uploaded (regardless of current vertex and pixel shader status) TODO: convert r300_render.c from uploading vertices via command buffer to using vertex buffer in video memory, which should speed things up considerably. * blending and stencil processing code is in place, with one caveat: we don't know how to enable stencil buffer. There should be a bit in some register that does this. TODO: find out the stencil enable bit (Possibly in one of ZS registers ?) * texture processing and drawing works, modulo BIG TODO. * BIG TODO: write pixel and vertex shader generator code. This code would need to create vertex and pixel shaders based on the current state of GL context. It might be collection of general shaders for different configuration (Gourad versus flat versus multitexturing, etc) or it could be a compiler that joins together pieces of code. What the driver does now is choose between two sets of shaders: flat color if no textures are used and simple single texture shader without alpha blending if textures are used. * the driver is stable with most programs I tried it with, modulo the fact that it hangs when quake starts a game or when tuxracer starts a race. best Vladimir Dergachev |