aboutsummaryrefslogtreecommitdiffstats
path: root/src/mesa/shader/nvprogram.c
Commit message (Collapse)AuthorAgeFilesLines
* i965: Emit zero initialization for NV VP temporaries as required.Eric Anholt2009-09-241-0/+44
| | | | | | | This is similar to what r300 does inside the driver, but I've added it as a generic option since it seems most hardware will want it. Fixes piglit nv-init-zero-reg.vpfp and nv-init-zero-addr.vpfp.
* mesa: Initialize NV_vertex_program fields for the parameter lists and such.Eric Anholt2009-09-241-0/+28
| | | | This helps let drivers treat NV_vp like ARB_vp.
* mesa: minor code simplification in _mesa_GetVertexAttrib*NV()Brian Paul2009-05-211-10/+19
|
* mesa: signal _NEW_PROGRAM_CONSTANTS instead of _NEW_PROGRAMBrian Paul2009-04-241-1/+1
| | | | | Use _NEW_PROGRAM_CONSTANTS when changing constant/uniform buffer values. Binding a new program/shader sets both _NEW_PROGRAM and _NEW_PROGRAM_CONSTANTS.
* mesa: new _NEW_PROGRAM_CONSTANTS flagBrian Paul2009-04-211-1/+1
| | | | | | | | | | | | | | | This state flag will be used to indicate that vertex/fragment program constants have changed. _NEW_PROGRAM will be used to indicate changes to the vertex/fragment shader itself, or misc related state. _NEW_PROGRAM_CONSTANTS is also set whenever a program parameter that's tracking GL state has changed. For example, if the projection matrix is in the parameter list, calling glFrustum() will cause _NEW_PROGRAM_CONSTANTS to be set. This will let to remove the need for dynamic state atoms in some drivers. For now, we still set _NEW_PROGRAM in all the places we used to. We'll no longer set _NEW_PROGRAM in glUniform() after drivers/etc have been updated.
* mesa: remove some last remnants of GL_MESA_program_debugBrian Paul2009-03-111-6/+3
|
* Make GL_ARB_vertex_buffer_object mandatoryIan Romanick2009-01-281-4/+0
| | | | Signed-off-by: Ian Romanick <[email protected]>
* mesa: prefix a bunch of #include lines with "main/".Brian Paul2008-09-181-6/+6
| | | | | This is another step toward removing a whole bunch of -I flags from the cc commands. Still need to address driver code...
* alias ProgramEnvParameter4xyARB and ProgramParameter4xyNV (bug #12935)Roland Scheidegger2007-11-091-69/+0
| | | | these should be the same functions (as per spec).
* _mesa_ExecuteProgramNV is now a no-opBrian2007-02-221-2/+1
|
* remove unneeded includesBrian2006-12-141-2/+1
|
* Updated includes.Brian2006-12-141-1/+2
|
* Fix for glGetVertexAttribfvNV, bug 8883Brian Paul2006-11-041-3/+18
|
* New _mesa_exec_vertex_state_program() function. Start of some re-org.Brian Paul2006-10-291-5/+2
|
* a step toward moving run-time vertex program state out of GLcontextBrian Paul2006-10-101-3/+4
|
* Added _mesa_lookup_program() and _mesa_lookup_bufferobj() functions to avoidBrian Paul2006-08-231-10/+8
| | | | | | a lot of casting elsewhere. Use _mesa_lookup_texture() in tdfx driver, use _mesa_lookup_bufferobj() in r300 driver.
* Remove extraneous trailing semicolon.Ian Romanick2006-08-151-1/+1
|
* Some structure renaming. Prefix vertex/fragment-related structs withBrian Paul2006-07-201-24/+24
| | | | "gl_" to match other structs.
* Add support for GL_APPLE_vertex_array_object. Several test programsIan Romanick2006-06-121-11/+11
| | | | | | | and demos are also added. Adding basic support to drivers should be as easy as just enabling the extension, though thorough test would also be required.
* check glLoadProgramNV len < 0 (bug 6679)Brian Paul2006-04-201-2/+7
|
* Move stuff common to vertex/fragment_program into the base class, including:Brian Paul2005-11-121-2/+4
| | | | | | Instructions, InputsRead, OutputsWritten, and Parameters. Also, added debug functions: _mesa_print_instruction(), _mesa_print_program_parameters() and revamp _mesa_print_program().
* Unify vertex/fragment program instuctions.Brian Paul2005-11-051-2/+1
| | | | Based on patch by Ian (#4967) but also unify instruction opcodes.
* Port Mesa to build on a P64 platform (e.g., Win64). P64 platformsKarl Schultz2005-05-051-1/+1
| | | | | | | | use 64-bit pointers and 32-bit longs. So, operations like casting pointers to unsigned long and back to pointer won't work. glheader.h now includes files to define uintptr_t, which should instead be used for this sort of operation. It is an integer type that is the same size as a pointer.
* fix LoadProgramNV regression when I had fixed the RefCount bugBrian Paul2004-10-021-5/+5
|
* call ctx->Driver.NewProgram() instead of CALLOC/etc in _mesa_LoadProgramNV. ↵Brian Paul2004-06-201-7/+5
| | | | Fixes problems found with Cg demos.
* Fix up some assorted issues with initialization of vertex program registers.Brian Paul2004-04-211-2/+2
| | | | | Some need to be set per-vertex, other per-primitive. Cleared that up. Only need to init temp/result registers if executing an NV vertex program.
* Moved from src/mesa/mainMichal Krol2004-03-291-0/+871