summaryrefslogtreecommitdiff
path: root/src/mesa/state_tracker/st_cb_bitmap.c
AgeCommit message (Collapse)Author
2009-03-13gallium: consolidate bypass_vs and bypass_clipping flagsKeith Whitwell
The draw module provides a similar interface to the driver which is retained as various bits of hardware may be able to take on incremental parts of the vertex pipeline. However, there's no need to advertise all this complexity to the state tracker. There are basically two modes now - normal and passthrough/screen-coords.
2009-03-13gallium: no need to keep a copy of shader tokens in state trackerKeith Whitwell
Any driver who needs a copy of the shader tokens must organize to do so itself. This has been the case for a long time, but there was still defensive code in the state tracker, which is now removed. Any bugs resulting from this need to be fixed in the offending driver...
2009-03-09st: also check for a8 texture support in bitmap codeKeith Whitwell
2009-03-04mesa: Clear cache->trans after destroying the transfer.José Fonseca
2009-03-04gallium: Unify reference counting.Michel Dänzer
The core reference counting code is centralized in p_refcnt.h. This has some consequences related to struct pipe_buffer: * The screen member of struct pipe_buffer must be initialized, or pipe_buffer_reference() will crash trying to destroy a buffer with reference count 0. u_simple_screen takes care of this, but I may have missed some of the drivers not using it. * Except for rare exceptions deep in winsys code, buffers must always be allocated via pipe_buffer_create() or via screen->*buffer_create() rather than via winsys->*buffer_create().
2009-02-24mesa/st: support l8 as well as i8 in bitmap codeKeith Whitwell
Also don't send the partial program fragment down to hardware -- the program will never be used in that form.
2009-02-24gallium: Add pipe_buffer_write/read inlines.José Fonseca
Saves code, and will simplify future interface changes.
2009-02-19mesa: Free the util shaders with the gallium's FREE.José Fonseca
2009-02-16Merge branch 'master' into gallium-texture-transferKeith Whitwell
Conflicts: src/mesa/state_tracker/st_cb_accum.c src/mesa/state_tracker/st_cb_drawpixels.c
2009-02-12mesa: use new ST_CALLOC_STRUCT() macro in gallium state trackerBrian Paul
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.
2009-02-05gallium: No longer allow CPU mapping surfaces directly.Michel Dänzer
Instead, a new pipe_transfer object has to be created and mapped for transferring data between the CPU and a texture. This gives the driver more flexibility for textures in address spaces that aren't CPU accessible. This is a first pass; softpipe/xlib builds and runs glxgears, but it only shows a black window. Looks like something's off related to the Z buffer, so the depth test always fails.
2008-12-15Merge commit 'origin/gallium-0.1' into gallium-0.2Alan Hourihane
Conflicts: src/gallium/winsys/gdi/SConscript
2008-12-12gallium: avoid mapping same vertex buffer in subsequent framesKeith Whitwell
Quite a few util modules were maintaining a single vertex buffer over multiple frames, and potentially reusing it in subsequent frames. Unfortunately that would force us into syncrhonous rendering as the buffer manager would be forced to wait for the previous rendering to complete prior to allowing the map. This resolves that issue, but requires the state tracker to issue a few new flush() calls at the end of each frame.
2008-11-28Merge commit 'origin/gallium-0.1' into gallium-0.2Alan Hourihane
Conflicts: src/gallium/auxiliary/tgsi/tgsi_sse2.c
2008-11-26gallium: fix glBitmap color bugBrian Paul
By time we get around to rendering the cached bitmap, the current color may have changed. Need to make sure we load the constant slot with the cached color.
2008-11-03softpipe: Don't call pipe_buffer_destroy directly.José Fonseca
Use pipe_buffer_reference instead.
2008-09-03gallium: Have pipe_buffer_* receive a pipe_screen instead of a pipe_context.José Fonseca
We want to use the pipe_buffer_* inlines everywhere, but a pipe context is not always available nor is it needed.
2008-08-24gallium: refactor/replace p_util.h with util/u_memory.h and util/u_math.hBrian Paul
Also, rename p_tile.[ch] to u_tile.[ch]
2008-07-19gallium: Finer grained is_format_supported.José Fonseca
2008-07-03gallium: fix surface memleak in bitmap codeBrian Paul
Found w/ tunnel2.c demo.
2008-06-27gallium: Drop pipe_texture->cpp and pipe_surface->cpp.José Fonseca
The chars-per-pixel concept falls apart with compressed and yuv images, where more than one pixel are coded in a single data block.
2008-06-24mesa: More signed/unsigned float/integer fixes.José Fonseca
2008-06-17gallium: need to flush bitmap cache when raster color changesBrian Paul
2008-05-31mesa: Apply MSVC portability fixes from Alan Hourihane.José Fonseca
2008-05-27gallium: Always unreference bitmap cache texture before resetting the cache.Michel Dänzer
Fixes assertion failure with tunnel2 demo.
2008-05-20Merge branch 'gallium-0.1' into gallium-tex-surfacesBrian Paul
2008-05-20gallium: fix shader mem leakBrian Paul
2008-05-19gallium: remove dead codeBrian Paul
2008-05-19gallium: remove dead codeBrian Paul
2008-05-16gallium: fix glBitmap surface memleak in context tear-downBrian Paul
2008-05-08gallium: remove dead codeBrian Paul
2008-05-08gallium: no-op st_Bitmap() if width or height is zeroBrian Paul
2008-05-02gallium: Add texture usage flags, special-case allocation of display targetsKeith Whitwell
For many envirionments it's necessary to allocate display targets in a window-system friendly manner. Add facilities so that a driver can tell if a texture is likely to be used to generate a display surface and if use special allocation paths if necessary. Hook up softpipe to call into the winsys->surface_alloc_storage() routine in this case, though we probably want to change that interface slightly also.
2008-05-01gallium: tex surface checkpointKeith Whitwell
2008-04-30gallium: use the newer PIPE_FORMAT_x_UNORM format namesBrian Paul
2008-04-30gallium: use new buffer wrapper functions in p_inlines.hBrian Paul
This allows us to remove most of the direct references to winsys in the state tracker.
2008-04-30gallium: consolidate the bitmap->texel conversion codeBrian Paul
2008-04-30gallium: create a new texture each time we init/flush the bitmap cacheBrian Paul
2008-04-30gallium: simplify texture format selectionBrian Paul
2008-04-29gallium: flush pipe before updating bitmap textureBrian Paul
Fixes duplicated text bug in progs/tests/texwrap.c
2008-04-25gallium: remove unneeded st->bitmap_texcoord_biasBrian Paul
2008-04-24gallium: disable the bitmap/texcoord biasBrian Paul
Doesn't seem to be needed after fixing the float->int conversion problem.
2008-04-24gallium: use cso_destroy_vertex/fragment_shader() functionsBrian Paul
Also, rearrange the st_destroy_context() code a bit to prevent some invalid/NULL ptr derefs during tear-down.
2008-04-22gallium: fix some bitmap frag shader issuesBrian Paul
If texturing happens to be enabled when glBitmap() is called, need to be careful about choosing a sampler unit, etc.
2008-04-22gallium: How about restoring shaders instead of saving them again...Michel Dänzer
2008-04-21use cso fs/vs handle functionsKeith Whitwell
2008-04-21gallium: Use CSO cache for shaders.Michel Dänzer
2008-04-07gallium: check ctx->DrawBuffer before flushing bitmap cache.Brian Paul
During context unbind, we may not have a draw buffer. This fixes demos/tunnel2.c
2008-04-04gallium: make sure to set the SamplersUsed field for bitmap/drawpixels shadersBrian Paul
Also, make sure that field is copied/updated in the program clone and combine functions. Without this we weren't getting SAMP declarations in the TGSI shaders.