summaryrefslogtreecommitdiff
path: root/src/mesa/state_tracker/st_atom.c
AgeCommit message (Collapse)Author
2011-01-06st/mesa: do sanity checks on states only in debug buildsMarek Olšák
2010-10-13Drop GLcontext typedef and use struct gl_context insteadKristian Høgsberg
2010-06-28mesa: initial support for ARB_geometry_shader4Zack Rusin
laying down the foundation for everything and implementing most of the stuff. linking, gl_VerticesIn and multidimensional inputs are left.
2010-05-17mesa/st: adapt to interface changesRoland Scheidegger
adapt to blit changes, and also handle a bit more msaa state in theory (incomplete, doesn't handle resolves in any way for now).
2010-03-22st/mesa: Remove unnecessary headers.Vinson Lee
2010-03-12st/mesa: Implement st_api.h.Chia-I Wu
There is currently no user of this new interface. As the inteface can coexist with st_public.h, everthing should work as before. ST_TEXTURE_2D is both defined by st_public.h and st_api.h. Reorder the headers in st/dri to avoid conflicts.
2010-02-19Replace the _mesa_*printf() wrappers with the plain libc versionsKristian Høgsberg
2010-02-16st/dri2: Use event-driven buffer validation.Francisco Jerez
2009-11-26Merge commit 'origin/st-shader-varients'Roland Scheidegger
Conflicts: src/mesa/state_tracker/st_atom_shader.c src/mesa/state_tracker/st_program.c
2009-11-17mesa: fix assorted compiler warningsBrian Paul
2009-11-15mesa/st: refactor vertex and fragment shader translationKeith Whitwell
Translate vertex shaders independently of fragment shaders. Previously tried to make fragment shader semantic indexes always start at zero and exclude holes. This was unnecessary but meant that vertex shader translation had to be adjusted to take this into account. Now use a fixed scheme for labelling special FS input semantics (color, etc), and another fixed scheme for the generics. With this, vertex shaders can be translated independently of the bound fragment shader, assuming mesa has done its own job and ensured that the vertex shader provides at least the inputs the fragment shader is looking for. The state-tracker didn't attempt to do anything about this previously, so it shouldn't be needed now.
2009-04-21st: use the static atoms[] array directlyBrian Paul
We can simplify this now that we no longer have any dynamic atoms.
2009-04-21st: do away with dynamic state atom for const buffersBrian Paul
Just use the new _NEW_PROGRAM_CONSTANTS flag instead.
2009-02-12mesa: consistantly use mesa memory-functions in gallium state trackerBrian Paul
Use _mesa_malloc(), _mesa_free(), etc everywhere, not malloc(), free(), etc. Still using CALLOC_STRUCT() at this point.
2008-07-24mesa: Prefix main includes with dir to avoid conflicts.José Fonseca
Some of the headers in src/mesa/main have pretty common names which easily conflict with third-party code, e.g. config.h
2008-05-07gallium: fix some render to texture bugsBrian Paul
Before, we were sometimes rendering into a stale texture because st_finalize_texture() would discard the old texture and create a new one. Moved st_update_framebuffer atom after texture validation so that we can create a new renderbuffer surface if the texture changes. Also, split texture validation into two parts: finalize_textures and update_textures. Do finalize_textures first to avoid getting into the situtation where we're doing a pipe->surface_copy() mid-way through state validation. Some debug code still in place, but disabled...
2008-03-28gallium: don't call st_flush_bitmap_cache() if the only change is ↵Brian
_NEW_PACKUNPACK state
2008-03-28gallium: implement a glBitmap cacheBrian
The bitmap cache attempts to accumulate a series of glBitmap calls in a buffer to effectively render a whole bunch of bitmaps at once. The cache can be disabled, if needed, by setting UseBitmapCache=GL_FALSE.
2007-12-17gallium: incorporate alpha state into depth_stencil state object.Keith Whitwell
2007-12-11gallium: remove redundant clear_color state.Keith Whitwell
2007-10-31No longer need st_update_tnl atomBrian
2007-10-30added st_update_pixel_transfer atomBrian
2007-09-25Translate mesa vertex/fragment programs to TGSI programs at same time to do ↵Brian
proper linking. Previously, programs were translated independently during validation. The problem is the translation to TGSI format, which packs shader input/outputs into continuous slots, depends on which vertex program is being paired with which fragment shader. Now, we look at the outputs of the vertex program in conjunction with the inputs of the fragment shader to be sure the attributes match up correctly. The new 'linked_program_pair' class keeps track of the associations between vertex and fragment shaders. It's also the place where the TGSI tokens are kept since they're no longer per-program state but per-linkage. Still a few loose ends, like implementing some kind of hash/lookup table for linked_program_pairs.
2007-09-21Make the alpha test state a cso.Zack Rusin
2007-09-18converting the setup state to immutable object and renaming it to rasterizer ↵Zack Rusin
state
2007-09-18Combing depth and stencil objects and making them immutable.Zack Rusin
Converting depth and stencil objects into a single state object (d3d10 like) and making it immutable.
2007-08-25add names to tracked state atoms to improve debugkeithw
2007-08-25checkpoint in constant tracking reworkKeith Whitwell
2007-08-18added tnl state atomBrian
2007-08-07plug in texture/sampler state updateBrian
2007-07-19Trigger tgsi compilation for fragment programs.Keith Whitwell
Not sure the generated program looks correct though...
2007-07-11Implement polygon stipple state tracking, application.Brian
2007-06-26consolidate point/line state into pipe_setup_stateBrian
2007-06-20checkpoint: implement z/depth testingBrian
2007-06-20Initial work for glClear(), clear color state.Brian
2007-06-19hook up point stateBrian
2007-06-19Re-org of surface/framebuffer state.Brian
We should be able to render to any depth/format of X window now.
2007-06-19just use regular malloc(), free(), memcpy()Brian
2007-06-15Added st_update_framebuffer struct/object.Brian
2007-06-14Renamed softpipe directories and files to something less confusing.Keith Whitwell
softpipe/state_tracker --> state_tracker/ softpipe/ --> pipe/ softpipe/generic --> pipe/softpipe/ I don't think pipe is a great name, but I disliked all the others too. Luckily it's fairly easy to rename with git, so this can be revisited later.