summaryrefslogtreecommitdiff
path: root/src/mesa/main/ffvertex_prog.c
AgeCommit message (Collapse)Author
2009-09-02mesa: replace 8 with NUM_UNITSBrian Paul
2009-08-18mesa: when emitting vertex program fog, set yzw=0,0,1Brian Paul
Fixes piglit fp-fog failure with gallium.
2009-06-30mesa: remove whitespaceKeith Whitwell
2009-06-30mesa: remove dead constant pointsize code from ffvertex_prog.cKeith Whitwell
2009-06-30mesa: remove dead vertex fog code from ffvertex_prog.cKeith Whitwell
2009-06-30mesa: fix material inputs in ffvertex_prog.cKeith Whitwell
Varying material inputs were not being picked up from the same slots where the VBO code is currently placing them (GENERIC0 and above). Most often they were just being ignored.
2009-05-08mesa: more complete fix for transform_invarient glitchesKeith Whitwell
Add a new flag mvp_with_dp4 in the context, and use that to switch both ffvertex.c and programopt.c vertex transformation code to either DP4 or MUL/MAD implementations.
2009-05-08mesa/main: set PREFER_DP4 to match position_invarient codeKeith Whitwell
This is a quick fix for z fighting in quake4 caused by the mismatch between vertex transformation here and in the position_invarient code. Full fix would be to make this driver-tunable and adjust both position_invarient and ffvertex_prog.c code to respect driver preferences.
2009-04-14mesa: merge the prog_src_register::NegateBase and NegateAbs fieldsBrian Paul
There's really no need for two negation fields. This came from the GL_NV_fragment_program extension. The new, unified Negate bitfield applies after the absolute value step.
2009-03-31mesa: fix bug in GPU codegen for fixed-function two-sided lightingBrian Paul
The 'dots' register wasn't getting properly un-negated and un-swizzled after emitting the code for back-face lighting. So, if more than one light source was enabled, the specular exponent for the next light source was wrong. During execution we were evaluating pow(x, y) where y was negative instead of positive. This led to the outcome being zero or NaN. This fixes the occasional black triangles seen in isosurf when hacked to enable two-sided lighting.
2009-03-31mesa: minor reformatting, whitespace changesBrian Paul
2009-03-07mesa: remove GL_MESA_program_debug extensionBrian Paul
This was never fully fleshed out and hasn't been used.
2009-02-21mesa: re-org texgen stateBrian Paul
New gl_texgen struct allows quite a bit of code reduction.
2009-01-02Merge commit 'origin/master' into gallium-0.2Brian Paul
Conflicts: src/mesa/main/ffvertex_prog.c src/mesa/main/texenvprogram.c
2009-01-01mesa: comments, whitespace changesBrian Paul
2008-12-31mesa: increase max texture image units and GLSL samplers to 16Brian Paul
The max texture coord units is still 8. All the fixed-function paths are still limited to 8 too. But GLSL shaders can use more samplers now. Note that some texcoord-related data structures are declared to be 16 elements in size rather than 8. This just simplifies the code in a few places; the extra elements aren't accessible to the user. These changes haven't been extensively tested yet, but sanity checking has been done. It should be possible to increase the max image units/samplers to 32 without doing anything special. Beyond that we'll need longer bitfields in a few places.
2008-11-11Merge commit 'origin/master' into gallium-0.2Brian Paul
Conflicts: src/mesa/shader/prog_execute.c src/mesa/shader/slang/library/slang_vertex_builtin_gc.h
2008-11-11mesa: restore the negate flag of dots in build_lighting.Xiang, Haihao
Dots is re-used if more than one light is enabled. Previously the negate flag of dots may affect next light.
2008-11-08mesa: use NRM3 in emit_normalize_vec3() when drivers are readyBrian
2008-11-07Merge commit 'origin/master' into gallium-0.2Brian Paul
2008-11-07mesa: use _bfc0 instead of _col0 when building back face lighting.Xiang, Haihao
2008-10-15Merge commit 'origin/gallium-0.1' into gallium-0.2Keith Whitwell
Conflicts: src/mesa/main/context.c
2008-10-14mesa: modify fixed function vertex programs not to reference constant attributesKeith Whitwell
2008-09-29mesa: drop calloc from _mesa_get_fixed_func_vertex_programShunichi Fuji
Signed-off-by: Shunichi Fuji <palglowr@gmail.com>
2008-09-21mesa: move fixed function vertex program builder from tnl to core mesaKeith Whitwell
Also unify caching of fragment and vertex programs in shader/prog_cache.c` Brought across from gallium-0.2
2008-09-04mesa: Silence compiler warnings on Windows.Michal Krol
2008-08-28mesa: remove debug codeBrian Paul
2008-08-28mesa: dynamically grow the fixed function vertex program as neededBrian Paul
Don't use a fixed-size array. Saves memory in most cases and avoids potential overflow for long programs.
2008-08-28mesa: bump MAX_INSN to 300Brian Paul
2008-06-28mesa: check FEATURE_point_size_arrayBrian Paul
2008-06-25mesa: point size arraysBrian Paul
2008-06-12mesa: restore and fix Keith's "further degenerate the special case lit ↵Brian Paul
substitute" There was a bug in emit_degenerate_lit() that caused the SLT to produce unpredictable results in lit.z Plus, added a bunch of new comments.
2008-06-11Revert "mesa: further degenerate the special case lit substitute"Brian Paul
This reverts commit e841b92d9c8bf48085b4996df828ae745977f931. This fixes two specular lighting conform failures.
2008-06-06mesa: turn off ffvertex prog debugKeith Whitwell
2008-05-27ffvertex: emit full LIT when attenuating (needs the 1 in X position)Keith Whitwell
2008-05-27ffvertex: don't compute whole eye vector if only eye.z is requiredKeith Whitwell
2008-05-24Revert "mesa: save a temp on normalizes"Keith Whitwell
This reverts commit feceb43948f76cc4d4c8ecbb86b1b1f438c6daee.
2008-05-24mesa: pre-swizzle normal scale state valueKeith Whitwell
2008-05-23mesa: save a temp on normalizesKeith Whitwell
2008-05-23mesa: further degenerate the special case lit substituteKeith Whitwell
2008-05-23mesa: don't emit LIT instruction when mat shininess known to be zeroKeith Whitwell
Use a faster path in that case & make gears go faster.
2008-05-23mesa: do object-space lighting in ffvertex_prog.cKeith Whitwell
Start pulling over some of the optimizations from the fixed function paths.
2008-05-06mesa: comments, whitespaceBrian
2008-03-14mesa: clamp point size in vertex program when computing attenuated sizeBrian Paul
2008-01-18use PROGRAM_CONSTANT instead of PROGRAM_STATE_VAR when generating ↵Brian
immediates/literals
2008-01-01fix mem leak (free key)Brian
2007-10-31Lift fixed function vertex program generation up from tnl module.Brian