summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* gallium: add point_quad_rasterization bit to rasterizer stateRoland Scheidegger2010-02-0410-6/+22
| | | | | This determines if points should be rasterized according to GL point rules or as normal quads (GL point sprites / d3d points / d3d point sprites).
* gallium: add point size clamp to implementation limits in vertex shaderRoland Scheidegger2010-02-045-1/+108
| | | | | | | | | | | | | | | | The point size min/max registers (unused by mesa state tracker) were removed since most hardware couldn't do much with them. However, we don't want to have to rely on hw to do point size clamping correctly to implementation dependent limits, hence have to do that in the vertex shader. This should also solve a potential problem with (non-AA) points smaller than 1.0 which according to OGL still have size 1.0. Note that OGL point rendering is odd, in particular point sprites are rasterized differently to points. Some hardware might support those different modes, but in any case the different clamping values used for smooth/multisampled/sprite enabled points might help a bit for hw which rasterizes points the same as point sprites. Also tweak mesa's ff to vertex shader translation so don't have to clamp twice in case of point attenuation.
* docs: clean up TGSI_SEMANTIC_PSIZE descriptionRoland Scheidegger2010-02-031-4/+2
| | | | there was some confusion between point size state and point size output.
* docs: fix point sprite documentationRoland Scheidegger2010-02-031-9/+10
|
* gallium: clean up point sprite rasterizer stateRoland Scheidegger2010-02-0318-62/+64
| | | | | | | | | | 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-1211-35/+11
| | | | | | | 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.
* st/xlib: Mark GLX functions as public.Chia-I Wu2010-01-113-77/+80
| | | | | | Mark all functions start with glX as public. Signed-off-by: Chia-I Wu <[email protected]>
* st: Mark functions in st_public.h and vg_tracker.h as public.Chia-I Wu2010-01-112-0/+42
| | | | | | | These functions are the API of Gallium state tracker, and are used by EGL. Signed-off-by: Chia-I Wu <[email protected]>
* gallium: Add PUBLIC macro for function visibility.Chia-I Wu2010-01-111-0/+11
| | | | | | | As the default build has -fvisibility=hidden, add a macro to control the visibility. Signed-off-by: Chia-I Wu <[email protected]>
* st/vega: Fix breakage from -fvisibility=hidden.Chia-I Wu2010-01-111-0/+5
| | | | | | Mark VG and VGU functions as public. Signed-off-by: Chia-I Wu <[email protected]>
* python: Integrate with llvmpipe if possible.José Fonseca2010-01-112-7/+168
| | | | | Temporary. We should soon have the ability to integrate with any driver via glx extensions.
* python: Mask out PIPE_TEXTURE_USAGE_DISPLAY_TARGET usage.José Fonseca2010-01-111-0/+10
| | | | | As displaying surfaces directly isn't supported by the python state tracker.
* python: Prefer PIPE_FORMAT_Z32_UNORM.José Fonseca2010-01-112-2/+2
|
* python: Set PIPE_TEXTURE_USAGE_RENDER_TARGET instead of DISPLAY_TARGET.José Fonseca2010-01-114-4/+4
| | | | | As the python state tracker is not integrated with window system an cannot present surfaces directly.
* util: Set flatshade for blitter.Corbin Simpson2010-01-111-0/+1
| | | | It was bugging me. +1 FPS on softpipe.
* radeong: Check for DONTBLOCK before flushing, remove dead code.Corbin Simpson2010-01-111-59/+5
|
* util/blitter: remove unused variableKeith Whitwell2010-01-111-1/+0
|
* Fix compressed texture loads for non-minimal pitchesLuca Barbieri2010-01-111-1/+16
| | | | | | | | | | | | | | | The current glCompressedTexImage support in the state tracker assumes that compressed textures have minimal pitch. However, in some cases this is not true, such as for mipmaps of non-POT compressed textures on nVidia hardware. This patch adds a check and does a memcpy for each line instead of the whole image in that case. Signed-off-by: Keith Whitwell <[email protected]> Tweaks for C90 compilation.
* r300g: Don't bother testing for empty scissors.Corbin Simpson2010-01-103-28/+0
| | | | | If somebody goes through that much effort, they probably intended it. So humor them. :3
* util: Apply Brian's suggested blit improvements.Corbin Simpson2010-01-101-15/+12
| | | | copypix works just fine.
* gallium: u_blitter add overlapping blit support.Dave Airlie2010-01-101-34/+124
| | | | | | the xorg state tracker really wants the driver to handle overlapping blits, and r300 uses u_blitter for blits. This patch adds overlapping blit support via a temporary surface when its required.
* r300g: Atomize scissors.Corbin Simpson2010-01-106-26/+22
| | | | Argfl. Some of this code is so questionable.
* r300g: Move TCL bypass switch to main context.Corbin Simpson2010-01-104-36/+31
|
* r300g: Atomize viewport.Corbin Simpson2010-01-105-30/+26
| | | | Goddammit, some of these hax are really annoying.
* r300g: Move ROPCNTL to the top of the emit order.Corbin Simpson2010-01-101-1/+1
| | | | | According to the docs, this decreases stalls, and indeed we get a tiny bit more glxgears from it.
* r300g: Don't avoid rewriting ZTOP.Corbin Simpson2010-01-101-9/+9
| | | | Simplify the code. Added a comment to keep me from doing it again.
* r300g: Atomize rasterizer.Corbin Simpson2010-01-108-32/+34
| | | | I want to stab things now.
* nouveau: Make winsys recognise the original NV50.Marcin Kościelnicki2010-01-111-0/+2
|
* radeon: fix prediction for r100 inline vert/elt emits.Dave Airlie2010-01-111-0/+1
| | | | | On r100 we emit the indices inline so we need to account for that in the emission size.
* radeon: fix bug in realloc code.Dave Airlie2010-01-111-1/+1
| | | | This bug was fixed in libdrm ages ago, port to non-kms
* st/dri: update dri2 drawables when viewport is changedBen Skeggs2010-01-115-2/+19
| | | | | | | Fixes gnome-shell on nouveau, as well as window resize with various other applications. Signed-off-by: Ben Skeggs <[email protected]>
* r300g: Atomize ZTOP.Corbin Simpson2010-01-105-8/+25
| | | | Also do state-change checks. ZTOP's too important to not check.
* r300g: Atomize DSA.Corbin Simpson2010-01-107-32/+25
| | | | Also a bit of ztop.
* r300g: Atomize UCP.Corbin Simpson2010-01-105-13/+9
| | | | Meh.
* r300g: Atomize blend color.Corbin Simpson2010-01-105-19/+14
|
* r300g: Start using atoms.Corbin Simpson2010-01-106-12/+42
| | | | No benefits yet.
* llvmpipe: Update instructions.José Fonseca2010-01-101-21/+18
| | | | | | | Explain how to build for windows. Both MSVC 9 and cross MinGW supported. Stop documenting LLVM 2.5 as supported. It still supported at the moment but it will soon stop being.
* egl: Clean up the Makefile rules.Chia-I Wu2010-01-114-20/+31
| | | | | | | This allows libEGL to be built as a static library and removes libX11 from the dependencies. Signed-off-by: Chia-I Wu <[email protected]>
* egl_softpipe: Remove the unnecessary call to _eglSwapBuffers.Chia-I Wu2010-01-111-14/+8
| | | | | | The call to _eglSwapBuffers is unnecessary, and the function is missing when -fvisibility=hidden. Also remove the extraneous braces and indent the block.
* llvmpipe: Yet another hack to get release LLVM static libraries to link in ↵José Fonseca2010-01-101-0/+14
| | | | debug builds.
* scons: LLVM <-> MSVC integration tweaks.José Fonseca2010-01-101-0/+10
|
* gallium: Remove dead code.José Fonseca2010-01-101-4/+0
|
* gallium: Provide alternative stdint.h and stdbool.h C99 headers, instead of ↵José Fonseca2010-01-105-34/+173
| | | | | | | | | | | | | ad-hoc definitions. Everybody is using the C99's integer types. Everybody except Microsoft, which in turns means everybody is including their own definitions of C99 integer types for MSVC, causing duplicate definitions when linking two projects. This is the case of building Gallium and LLVM with MSVC. Shipping alternative stdint.h and stdbool.h headers for MSVC allows us to share a single definition. It also removes clutter from the Gallium headers.
* r300: minor accelerated blit fixesMaciej Cencora2010-01-091-1/+14
|
* r300: fallback on depth buffer blitsMaciej Cencora2010-01-091-3/+5
| | | | Depth buffer accelerated blits aren't implemented yet.
* nv50: handle TGSI_OPCODE_UMAD,UMUL,NOT and fix SADChristoph Bumiller2010-01-081-3/+149
|
* nv50: free src temp_temps on emitChristoph Bumiller2010-01-081-32/+42
|
* nv50: try to honor sprite coord modeChristoph Bumiller2010-01-081-4/+10
|
* Merge branch 'mesa_7_7_branch'Brian Paul2010-01-0823-188/+169
|\ | | | | | | | | | | Conflicts: src/mesa/drivers/dri/i965/brw_wm_emit.c
| * mesa: Ensure libmesagallium.a is finished building before descendingDan Nicholson2010-01-081-1/+1
| | | | | | | | Signed-off-by: Dan Nicholson <[email protected]>