aboutsummaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers/dri/radeon/radeon_texstate.c
Commit message (Collapse)AuthorAgeFilesLines
* R1xx/r2xx: Don't use an alpha texture format for GLX_TEXTURE_FORMAT_RGB_EXTAlex Deucher2009-05-131-1/+4
| | | | | | | | In r*00SetTexBuffer2(), if the passed in text glx_texture_format is GLX_TEXTURE_FORMAT_RGB_EXT, then we should use an RGB-only texture format, even if the DRI buffer has four channels. https://bugs.freedesktop.org/show_bug.cgi?id=21609
* radeon: go back and repick texture formats.Dave Airlie2009-04-011-1/+1
| | | | | This might trip up some serious FBO users, will have to see, but it avoids the slow paths for all the demos I have.
* radeon/r200/r300: set correct row stride for rbsDave Airlie2009-03-261-0/+1
|
* radeon/r200/r300: fix warningsDave Airlie2009-03-241-7/+0
|
* radeon/r200/r300: add support for new tfp interfaceDave Airlie2009-03-221-4/+16
| | | | also fixup old interface, gets rid of white boxes in compiz
* Merge remote branch 'main/master' into radeon-rewriteDave Airlie2009-03-201-12/+12
|\ | | | | | | | | | | | | | | | | Conflicts: src/mesa/drivers/dri/r300/r300_cmdbuf.c src/mesa/drivers/dri/r300/r300_state.c src/mesa/drivers/dri/r300/r300_swtcl.c src/mesa/drivers/dri/r300/radeon_ioctl.c src/mesa/drivers/dri/radeon/radeon_screen.c
| * mesa: re-org texgen stateBrian Paul2009-02-211-12/+12
| | | | | | | | New gl_texgen struct allows quite a bit of code reduction.
* | radeon/r200/r300: cleanup some of the renderbuffer codeDave Airlie2009-03-191-1/+1
| |
* | radeon: remove unused linesDave Airlie2009-03-101-3/+0
| |
* | radeon: use t->bo to figure out of settexbuffer override is in actionDave Airlie2009-03-051-1/+1
| |
* | radeon: settexbuffer supportDave Airlie2009-03-041-0/+111
| | | | | | | | This gets DRI2 compiz going
* | radeon/r200: drop dirty state from texture object + pp_txoffsetDave Airlie2009-02-171-9/+4
| | | | | | | | this is just more code cleanup for old dead code
* | radeon: fix not emitting texture state correctlyDave Airlie2009-02-171-0/+2
| | | | | | | | | | this is whole texture dirty bit is probably not needed with the current codebase, need to revisit
* | radeon: move YUV on first texunit check after hw state is setupDave Airlie2009-02-171-5/+4
| |
* | radeon: remove old cube codeDave Airlie2009-02-141-12/+1
| |
* | radeon/r200: fix set tex offset functionsDave Airlie2009-02-131-3/+1
| |
* | r100: remove debug codeDave Airlie2009-02-101-3/+0
| |
* | r100: fix 3D texture fallbackDave Airlie2009-02-101-1/+5
| |
* | radeon: major cleanups removing old dead codepaths.Dave Airlie2009-02-101-518/+105
| | | | | | | | This should be working gears on radeon state
* | radeon: make more r100 workDave Airlie2009-02-091-8/+38
| |
* | radeon: make compile again.Dave Airlie2009-02-041-10/+11
| | | | | | | | Not tested but ripped out lots of stuff unneeded anymore time to test later
* | WIP comitDave Airlie2009-01-291-2/+90
| |
* | radeon/r200/r300: initial attempt to convert to common context codeDave Airlie2009-01-141-20/+20
| |
* | radeon/r200: start splitting out commonalities into separate headersDave Airlie2009-01-131-1/+1
|/
* Remove CVS keywords.Keith Whitwell2008-09-211-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Cherry-picked from gallium-0.1 Conflicts: src/glu/sgi/libnurbs/interface/bezierEval.h src/glu/sgi/libnurbs/interface/bezierPatch.h src/glu/sgi/libnurbs/interface/bezierPatchMesh.h src/glu/sgi/libnurbs/internals/dataTransform.h src/glu/sgi/libnurbs/internals/displaymode.h src/glu/sgi/libnurbs/internals/sorter.h src/glu/sgi/libnurbs/nurbtess/definitions.h src/glu/sgi/libnurbs/nurbtess/directedLine.h src/glu/sgi/libnurbs/nurbtess/gridWrap.h src/glu/sgi/libnurbs/nurbtess/monoChain.h src/glu/sgi/libnurbs/nurbtess/monoPolyPart.h src/glu/sgi/libnurbs/nurbtess/monoTriangulation.h src/glu/sgi/libnurbs/nurbtess/partitionX.h src/glu/sgi/libnurbs/nurbtess/partitionY.h src/glu/sgi/libnurbs/nurbtess/polyDBG.h src/glu/sgi/libnurbs/nurbtess/polyUtil.h src/glu/sgi/libnurbs/nurbtess/primitiveStream.h src/glu/sgi/libnurbs/nurbtess/quicksort.h src/glu/sgi/libnurbs/nurbtess/rectBlock.h src/glu/sgi/libnurbs/nurbtess/sampleComp.h src/glu/sgi/libnurbs/nurbtess/sampleCompBot.h src/glu/sgi/libnurbs/nurbtess/sampleCompRight.h src/glu/sgi/libnurbs/nurbtess/sampleCompTop.h src/glu/sgi/libnurbs/nurbtess/sampleMonoPoly.h src/glu/sgi/libnurbs/nurbtess/sampledLine.h src/glu/sgi/libnurbs/nurbtess/searchTree.h src/glu/sgi/libnurbs/nurbtess/zlassert.h src/glu/sgi/libutil/error.c src/glu/sgi/libutil/glue.c src/glu/sgi/libutil/gluint.h src/glu/sgi/libutil/project.c src/glu/sgi/libutil/registry.c src/glx/x11/glxclient.h src/glx/x11/glxext.c src/mesa/drivers/dri/ffb/ffb_dd.h src/mesa/drivers/dri/ffb/ffb_points.h src/mesa/drivers/dri/gamma/gamma_context.h src/mesa/drivers/dri/gamma/gamma_macros.h src/mesa/drivers/dri/i810/i810context.h src/mesa/drivers/dri/r128/r128_dd.h src/mesa/drivers/dri/tdfx/tdfx_dd.h
* mesa: added "main/" prefix to includes, remove some -I paths from ↵Brian Paul2008-09-181-8/+8
| | | | Makefile.template
* radeon: SetTexOffset supportChris Rankin2008-07-141-20/+63
| | | | | This patch is a straightforward duplication of the R200 SetTexOffset code, except that there is no big-endian tx_table[] array.
* s/GLuint/int/ to silence warningsBrian Paul2006-11-021-2/+2
|
* fix handling of textures with a base internal format that does not have all ↵Roland Scheidegger2006-10-151-10/+27
| | | | four rgba values set for radeon and r200 (discovered with a modified glean pixelFormats test, noone ever noticed in over 2 years). For radeon, use hw format I8 as previously, and change tex env to make the correct default values appear for both GL_ALPHA and GL_LUMINANCE textures. For r200, which supports GL_LUMINANCE just fine, use the AL88 hw format for GL_ALPHA textures, since it seems like it's probably not worth the effort to fix up the texture environment (certainly complicated in case of ATI_fragment_shader programs).
* Always mark tex state atom as dirty when the texture image is dirty, this ↵Roland Scheidegger2006-09-131-4/+6
| | | | ensures texture cache gets flushed in case the new texture has the same offset as the old one (fixes glean pixelFormat test at least on r200).
* remove code to deal with non-normalized texture coordinates for tex rect ↵Roland Scheidegger2006-09-101-18/+28
| | | | targets (swtcl tex coord translation stage, tcl tex matrix adaption) and use the chip's native handling of such coords instead (!!!). Seems noone noticed those bits in the se_coord_fmt reg, even though it works fairly similar to r200 (except it's set per-unit and always active, so only enable it for texture rectangles).
* cause a raster fallback if a yuv texture is used on texture unit > 0 as yuv ↵Roland Scheidegger2006-09-101-0/+3
| | | | conversion appears only to work on first unit.
* fix broken assertion to make radeon driver compile with -DDEBUG...Roland Scheidegger2006-01-301-1/+1
|
* enable cube maps on radeon (#2241 on bugzilla). No vtxfmt code yet (just ↵Roland Scheidegger2005-10-151-5/+115
| | | | generates vfmt fallback). Code by Andreas Stenglein, some small adjustments by me.
* enable 3rd texture unit on radeon (default still 2 enabled units). Disable ↵Roland Scheidegger2005-10-131-22/+6
| | | | some multitexcoord codegen stuff noone understands to make it work. Replace most code testing explicitly for unit 0 and 1 with loops instead of adding test for unit 2, smaller/more readable code at the cost of maybe some slight performance hit. (Code provided by Andreas Stenglein, some adjustments by me.)
* make sure texture matrix is updated often enough with texture rectanglesRoland Scheidegger2005-10-131-0/+2
|
* Remove the tcl fallback for texture rectangle (by manipulating the texture ↵Roland Scheidegger2005-10-051-37/+76
| | | | matrix) (tested with texrect). Enable texgen for r/q coordinates (tested with projtex). Fix projected texcoords when an app uses TexCoord3x and the texture matrix to save on vertex size (fixes ut2k3 shadow projectors in tcl mode). From texgenmix, all cases with all texgen or no texgen work, with the exception of texgen enabled for s/t only, this one works with hw tcl, but not with vtxfmt (suspect issues with vtxfmt), the mixed cases do not work (which is expected, and should be rare in practice), with the exception of the first one which hits a tcl fallback.
* In gl_texture_image replace IntFormat with InternalFormat and Format withBrian Paul2005-10-051-1/+1
| | | | _BaseFormat to be consistant with gl_renderbuffer.
* remove identity check for texgen planes (which was just plain wrong).Roland Scheidegger2005-09-261-16/+12
|
* Explain the reason for TCL fallback when GL_SPHERE_MAP happens withEric Anholt2005-06-261-1/+2
| | | | RADEON_DEBUG=fall.
* Put some fallback debugging output under DEBUG_FALLBACKS.Eric Anholt2005-05-281-2/+4
|
* add texture micro and macro tiling to radeon/r200 driver. This can improve ↵Roland Scheidegger2005-02-101-14/+56
| | | | performance up to 15% in texture-intensive applications. Convert the driver to use the correct blit format and blit width instead of fixed blit format and blit width when uploading textures to make it work.
* Add Roland Scheidegger's S3TC patch. This patch does not implement theEric Anholt2004-10-071-2/+29
| | | | | | | | | | | | | | | | | (patented) S3TC/DXTC algorithms, but adds an option to dlopen a library module providing functions to do so. Because it uses dlopen, it is only enabled if USE_EXTERNAL_DXTN_LIB=1 is defined (which is only in linux-dri config, so far). It adds support for S3TC to several DRI drivers, and adds a DRI config option to force enabling S3TC even if the software compression/decompression is unavailable. This may allow people to use apps that require S3TC even though they don't have a license to implement the patented material themselves, if those apps use precompressed textures. Ideally we would get permission from the current holder of the patents to implement the algorithm in Mesa, at which point the dlopen mess could go away. Until then, this allows some to run applications they couldn't otherwise, and hopefully will provide us with more push to get the final step of getting that permission done.
* revert accidental change from rev. 1.10Roland Scheidegger2004-06-231-1/+1
|
* Big-endian texture fixes from Michel Dänzer.Brian Paul2004-06-191-0/+10
|
* use I8 internal format for GL_INTENSITY, GL_ALPHA and GL_LUMINANCE texture ↵Roland Scheidegger2004-06-171-6/+11
| | | | formats. Fix potential bug with tex env combine mode GL_DOT3_RGB/GL_DOT3_RGB_EXT and ALPHA_SCALE
* change GL_ARB_texture_env_crossbar implementation behaviour to OGL 1.4 core ↵Roland Scheidegger2004-06-021-17/+7
| | | | specification instead of extension specification (undefined behaviour instead of disabled blending if not enabled texture units are referenced). Fix minor signedness bug.
* add support for GL_ARB_texture_env_crossbarRoland Scheidegger2004-06-011-17/+41
|
* bring over build fixes from stable branchAlan Hourihane2004-04-261-1/+1
|
* texture env combine refactor (Andreas Stenglein), following the same ↵Roland Scheidegger2004-02-161-765/+230
| | | | principles as the refactored code already present in the R200 driver