Commit Graph

11829 Commits

Author SHA1 Message Date
Zack Rusin fbb2f840ae move cso cache to the pipe directory 2007-09-18 07:20:14 -04:00
Zack Rusin 29789ca026 Fix a silly bug on setting samplers.
Bind when the currently bound state is /not/ the one
we just found/created.
2007-09-18 07:19:12 -04:00
Zack Rusin 294401814d converting the setup state to immutable object and renaming it to rasterizer state 2007-09-18 07:18:12 -04:00
Zack Rusin d6ac959833 Combing depth and stencil objects and making them immutable.
Converting depth and stencil objects into a single state object
(d3d10 like) and making it immutable.
2007-09-18 06:31:22 -04:00
Zack Rusin 56edb98d97 Fix the warning.
The const is there to enforce the immutable state of the object,
which is in reality owned by the pipe so just cast away the
constness.
2007-09-18 06:31:22 -04:00
Zack Rusin f117327a3f Make sampler an immutable state object.
Switch the sample to be an immutable state object.
2007-09-18 06:31:22 -04:00
Zack Rusin e16c045b83 Implementing a better hash, removing state_tracker dependency from the cache.
Replacing mesa's main hash with one that handles collisions, moving state_tracker
related caching to the state tracker to keep cso cache independent of it. Cleanups.
2007-09-18 06:31:22 -04:00
Zack Rusin 9780327c5d First stab at immutable state objects (create/bind/delete)
We want our state objects to be immutable, handled via the
create/bind/delete calls instead of struct propagation.
Only implementing the blend state to see how it would look like
and work.
2007-09-18 06:31:22 -04:00
Brian ffacb1c12a Replace GL_TEXTURE_* tokens with PIPE_TEXTURE_*
Must have missed this a while back.  This fixes cube mapping.
2007-09-17 15:44:59 -06:00
Brian b4bacd1fca Plug in selection/feedback code.
Not quite finished yet.
Selection/feedback are done with a private instance of the 'draw' module
in the state tracker.  Not quite all the draw context's state is set yet,
namely vertex format info.  Hold off on that for a bit...
2007-09-17 14:24:11 -06:00
Brian 2a40c71fed selection/feedback support 2007-09-17 14:22:49 -06:00
Brian 060a638027 s/bugmgr/bufgr/ 2007-09-17 12:18:32 -06:00
Brian 72d7d2bcc3 Merge branch 'softpipe_0_1_branch' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa into softpipe_0_1_branch 2007-09-17 12:07:29 -06:00
Keith Whitwell 5578f8ce3b Remove non-meaningful region_idle() interface
This is already handled by the semanics of map(), etc.
2007-09-17 18:04:03 +01:00
Brian f48e055c10 silence warning 2007-09-17 10:05:34 -06:00
Brian 9ea91974e1 update begin/end_query() functions 2007-09-17 10:05:21 -06:00
Michel Dänzer bf92350b5b Fix linux-dri-x86 build. 2007-09-17 13:22:51 +01:00
Michel Daenzer d59c95bfae intel_winsys: Fix intel_buffer_reference.
Correctly clear the pointer to the old buffer (not sure how this could build at
all before...) and only reference the new one when its pointer is non-NULL.
2007-09-14 15:53:52 +01:00
Michel Daenzer c01a5ec3d6 intel_winsys: Adapt to recent drm changes (s/pipes/planes/). 2007-09-14 15:48:54 +01:00
Brian 09fbb3837b Implement query object interface.
This replaces the temporary occlusion counter functions we had before.
Added new ctx->Driver.WaitQuery() function which should block until the result is ready.
Sketch out some code for vertex transformation feedback counters.
2007-09-11 16:01:17 -06:00
Brian 5620d66e36 vertex feedback functions 2007-09-10 17:02:58 -06:00
Brian 6275b40063 merge buffer_unreference(), buffer_reference() 2007-09-10 16:52:05 -06:00
Brian 051a2a3028 clean-ups, comments 2007-09-10 16:35:16 -06:00
Brian c3f7f3124a s/xm_softpipe.c/xm_winsys.c/ 2007-09-10 16:32:24 -06:00
Brian b06641eb4a Rename 2007-09-10 16:31:24 -06:00
Brian d56a3adc30 More work on vertex feedback / glRasterPos. Basic rasterpos works now. 2007-09-10 16:29:23 -06:00
Brian b2dfe2be6c added st_cb_rasterpos.c 2007-09-10 16:28:39 -06:00
Brian bee148cb7d plug in rasterpos/feedback code 2007-09-10 16:28:27 -06:00
Brian bb193c6d22 glRasterPos function 2007-09-10 16:28:10 -06:00
Brian 21c925f491 move FLUSH_CURRENT 2007-09-10 16:27:07 -06:00
Brian 63a51aee86 Initial work for post-transformed vertex feedback buffers.
This will be used for:
   GL_NV_transform_feedback, or similar GL3 functionality
   glRasterPos
   GL selection/feedback modes
2007-09-06 17:07:09 -06:00
Brian 41ddd76b98 Initial work for post-transform vertex feedback buffers.
This will be used for:
  GL_NV_transform_feedback, or GL3 equivalent.
  RasterPos
  GL select/feedback modes
2007-09-06 17:03:54 -06:00
Brian 4c01d498fa Move guts of glRasterPos down into T&L module. 2007-09-06 17:02:07 -06:00
Brian f2f168d0f8 Move guts of glRasterPos into tnl module, called via new ctx->Driver.RasterPos() function. 2007-09-06 14:26:35 -06:00
Brian 9a11a4a8b4 move some protos from draw_vertex.h to draw_private.h 2007-08-31 11:28:31 -06:00
Brian 2e21058e3d Define attrib_format and interp_mode enum typedefs and use where appropriate. 2007-08-31 11:27:16 -06:00
Brian 898d68a376 Consolidate vertex-related code in new draw_vertex.c
A few functions which were basically duplicated between softpipe and the
i915 driver are now re-used:
  draw_emit_vertex_attr()
  draw_compute_vertex_size()
2007-08-30 16:49:24 -06:00
Brian 963b8a7449 Remove dependency on TGSI_ATTRIB_x tokens in draw_twoside.c
Added a new draw_set_twoside_attributes() function for specifying which
vertex attributes are to be copied/replaced when a polygon is back-facing.
2007-08-30 16:37:56 -06:00
Brian c9e133eab4 fix breakage from prev commit 2007-08-30 16:04:10 -06:00
Brian 8f1a0decad fix unhandled switch/case warning 2007-08-30 16:01:23 -06:00
Brian 050837045f more usage info 2007-08-30 14:44:40 -06:00
Brian f726ffd060 test flat shading w/ clipping 2007-08-30 14:43:59 -06:00
Brian 942b9bc5bc In draw_flatshade.c use vertex_info->interp_mode[] to choose attribs/colors to cpy.
One less dependency on the TGSI_ATTRIB_x flags.
This requires setting the vertex_info->interp_mode[] values in the i915 driver and passing them to draw_set_vertex_attributes().
2007-08-30 14:43:08 -06:00
Brian aaf03b9486 Fix lost edge flags problem when clipping.
In emit_poly() we need to compute header.edgeflags from the vertex
edge flags.  Also need to set header.det so later stages can determine
front/back orientation.
2007-08-30 14:43:08 -06:00
Brian 2d187672b7 Sketch out per-vertex point size.
The code is all in place, but mostly disabled for now:
In t_vp_build.c, write the VERT_RESULT_PSIZE register
In sp_state_derived.c, need to emit vertex point size if drawing points.
In setup_point() use the point size from the vertex.
2007-08-30 14:43:08 -06:00
michal e62b9241d2 Add p_compiler.h. 2007-08-29 22:35:28 +01:00
michal a6e2b76fb5 Break GL dependencies. 2007-08-29 22:35:28 +01:00
michal 6468e68466 Break GL dependencies. 2007-08-29 22:35:28 +01:00
michal 86fe5f235b Break GL dependencies. 2007-08-29 22:35:28 +01:00
michal 529c411e40 Break GL dependencies. 2007-08-29 22:35:28 +01:00