summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/r200/r200_tcl.c
AgeCommit message (Collapse)Author
2005-02-17s/0/NULL/ (Jeff Muizelaar)Brian Paul
2005-02-10(Andreas Stenglein) fix projected textures with swtcl, they need the w ↵Roland Scheidegger
coordinate of the vertex (bugzilla #1648)
2004-12-14uint*t -> u_int*t changesAlan Hourihane
2004-12-02silence warningsAlan Hourihane
2004-11-12make render_quads_verts call EMIT_PRIM with the arguments in the right order,Adam Jackson
and enable hardware quads on r200 and radeon. samples/prim renders quads correctly now.
2004-11-03enable GL_EXT_fog_coord. Calculate fog factors and submit them instead of ↵Roland Scheidegger
fog coords (it seems the chip cannot do fog factor computation when not using fragment depth as fog coord source). vtxfmt uses fallback for now (most code present but some magic would be needed if replaying vertices is necessary later on).
2004-10-16Add code to support projective texturing and fix mixed enabling of textureEric Anholt
coordinate generation. Original code by Roland Schiedegger, with changes by myself. While here, ensure that the swtcl path does tnl_install_attrs enough when fog/specular are being (en/dis)abled. Notable effects: - projtex test works with TCL and is closer with swtcl (Bugzilla #1461) - 8/9 squares work in texgenmix instead of 3. - texcyl "reflect" mode works (GL_SPHERE_MAP is now a fallback -- unclear if the hardware can actually support it). - flickering in doom3 replaced by just plain darkness. - blocktube fixed (Bugzilla #984) - fixes stex3d
2004-09-24-O -Wall warnings cleanups in r200.Eric Anholt
2004-09-02r200-maybe-flush-less-3.diffKeith Whitwell
2004-08-17Close some races with locking on R100 and R200 which could manifest as renderingEric Anholt
errors on r100 and rendering errors and hangs on r200 (same for R100 without OLD_PACKETS). If a command buffer filled after some state (EmitState or a VBPNTR write) was emitted, the lock was grabbed, the buffer flushed, a new buffer prepared, and the lock dropped. Another client could come in, set its own state as part of rendering, and when the first client flushed the rendering commands depending on the previous state, it got the 2nd client's state. This is fixed by checking for enough space before beginning a set of state emits and rendering, and flushing the buffer first if so. This guarantees that the buffer won't wrap. Also, move the "lost_context = 1" from the end of cmdbuf flushing to UNLOCK_HARDWARE for clarity (at a minimum) that any time the lock is dropped, state may get overwritten. We don't have enough information at the point of the LOCK_HARDWARE to reset our state to the last UNLOCK_HARDWARE point in the case that we did lose our context, but saving the information to rebuild that state may be a useful optimization (ipers data suggests up to 5%).
2004-06-02add support for more than 2 texture units (max 6, default 4). use hang ↵Roland Scheidegger
workarounds only for r200, not derivatives.
2004-05-27change some explicit references to texture units 0/1 to unit < ↵Roland Scheidegger
MaxTextureUnits (Andreas Stenglein, Ronny Vindenes)
2004-04-23Convert R200 driver to use the t_vertex interface.Ian Romanick
2003-12-09clean up some compiler warningsKeith Whitwell
2003-11-24Import vtx-0-2-branchKeith Whitwell
2003-10-21Update DRI drivers to current DRI CVS and make them work.Jon Smirl
2003-08-22patch to import Jon Smirl's work from BitkeeperBrian Paul
2003-08-06r200 driver, brought over by Jon SmirlKeith Whitwell