Age | Commit message (Collapse) | Author |
|
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.
|
|
|
|
|
|
(cherry picked from commit 7ecac78ab53016ae3db3dd601b187cb050037463)
|
|
(cherry picked from commit 27049189d6221fefe43eb55846efaa51742dcdf4)
|
|
Also, check the FEATURE flags in many places.
(cherry picked from commit 40d1a40f294f1ed2dacfad6f5498322fc08cc2d1)
Conflicts:
src/mesa/main/config.h
src/mesa/main/context.c
src/mesa/main/texobj.c
src/mesa/main/texstate.c
src/mesa/main/texstore.c
|
|
Also unify caching of fragment and vertex programs in shader/prog_cache.c`
Brought across from gallium-0.2
|
|
Caught by texturing/gen-teximage test in piglit.
|
|
The old behaviour depended on which texture images the fragment program
reads from, which seems to contradict the shader specifications.
Note: Piglit's general/texgen test checks for this problem.
|
|
GL_REPLACE_EXT comes from the ancient GL_EXT_texture extension. Found an old demo that
actually uses it.
The values of the GL_REPLACE and GL_REPLACE_EXT tokens is different, unfortunately.
|
|
group's objects (Shane Blackett)
|
|
Simplification in colortab.c too.
|
|
|
|
Use new _mesa_reference_texobj() function for referencing/unreferencing
textures. Add new assertions/tests to try to detect invalid usage of
deleted textures.
|
|
state validation/update.
Note that we're still temporarily skipping the test for an active fragment
program. Need to fix shadow2D() ...
|
|
|
|
|
|
|
|
|
|
The ARB_fp (and other assembly-level fragment program specs) say that the
depth comparison function is always GL_NONE in fragment program mode.
|
|
Shadow sampling from texture arrays is still not implemented. Everything
else should be there, though.
|
|
Most switch-statements that have cases for these enums already use code like:
const GLuint idx = pname - GL_SOURCE0_RGB;
... texUnit->Combine.SourceRGB[idx] ...
This patch just brings the remaining bits up to speed.
|
|
This is a bit of a hack for now because the tnl module is using the swrast
module to fetch texels. The texture fetch/filter code should probably be
moved into the main/ module since it doesn't really depend upon other
swrast code.
|
|
|
|
|
|
textures nowadays
|
|
|
|
|
|
|
|
New datatypes, constants, variables.
|
|
|
|
|
|
Initialize some values correctly.
|
|
|
|
in various places.
Note that ctx->Texture.CurrentUnit needs to be tested against Coord/Image
limits when referenced, not just in glActiveTexture().
|
|
more logical order.
Remove a mess of stray ^M chars.
Fix a bug when checking if the texture object's format is GL_COLOR_INDEX
or GL_DEPTH_COMPONENT. This fixes a segfault when GL_TEXTURE_BASE_LEVEL!=0.
|
|
- generate error on NULL pointers in glShaderSourceARB;
- reinstall program object, if current, in glLinkProgramARB;
- vertex and fragment shaders are optional in program object;
- floor asm was wrongly computed for x86 back-end;
- allow for (void) idiom in function prototypes;
- all fixed-state uniforms are updated;
- local variable initializers are working;
- implement texture* and shadow* functions for vertex processor;
- generate error if too many arguments in general constructor;
- trim unused data in general constructor;
- struct r-value field select was badly relocated;
Changes:
- add derived state gl_fog_attrib::_Scale;
- add derived state gl_light::_CosCutoffNeg;
|
|
- add texture sampling support;
- fix assembly codegen bugs;
|
|
not the actual contents of texture objects. This makes glXCopyContext()
work properly.
|
|
|
|
|
|
done with fragment programs nowadays.
|
|
Instructions, InputsRead, OutputsWritten, and Parameters.
Also, added debug functions: _mesa_print_instruction(),
_mesa_print_program_parameters() and revamp _mesa_print_program().
|
|
Use COPY_4FV() where possible.
Added some comments, clean-ups.
|
|
|
|
_BaseFormat to be consistant with gl_renderbuffer.
|
|
|
|
glReadPixels done, glDrawPixels mostly done.
|
|
|
|
with GLboolean in a few places.
|