summaryrefslogtreecommitdiffstats
path: root/src/gallium/auxiliary/postprocess
Commit message (Collapse)AuthorAgeFilesLines
* gallium: add start_slot parameter to set_vertex_buffersMarek Olšák2012-10-311-1/+1
| | | | | | | | | | | | | | | | | | | | | This allows updating only a subrange of buffer bindings. set_vertex_buffers(pipe, start_slot, count, NULL) unbinds buffers in that range. Binding NULL resources unbinds buffers too (both buffer and user_buffer must be NULL). The meta ops are adapted to only save, change, and restore the single slot they use. The cso_context can save and restore only one vertex buffer slot. The clients can query which one it is using cso_get_aux_vertex_buffer_slot. It's currently set to 0. (the Draw module breaks if it's set to non-zero) It should decrease the CPU overhead when using a lot of meta ops, but the drivers must be able to treat each vertex buffer slot as a separate state (only r600g does so at the moment). I can imagine this also being useful for optimizing some OpenGL use cases. Reviewed-by: Brian Paul <[email protected]>
* gallium: consolidate CSO sampler and sampler_view functionsBrian Paul2012-08-033-16/+16
| | | | | | | | | | | | | Merge the vertex/fragment versions of the cso_set/save/restore_samplers() functions. Now we pass the shader stage (PIPE_SHADER_x) to the function to indicate vertex/fragment/geometry samplers. For example: cso_single_sampler(cso, PIPE_SHADER_FRAGMENT, unit, sampler); This results in quite a bit of code reduction, fewer CSO functions and support for geometry shaders. Reviewed-by: Marek Olšák <[email protected]>
* st/mesa: implement accelerated stencil blitting using shader stencil exportMarek Olšák2012-07-122-2/+2
| | | | Reviewed-by: Alex Deucher <[email protected]>
* gallium/u_blit: drop not-very-useful wrapper around util_blit_pixels_writemaskMarek Olšák2012-07-122-2/+4
| | | | | | just rename it to util_blit_pixels Reviewed-by: Alex Deucher <[email protected]>
* gallium: change set_constant_buffer to be UBO-friendlyMarek Olšák2012-04-301-2/+2
|
* gallium/postprocess: document serious issue causing undefined behaviorMarek Olšák2012-03-301-0/+4
|
* gallium/postprocess: move declarations before codeBrian Paul2012-02-021-2/+1
| | | | To fix MSVC build.
* gallium/postprocess: Just to be safe, reference all buffers from outsideLauri Kasanen2012-02-021-0/+10
| | | | | | | | | Even though it should be safe to use them for one frame, better be sure. Suggested by Michael Dänzer. NOTE: This is a candidate for the 8.0 stable branch. Signed-off-by: Lauri Kasanen <[email protected]>
* gallium/postprocess: Fix depth logicLauri Kasanen2012-02-023-9/+3
| | | | | | | | | This prevents a possible lapse of the depth buffer - the situation where the app and pp have different depth buffers. NOTE: This is a candidate for the 8.0 stable branch. Signed-off-by: Lauri Kasanen <[email protected]>
* gallium/postprocess: Proper reference counting of pp_jimenezmlaa depth buffer.Michel Dänzer2012-01-241-1/+2
| | | | | | Fixes https://bugs.freedesktop.org/show_bug.cgi?id=40776 NOTE: This is a candidate for the stable branches.
* Squash-merge branch 'gallium-clip-state'Marek Olšák2012-01-101-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/gallium/auxiliary/tgsi/tgsi_strings.c src/mesa/state_tracker/st_atom_clip.c commit d919791f2742e913173d6b335128e7d4c63c0840 Author: Christoph Bumiller <[email protected]> Date: Fri Jan 6 17:59:22 2012 +0100 d3d1x: adapt to new clip state commit cfec82bca3fefcdefafca3f4555285ec1d1ae421 Author: Christoph Bumiller <[email protected]> Date: Fri Jan 6 14:16:51 2012 +0100 gallium/docs: update for clip state changes commit c02bfeb81ad9f62041a2285ea6373bbbd602912a Author: Christoph Bumiller <[email protected]> Date: Fri Jan 6 14:21:43 2012 +0100 tgsi: add TGSI_PROPERTY_PROHIBIT_UCPS commit d4e0a785a6a23ad2f6819fd72e236acb9750028d Author: Brian Paul <[email protected]> Date: Thu Jan 5 08:30:00 2012 -0700 tgsi: consolidate TGSI string arrays in new tgsi_strings.h There was some duplication between the tgsi_dump.c and tgsi_text.c files. Also use some static assertions to help catch errors when adding new TGSI values. v2: put strings in tgsi_strings.c file instead of the .h file. Reviewed-by: Dave Airlie <[email protected]> commit c28584ce0d8c62bd92c8f140729d344f88a0b3cd Author: Christoph Bumiller <[email protected]> Date: Fri Jan 6 12:48:09 2012 +0100 gallium: extend user_clip_plane_enable to apply to clip distances commit f1d5016c07f786229ed057effbe55fbfd160b019 Author: Marek Olšák <[email protected]> Date: Fri Jan 6 02:39:09 2012 +0100 nvfx: adapt to new clip state commit 6f6fa1c26bd19f797c1996731708e3569c9bfe24 Author: Marek Olšák <[email protected]> Date: Fri Jan 6 01:41:39 2012 +0100 st/mesa: fix DrawPixels with GL_DEPTH_CLAMP commit c86ad730aa1c017788ae88a55f54071bf222be12 Author: Christoph Bumiller <[email protected]> Date: Tue Jan 3 23:51:30 2012 +0100 nv50: adapt to new clip state commit 3a8ae6ac243bae5970729dc4057fe02d992543dc Author: Christoph Bumiller <[email protected]> Date: Tue Jan 3 23:32:36 2012 +0100 nvc0: adapt to new clip state commit 6243a8246997f8d2fcc69ab741a2c2dea080ff11 Author: Marek Olšák <[email protected]> Date: Thu Dec 29 01:32:51 2011 +0100 draw: initalize pt.user.planes in draw_init This fixes a crash in glean/fpexceptions. commit e3056524b19b56d473f4faff84ffa0eb41497408 Author: Marek Olšák <[email protected]> Date: Mon Dec 26 06:26:55 2011 +0100 svga: adapt to new clip state commit c5bfa8b37d6d489271df457229081d6bbb51b4b7 Author: Marek Olšák <[email protected]> Date: Sun Dec 25 14:11:51 2011 +0100 r600g: adapt to new clip state commit f11890905362f62627c4a28a8255b76eb7de7df2 Author: Marek Olšák <[email protected]> Date: Sun Dec 25 14:10:26 2011 +0100 r300g: adapt to new clip state commit e37465327c79a01112f15f6278d9accc5bf3103f Author: Marek Olšák <[email protected]> Date: Sun Dec 25 12:39:16 2011 +0100 draw: adapt to new clip state This adds a regression in the LLVM clipping path. Can anybody see anything wrong with the code? It works for every other case, just glean/fpexceptions crashes when doing the "Infinite clip plane test". commit b474d2b18c72d965eefae4e427c269cba5ce6ba2 Author: Marek Olšák <[email protected]> Date: Sun Dec 25 13:14:59 2011 +0100 u_blitter: don't save/set/restore clip state commit 9dd240ea91f523a677af45e8d0adb9e661e28602 Author: Marek Olšák <[email protected]> Date: Sun Dec 25 13:11:56 2011 +0100 gallium: don't cso_save/set/restore clip state The enable bits are in the rasterizer state. commit a4f7031179f5f4ad524b34b394214b984ac950f6 Author: Marek Olšák <[email protected]> Date: Sun Dec 25 12:58:55 2011 +0100 gallium: default depth_clip to 1 depth_clip = !depth_clamp commit fe21147a00ab90e549d63fe12ee4625c9c2ffcc3 Author: Marek Olšák <[email protected]> Date: Mon Dec 26 06:14:19 2011 +0100 trace,util: update state logging to new clip state Also dump the other missing flags. commit 2a3b96e84ac872dcc5bc1de049fe76bb58d64b23 Author: Marek Olšák <[email protected]> Date: Sun Dec 25 10:43:43 2011 +0100 st/mesa: adapt to new clip state commit b7b656a42fca19d7c85267f42649a206a85a2c72 Author: Marek Olšák <[email protected]> Date: Sat Dec 17 15:45:19 2011 +0100 gallium: move state enable bits from clip_state to rasterizer_state
* gallium: interface changes necessary to implement transform feedback (v5)Marek Olšák2011-12-151-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Namely: - EXT_transform_feedback - ARB_transform_feedback2 - ARB_transform_feedback_instanced The old interface was not useful for OpenGL and had to be reworked. This interface was originally designed for OpenGL, but additional changes have been made in order to make st/d3d1x support easier. The most notable change is the stream-out info must be linked with a vertex or geometry shader and cannot be set independently. This is due to limitations of existing hardware (special shader instructions must be used to write into stream-out buffers), and it's also how OpenGL works (stream outputs must be specified prior to linking shaders). Other than that, each stream output buffer has a "view" into it that internally maintains the number of bytes which have been written into it. (one buffer can be bound in several different transform feedback objects in OpenGL, so we must be able to have several views around) The set_stream_output_targets function contains a parameter saying whether new data should be appended or not. Also, the view can optionally be used to provide the vertex count for draw_vbo. Note that the count is supposed to be stored in device memory and the CPU never gets to know its value. OpenGL way | Gallium way ------------------------------------ BeginTF = set_so_targets(append_bitmask = 0) PauseTF = set_so_targets(num_targets = 0) ResumeTF = set_so_targets(append_bitmask = ~0) EndTF = set_so_targets(num_targets = 0) DrawTF = use pipe_draw_info::count_from_stream_output v2: * removed the reset_stream_output_targets function * added a parameter append_bitmask to set_stream_output_targets, each bit specifies whether new data should be appended to each buffer or not. v3: * added PIPE_CAP_STREAM_OUTPUT_PAUSE_RESUME for ARB_tfb2, note that the draw-auto subset is always required (for d3d10), only the pause/resume functionality is limited if the CAP is not advertised v4: * update gallium/docs v5: * compactified struct pipe_stream_output_info, updated dump/trace
* pp: Reorder calloc to avoid memory leak on error path.Vinson Lee2011-11-051-3/+4
| | | | | | Fixes Coverity resource leak defect. Reviewed-by: Brian Paul <[email protected]>
* postprocess: remove const qualifiers on unsigned int parametersBrian Paul2011-11-011-2/+2
| | | | to match the prototype in postprocess.h
* pp: Fix memory leak on error path.Vinson Lee2011-10-251-1/+2
| | | | | | Fixes Coverity resource leak defect. Reviewed-by: José Fonseca <[email protected]>
* gallium: rename ZS stencil type to UINT (v2)Dave Airlie2011-10-111-2/+2
| | | | | | | | | | these are never USCALED, always UINT in reality. taken from some work by Christoph Bumiller v2: fixup formatting of table + tabs Signed-off-by: Dave Airlie <[email protected]>
* postprocess: Portability fixes.José Fonseca2011-09-253-24/+27
|
* gallium: move clear paths from rgba to a pointer to a color union (v2)Dave Airlie2011-09-183-3/+3
| | | | | | | | | | | | | | | This moves the gallium interface for clears from using a pointer to 4 floats to a pointer to a union of float/unsigned/int values. Notes: 1. the value is opaque. 2. only when the value is used should it be interpretered according to the surface format it is going to be used with. 3. float clears on integer buffers and vice-versa are undefined. v2: fixed up vega and graw, dropped hunks that shouldn't have been in patch. Signed-off-by: Dave Airlie <[email protected]>
* pp: initialize the sample maskChristoph Bumiller2011-08-261-0/+2
| | | | | | | | We cannot rely on pipe drivers to default to non-zero. Fixes pp being a no-op on nv50. Reviewed-by: Lauri Kasanen <[email protected]>
* pp/main queue: Add the PP headersLauri Kasanen2011-08-193-0/+215
| | | | | Signed-off-by: Lauri Kasanen <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* pp/main queue: Add pp_program.[ch]Lauri Kasanen2011-08-192-0/+201
| | | | | Signed-off-by: Lauri Kasanen <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* pp/main queue: Add pp_init.cLauri Kasanen2011-08-191-0/+283
| | | | | Signed-off-by: Lauri Kasanen <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* pp/main queue: Add pp_run.cLauri Kasanen2011-08-191-0/+188
| | | | | Signed-off-by: Lauri Kasanen <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* pp: Add Jimenez' MLAALauri Kasanen2011-08-192-0/+646
| | | | | Signed-off-by: Lauri Kasanen <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* pp: Add the MLAA areamapLauri Kasanen2011-08-191-0/+2821
| | | | | | | | The areamap contains precomputed data on different aliasing types. It is necessary for good performance. Signed-off-by: Lauri Kasanen <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* pp: Cel-shade filterLauri Kasanen2011-08-192-0/+117
| | | | | Signed-off-by: Lauri Kasanen <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* pp: Color filtersLauri Kasanen2011-08-192-0/+149
| | | | | Signed-off-by: Lauri Kasanen <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* pp: DocsLauri Kasanen2011-08-191-0/+87
Signed-off-by: Lauri Kasanen <[email protected]> Signed-off-by: Brian Paul <[email protected]>