summaryrefslogtreecommitdiffstats
path: root/src/gallium/docs/source/cso
Commit message (Collapse)AuthorAgeFilesLines
* gallium: add initial support for conservative rasterizationRhys Perry2018-04-301-0/+23
| | | | | | Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
* gallium/docs: document alpha_to_coverage and alpha_to_one blend stateBrian Paul2016-09-161-0/+12
| | | | | | | | The gallium interface defines these like DX10. Note that OpenGL ignores these options if MSAA is disabled or the dest buffer doesn't support MSAA. Reviewed-by: Roland Scheidegger <[email protected]>
* gallium: Add a cap for offset_units_unscaledAxel Davy2016-06-251-0/+6
| | | | | | | | | | | | | | D3D9 has a different behaviour for depth bias. For OGL/D3D1X, the depth bias unit is the minimal resolvable value for the depth buffer, which depends on the format (and has different behaviour for float depth buffers). For D3D9, the depth bias unit is 1.0f. Signed-off-by: Axel Davy <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
* gallium/docs: fix incorrect/missing referencesIlia Mirkin2014-04-011-1/+1
| | | | | Signed-off-by: Ilia Mirkin <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* gallium: add bits for clipping points as tris (d3d-style)Roland Scheidegger2014-01-171-4/+11
| | | | | | | | | | | | | | | | | | | | | | OpenGL does whole-point clipping, that is a large point is either fully clipped or fully unclipped (the latter means it may extend beyond the viewport as long as the center is inside the viewport). d3d9 (d3d10 has no large points) however requires points to be clipped after they are expanded to a rectangle. (Note some IHVs are known to ignore GL rules at least with some hw/drivers.) Hence add a rasterizer bit indicating which way points should be clipped (some drivers probably will always ignore this), and add the draw interaction this requires. Drivers wanting to support this and using draw must support large points on their own as draw doesn't implement vp clipping on the expanded points (it potentially could but the complexity doesn't seem warranted), and the driver needs to do viewport scissoring on such points. Conflicts: src/gallium/drivers/llvmpipe/lp_context.c src/gallium/drivers/llvmpipe/lp_state_derived.c Reviewed-by: Jose Fonseca <[email protected]>
* gallium: Replace gl_rasterization_rules with lower_left_origin and ↵José Fonseca2013-04-231-3/+70
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | half_pixel_center. Squashed commit of the following: commit 04c5fa2cbb8e89d6f2fa5a75af1cca03b1f6b852 Author: José Fonseca <[email protected]> Date: Tue Apr 23 17:37:18 2013 +0100 gallium: s/lower_left_origin/bottom_edge_rule/ commit 4dff4f64fa83b9737def136fffd161d55e4f1722 Author: José Fonseca <[email protected]> Date: Tue Apr 23 17:35:04 2013 +0100 gallium: Move diagram to docs. commit 442a63012c8c3c3797f45e03f2ca20ad5f399832 Author: James Benton <[email protected]> Date: Fri May 11 17:50:55 2012 +0100 gallium: Replace gl_rasterization_rules with lower_left_origin and half_pixel_center. This change is necessary to achieve correct results when using OpenGL FBOs. Reviewed-by: Marek Olšák <[email protected]>
* gallium: Add a new clip_halfz rasterizer state.José Fonseca2013-04-221-0/+4
| | | | | | gl_rasterization_rules lumps too many different flags. Reviewed-by: Brian Paul <[email protected]>
* st/mesa: optionally apply texture swizzle to border color v2Christoph Bumiller2013-04-181-2/+4
| | | | | | | | | | | | This is the only sane solution for nv50 and nvc0 (really, trust me), but since on other hardware the border colour is tightly coupled with texture state they'd have to undo the swizzle, so I've added a cap. The dependency of update_sampler on the texture updates was introduced to avoid doing the apply_depthmode to the swizzle twice. v2: Moved swizzling helper to u_format.c, extended the CAP to provide more accurate information.
* gallium: add TGSI_SEMANTIC_TEXCOORD,PCOORD v3Christoph Bumiller2013-03-201-0/+5
| | | | | | | | | | | | | | | This makes it possible to identify gl_TexCoord and gl_PointCoord for drivers where sprite coordinate replacement is restricted. The new PIPE_CAP_TGSI_TEXCOORD decides whether these varyings should be hidden behind the GENERIC semantic or not. With this patch only nvc0 and nv30 will request that they be used. v2: introduce a CAP so other drivers don't have to bother with the new semantic v3: adapt to introduction gl_varying_slot enum
* gallium/docs: beef up the docs related to color clampingBrian Paul2012-05-251-0/+9
| | | | Reviewed-by: Marek Olšák <[email protected]>
* gallium: document dual source blending restrictions on galliumDave Airlie2012-04-131-1/+5
| | | | | | As per Brian's suggestion, document the restrictions on dual src blending. Signed-off-by: Dave Airlie <[email protected]>
* gallium: add PIPE_CAP_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTIONChristoph Bumiller2012-02-091-3/+4
| | | | | | | Just let the hardware do it if it can and avoid drivers having to check for the special case on each draw call. v2: update the draw module
* Squash-merge branch 'gallium-clip-state'Marek Olšák2012-01-101-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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: add polygon offset clamp stateChristoph Bumiller2011-09-281-0/+2
| | | | This is required for D3D1x and supported by hardware.
* gallium: move border color to be a color unionDave Airlie2011-09-271-2/+3
| | | | | | | | | | EXT_texture_integer also specifies border color should be a color union, the values are used according to the texture sampler format. (update docs) Signed-off-by: Dave Airlie <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* gallium: implement seamless cubemap extensionsMarek Olšák2011-05-061-0/+4
| | | | Reviewed-by: Brian Paul <[email protected]>
* gallium: implement clamping controls (ARB_color_buffer_float)Luca Barbieri2011-03-291-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | BTW this changes the gallium interface. Some rather cosmetic changes by Marek. Squashed commit of the following: commit 513b37d484f0318311e84bb86ed4c93cdff71f13 Author: Luca Barbieri <[email protected]> Date: Thu Aug 26 18:17:54 2010 +0200 mesa/st: respect fragment clamping in st_DrawPixels commit 546a31e42cad459d7a7a10ebf77fc5ffcf89e9b8 Author: Luca Barbieri <[email protected]> Date: Thu Aug 26 18:17:28 2010 +0200 mesa/st: support fragment and vertex color clamping commit c406514a1fbee6891da4cf9ac3eebe4e4407ec13 Author: Luca Barbieri <[email protected]> Date: Tue Aug 24 21:56:37 2010 +0200 mesa/st: expose ARB_color_buffer_float if unclamping is supported commit d0c5ea11b6f75f3da2f4ca989115f150ebc7cf8d Author: Luca Barbieri <[email protected]> Date: Thu Aug 26 17:53:41 2010 +0200 mesa/st: use unclamped colors This assumes that Gallium is to be interpreted as given drivers the responsibility to clamp these colors if necessary. commit aef5c3c6be6edd076e955e37c80905bc447f8a82 Author: Luca Barbieri <[email protected]> Date: Thu Aug 26 18:12:34 2010 +0200 mesa, mesa/st: handle read color clamping properly We set IMAGE_CLAMP_BIT in the caller based on _ClampReadColor, where the operation mandates it. (see the removed XXX comment. -Marek) TODO: did I get the set of operations mandating it right? commit 76bdfcfe3ff4145a1818e6cb6e227b730a5f12d8 Author: Luca Barbieri <[email protected]> Date: Thu Aug 26 18:18:25 2010 +0200 gallium: add color clamping to the interface
* gallium: better docs for pipe_rasterizer_state::sprite_coord_enableBrian Paul2010-09-171-5/+13
|
* docs: clarify point sprite discussionKeith Whitwell2010-08-051-16/+23
| | | | Plagiarizes email explanation from Roland.
* gallium/docs: Vertex data formats.Corbin Simpson2010-06-241-3/+38
| | | | | | I'm not sure if I really got it right. This seems like one of those "Duh, of course it works that way" things, but I'd like the documentation to be readable by people not acquainted with OGL/D3D.
* gallium/docs: Lops override the rest of the blending state when enabled.Corbin Simpson2010-06-241-2/+4
|
* gallium/docs: Add lop table.Corbin Simpson2010-06-241-0/+26
| | | | Was feeling kind of weird without it.
* gallium/docs: Slight clarification and formatting for Blend.Corbin Simpson2010-06-241-7/+32
|
* docs: update rasterizer for ccw changesKeith Whitwell2010-05-211-55/+80
| | | | Also rearrange some of the fields into point/line/polygon categories.
* gallium/docs: Dithering might not actually do anything.Corbin Simpson2010-04-021-1/+1
|
* gallium/docs: minor fixesRoland Scheidegger2010-03-291-2/+2
|
* gallium/docs: Cleanup and clarify point ras info.Corbin Simpson2010-03-221-32/+44
| | | | ...This state's interdependent? Really? Needs moar cleanup.
* gallium/docs: Fix a couple ReST errors.Corbin Simpson2010-03-191-1/+1
|
* Merge branch 'gallium-vertexelementcso'Roland Scheidegger2010-03-091-0/+24
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/gallium/auxiliary/cso_cache/cso_context.c src/gallium/auxiliary/util/u_blit.c src/gallium/auxiliary/util/u_gen_mipmap.c src/gallium/drivers/i915/i915_context.h src/gallium/drivers/i965/brw_draw_upload.c src/gallium/drivers/r300/r300_blit.c src/gallium/drivers/r300/r300_context.h src/gallium/drivers/r300/r300_render.c src/gallium/drivers/r300/r300_state_derived.c src/mesa/state_tracker/st_cb_bitmap.c src/mesa/state_tracker/st_cb_clear.c
| * gallium/docs: document new vertex element cso interfaceRoland Scheidegger2010-03-011-0/+24
| |
* | gallium/docs: document additional wrap mode restrictionsBrian Paul2010-03-051-0/+3
| |
* | gallium/docs: updated/improve sampler state documentationBrian Paul2010-03-051-21/+77
| |
* | gallium: Remove bypass_vs_clip_and_viewport from rasteriser state.Michal Krol2010-02-221-12/+0
|/ | | | Needs testing.
* gallium: make max_anisotropy a unsigned bitfield memberRoland Scheidegger2010-02-121-1/+3
| | | | | | | saves us a dword in sampler state, hw can't do non-integer aniso degree anyway. To allow aniso 1x (which seems of dubious value but some hardware (radeons) have such a mode, and even d3d allows specifiying it) redefine anisotropic filtering as disabled only if max_anistropy is 0.
* docs: fix up documentation for stencil ref value changesRoland Scheidegger2010-02-091-6/+9
| | | | Also fix and clarify depth/stencil/alpha documentation a bit.
* Merge branch 'gallium-nopointsizeminmax'Roland Scheidegger2010-02-091-11/+21
|\ | | | | | | | | | | | | Conflicts: src/gallium/drivers/nv10/nv10_state.c src/gallium/drivers/nv20/nv20_state.c src/gallium/drivers/nv50/nv50_program.c
| * gallium: add point_quad_rasterization bit to rasterizer stateRoland Scheidegger2010-02-041-2/+12
| | | | | | | | | | This determines if points should be rasterized according to GL point rules or as normal quads (GL point sprites / d3d points / d3d point sprites).
| * docs: fix point sprite documentationRoland Scheidegger2010-02-031-9/+10
| |
| * gallium: clean up point sprite rasterizer stateRoland Scheidegger2010-02-031-2/+5
| | | | | | | | | | | | | | | | | | | | Don't need sprite coord origin per coord. Also, don't need separate sprite enable bit - if all coords have it diabled, then there are no point sprites (technically, there's a distinction in pre-GL3, but it only differs in having more leniency in clamping to max size, something the state tracker would need to handle and the hardware won't bother anyway). Also, use packed field for the per-coord enables. All in all, should save 3 dwords in rasterizer state (from 10 down to 7).
| * gallium: remove point_size_min and point_size_max from rasterizer stateRoland Scheidegger2010-01-121-4/+0
| | | | | | | | | | | | | | The state tracker is responsible for clamping to any graphics API enforced size min/max limits for both the static point_size setting as well as per vertex point size (in the vertex shader). Note that mesa state tracker didn't actually use these values.
* | gallium: Remove prefilter member from pipe_sampler_state struct.Michal Krol2010-02-091-2/+0
| |
* | gallium-docs: Minor grammar, need to talk about dual-source blends.Corbin Simpson2010-01-281-2/+10
| |
* | docs: enhance blend documentationRoland Scheidegger2010-01-211-3/+36
| |
* | docs: clean up sampler descriptionRoland Scheidegger2010-01-211-3/+7
| |
* | docs: Grammar and refs in Rasterizer.Corbin Simpson2010-01-181-4/+3
| |
* | docs: Cleanup Rasterizer a bit.Corbin Simpson2010-01-181-45/+47
| | | | | | | | I'm getting better at this, I think.
* | docs: Fix terms and refs.Corbin Simpson2010-01-181-1/+1
|/ | | | I fail at Sphinx-style ReST.
* gallium/docs: finish up description of pipe_rasterizer_state fieldsBrian Paul2010-01-061-29/+94
|
* More docs. Glossary.Corbin Simpson2009-12-211-8/+9
|
* Moar docs, mostly context.Corbin Simpson2009-12-205-0/+10
|