summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/radeon/radeon_texstate.c
AgeCommit message (Collapse)Author
2009-05-13R1xx/r2xx: Don't use an alpha texture format for GLX_TEXTURE_FORMAT_RGB_EXTAlex Deucher
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
2009-04-01radeon: go back and repick texture formats.Dave Airlie
This might trip up some serious FBO users, will have to see, but it avoids the slow paths for all the demos I have.
2009-03-26radeon/r200/r300: set correct row stride for rbsDave Airlie
2009-03-24radeon/r200/r300: fix warningsDave Airlie
2009-03-22radeon/r200/r300: add support for new tfp interfaceDave Airlie
also fixup old interface, gets rid of white boxes in compiz
2009-03-20Merge remote branch 'main/master' into radeon-rewriteDave Airlie
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
2009-03-19radeon/r200/r300: cleanup some of the renderbuffer codeDave Airlie
2009-03-10radeon: remove unused linesDave Airlie
2009-03-05radeon: use t->bo to figure out of settexbuffer override is in actionDave Airlie
2009-03-04radeon: settexbuffer supportDave Airlie
This gets DRI2 compiz going
2009-02-21mesa: re-org texgen stateBrian Paul
New gl_texgen struct allows quite a bit of code reduction.
2009-02-17radeon/r200: drop dirty state from texture object + pp_txoffsetDave Airlie
this is just more code cleanup for old dead code
2009-02-17radeon: fix not emitting texture state correctlyDave Airlie
this is whole texture dirty bit is probably not needed with the current codebase, need to revisit
2009-02-17radeon: move YUV on first texunit check after hw state is setupDave Airlie
2009-02-14radeon: remove old cube codeDave Airlie
2009-02-13radeon/r200: fix set tex offset functionsDave Airlie
2009-02-10r100: remove debug codeDave Airlie
2009-02-10r100: fix 3D texture fallbackDave Airlie
2009-02-10radeon: major cleanups removing old dead codepaths.Dave Airlie
This should be working gears on radeon state
2009-02-09radeon: make more r100 workDave Airlie
2009-02-04radeon: make compile again.Dave Airlie
Not tested but ripped out lots of stuff unneeded anymore time to test later
2009-01-29WIP comitDave Airlie
2009-01-14radeon/r200/r300: initial attempt to convert to common context codeDave Airlie
2009-01-13radeon/r200: start splitting out commonalities into separate headersDave Airlie
2008-09-21Remove CVS keywords.Keith Whitwell
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
2008-09-18mesa: added "main/" prefix to includes, remove some -I paths from ↵Brian Paul
Makefile.template
2008-07-14radeon: SetTexOffset supportChris Rankin
This patch is a straightforward duplication of the R200 SetTexOffset code, except that there is no big-endian tx_table[] array.
2006-11-02s/GLuint/int/ to silence warningsBrian Paul
2006-10-15fix handling of textures with a base internal format that does not have all ↵Roland Scheidegger
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).
2006-09-13Always mark tex state atom as dirty when the texture image is dirty, this ↵Roland Scheidegger
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).
2006-09-10remove code to deal with non-normalized texture coordinates for tex rect ↵Roland Scheidegger
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).
2006-09-10cause a raster fallback if a yuv texture is used on texture unit > 0 as yuv ↵Roland Scheidegger
conversion appears only to work on first unit.
2006-01-30fix broken assertion to make radeon driver compile with -DDEBUG...Roland Scheidegger
2005-10-15enable cube maps on radeon (#2241 on bugzilla). No vtxfmt code yet (just ↵Roland Scheidegger
generates vfmt fallback). Code by Andreas Stenglein, some small adjustments by me.
2005-10-13enable 3rd texture unit on radeon (default still 2 enabled units). Disable ↵Roland Scheidegger
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.)
2005-10-13make sure texture matrix is updated often enough with texture rectanglesRoland Scheidegger
2005-10-05Remove the tcl fallback for texture rectangle (by manipulating the texture ↵Roland Scheidegger
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.
2005-10-05In gl_texture_image replace IntFormat with InternalFormat and Format withBrian Paul
_BaseFormat to be consistant with gl_renderbuffer.
2005-09-26remove identity check for texgen planes (which was just plain wrong).Roland Scheidegger
2005-06-26Explain the reason for TCL fallback when GL_SPHERE_MAP happens withEric Anholt
RADEON_DEBUG=fall.
2005-05-28Put some fallback debugging output under DEBUG_FALLBACKS.Eric Anholt
2005-02-10add texture micro and macro tiling to radeon/r200 driver. This can improve ↵Roland Scheidegger
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.
2004-10-07Add Roland Scheidegger's S3TC patch. This patch does not implement theEric Anholt
(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.
2004-06-23revert accidental change from rev. 1.10Roland Scheidegger
2004-06-19Big-endian texture fixes from Michel Dänzer.Brian Paul
2004-06-17use I8 internal format for GL_INTENSITY, GL_ALPHA and GL_LUMINANCE texture ↵Roland Scheidegger
formats. Fix potential bug with tex env combine mode GL_DOT3_RGB/GL_DOT3_RGB_EXT and ALPHA_SCALE
2004-06-02change GL_ARB_texture_env_crossbar implementation behaviour to OGL 1.4 core ↵Roland Scheidegger
specification instead of extension specification (undefined behaviour instead of disabled blending if not enabled texture units are referenced). Fix minor signedness bug.
2004-06-01add support for GL_ARB_texture_env_crossbarRoland Scheidegger
2004-04-26bring over build fixes from stable branchAlan Hourihane
2004-02-16texture env combine refactor (Andreas Stenglein), following the same ↵Roland Scheidegger
principles as the refactored code already present in the R200 driver