RequiredFunctionality

<!> Note: This page is not actively updated anymore, and thus is not really representative of what has been done and what is remaining. See the TODO-list instead, which is up-to-date.


nouveau : required functionality

Here is the feature matrix for the functionality we need :

Description

NV03

NV04

NV10

NV20

NV30

NV40

G80

Vertex format

How to submit vertices, and what's the data format. How to submit vertex attributes, like colors, texture coordinates...

TODO

DONE

DONE

DONE

DONE

DONE

WIP

Texturing

How to use textures on primitives, how to specify the texture format, offset, size..

TODO

DONE

WIP

TODO

WIP

WIP

WIP

Lighting

How to use OpenGL lights.

N/A

N/A

WIP

WIP

WIP

N/A

N/A

Buffer clears

How to clear front/back/depth buffers. Explore the hierarchical clearing techniques available on higher-end cards. Figure out what is faster : using a 2D primitive, using 3D primitives, or a special clear command...

TODO

TODO

WIP

TODO

TODO

TODO

DONE

Blending modes

How to use the different glBlendFunc() modes. Also should document glBlendFuncSeparate if available

TODO

DONE

DONE

DONE

DONE

DONE

DONE

Screen Clipping

How to use the screen-space clipping functionality.

TODO

TODO

WIP

WIP

WIP

TODO

WIP

Object Clipping

How to use the object-space clipping functionality.

N/A

N/A

DONE

WIP

WIP

TODO

WIP

DMA

How to make use of the cards DMA functionality. In particular, how to upload textures, and how to do back->front blits. Some information about that can be gathered from the EXA patch, and from the nv DDX.

TODO

DONE

DONE

DONE

DONE

DONE

DONE

TCL

How to make use of the card's TCL engine, how to load a transformation matrix...

N/A

N/A

DONE

DONE

DONE

N/A

N/A

Vertex shaders

How to specify a vertex shader. What is the program format, what is the available instruction set, how to enable vertex programs...

N/A

N/A

N/A

TODO

TODO

DONE

WIP

Fragment shaders

How to specify a fragment shader. What is the program format, what is the available instruction set, how to enable fragment programs...

N/A

N/A

N/A

TODO

TODO

DONE

WIP

More informations on Object types present on each chip.