summaryrefslogtreecommitdiff
path: root/src/mesa/pipe/i915simple/i915_state.c
AgeCommit message (Collapse)Author
2007-12-11gallium: remove set_sampler_units interfaceKeith Whitwell
The effect of this mapping can be acheived by the state tracker and setting up the pipe texture state pointers to incorporate its affects.
2007-12-11gallium: remove redundant clear_color state.Keith Whitwell
2007-12-11gallium: Remove feedback interfaces from pipe driver.Keith Whitwell
Something similar will return when geometry shaders are added, but for now this interface is not required.
2007-12-06Hide texture layout details from the state tracker.Michel Dänzer
pipe->get_tex_surface() has to be used for access to texture image data.
2007-11-22Make it compile under Win32.Michal
2007-11-08tweak anisotropic filtering codeBrian
2007-11-08remove translate_compare_func(), use i915_translate_compare_func()Brian
2007-11-01remove old comment about tnl/vfBrian
2007-10-26Re-implement GLSL texture sampler variables.Brian
GLSL sampler variables indicate which texture unit to use for TEX instructions. Previously, this was baked into the fragment/vertex program and couldn't be readily changed once set. Now, SamplerUnits[] array indicates which texture unit is to be used for each sampler variable. These values are set with glUniform1i(). This is extra state that must be passed to the fragment/vertex program executor at runtime.
2007-10-15add 'normalized_coords' field to pipe_sampler_stateBrian
This controls whether texcoords are interpreted as-is or scaled up from [0,1]. Fixes glDrawPixels/glBitmap problems on i915 when image is non power-of-two. Also, cleans up the CSO sampler state for i915 a bit.
2007-10-15feedback/rasterpos fix-upsBrian
2007-09-28Redoing the way we handle vertex shaders for the draw module.Zack Rusin
2007-09-28Revert "Redoing the way we handle vertex shaders for the draw module."Zack Rusin
This reverts commit 6dcfddb8e2ec2bfb6187b912807fa65f28da2c5e.
2007-09-28Redoing the way we handle vertex shaders for the draw module.Zack Rusin
2007-09-21Convert i915 to use cso semantics of alpha_test.Zack Rusin
2007-09-21Make the alpha test state a cso.Zack Rusin
2007-09-20Cache the i915 sampler state.Zack Rusin
2007-09-20Make the rasterizer state in i915 use the cso semantics.Zack Rusin
2007-09-20Rewrite the depth_stencil state handling in i915.Zack Rusin
Done to match the new cso semantics. translate in create, use in bind and later delete.
2007-09-20Fix failover state binding and convert the sampler to use the newZack Rusin
state constant state object semantics.
2007-09-20Convert depth_stencil state to the new semantics.Zack Rusin
2007-09-20Switch fragment/vertex shaders to the new caching semantics.Zack Rusin
Allow driver custom allocation within cached objects. The shaders are currently twiced (by cso layer and by the program itself).
2007-09-19Convert the rasterizer cso to the new semantics.Zack Rusin
Basically make cso hold the driver specific struct, while managing the template.
2007-09-19Convert the i915 driver blend state to the new semantics.Zack Rusin
2007-09-19Redo the cso cache to map driver data in a lot more pleasing way.Zack Rusin
Drivers can now create whatever they want from the state template. We use cso_state object to store the template (necessary during lookups), and the driver data. Convert blend state to the new semantics.
2007-09-19Finish up conversions of shaders to immutable objects.Zack Rusin
Create/Delete calls should be split since in create we'll be compiling them so we want to know which one it is (vertex/fragment).
2007-09-18Convert shader to an immutable state object.Zack Rusin
2007-09-18Finishing up rename of the setup state to the rasterizer state.Zack Rusin
2007-09-18converting the setup state to immutable object and renaming it to rasterizer ↵Zack Rusin
state
2007-09-18Combing depth and stencil objects and making them immutable.Zack Rusin
Converting depth and stencil objects into a single state object (d3d10 like) and making it immutable.
2007-09-18Make sampler an immutable state object.Zack Rusin
Switch the sample to be an immutable state object.
2007-09-18First stab at immutable state objects (create/bind/delete)Zack Rusin
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-08-23Checkpoint commit: i915 texture works, use new vertex_info structBrian
Basic i915 2D texturing seems to work now. The vertex format is determined from the current fragment shader.
2007-08-22Rework of shader constant buffers.Brian
They're now totally independent of the actual shaders. Also, implemented in terms of pipe_buffer_handles/objects.
2007-08-21Fragment shader translation seems to basically work now. More testing needed.Brian
2007-08-20Use new draw_arrays() code.Brian
The i915 driver now uses the software-based vertex shader interpreter and draws everything through pipe->draw_arrays().
2007-08-16Begin added vertex shader state/support.Brian
Renamed pipe_fs_state to pipe_shader_state since it can be used for both vertex and fragment shader info.
2007-08-13Start breaking the #include dependencies between pipe drivers and mesa.Keith Whitwell
Pipe drivers shouldn't really know much about mesa and certainly shouldn't be #including files from src/mesa/main and the like. I've also (in i915simple especially) moved over from GL types to more conventional int/unsigned usage. This probably isn't really the ultimate desired set of types to use - possibly C99 would be better. It may even be that a subset of the GL types is preferable.
2007-08-10Lift common winsys functions into pipe's new p_winsys.Keith Whitwell
2007-08-09move viewport Y inversion to state trackerBrian
2007-08-09invert Y axis with the viewport transformation to put things right side upBrian
2007-08-08Hook up i915simple. Doesn't compile.Keith Whitwell
2007-08-08Checkpoint of a super-simplified i915 driver in the pipe model.Keith Whitwell
Doesn't yet compile, but when it does, it will only draw gouraud tris and even those will be as simple as possible. Needs some 'winsys' support also before that can happen.