Merge branch 'gallium-msaa'

Conflicts:
	src/mesa/state_tracker/st_gen_mipmap.c
	src/mesa/state_tracker/st_texture.c
This commit is contained in:
Roland Scheidegger
2010-05-21 20:02:22 +02:00
112 changed files with 1324 additions and 933 deletions

View File

@@ -54,6 +54,7 @@ objects. They all follow simple, one-method binding calls, e.g.
* ``set_stencil_ref`` sets the stencil front and back reference values
which are used as comparison values in stencil test.
* ``set_blend_color``
* ``set_sample_mask``
* ``set_clip_state``
* ``set_polygon_stipple``
* ``set_scissor_state`` sets the bounds for the scissor test, which culls
@@ -259,18 +260,22 @@ Resource Busy Queries
Blitting
^^^^^^^^
These methods emulate classic blitter controls. They are not guaranteed to be
available; if they are set to NULL, then they are not present.
These methods emulate classic blitter controls.
These methods operate directly on ``pipe_surface`` objects, and stand
These methods operate directly on ``pipe_resource`` objects, and stand
apart from any 3D state in the context. Blitting functionality may be
moved to a separate abstraction at some point in the future.
``surface_fill`` performs a fill operation on a section of a surface.
``resource_fill_region`` performs a fill operation on a section of a resource.
``surface_copy`` blits a region of a surface to a region of another surface,
provided that both surfaces are the same format. The source and destination
may be the same surface, and overlapping blits are permitted.
``resource_copy_region`` blits a region of a subresource of a resource to a
region of another subresource of a resource, provided that both resources have the
same format. The source and destination may be the same resource, but overlapping
blits are not permitted.
``resource_resolve`` resolves a multisampled resource into a non-multisampled
one. Formats and dimensions must match. This function must be present if a driver
supports multisampling.
The interfaces to these calls are likely to change to make it easier
for a driver to batch multiple blits with the same source and

View File

@@ -147,9 +147,6 @@ resources might be created and handled quite differently.
* ``PIPE_BIND_VERTEX_BUFFER``: A vertex buffer.
* ``PIPE_BIND_INDEX_BUFFER``: An vertex index/element buffer.
* ``PIPE_BIND_CONSTANT_BUFFER``: A buffer of shader constants.
* ``PIPE_BIND_BLIT_SOURCE``: A blit source, as given to surface_copy.
* ``PIPE_BIND_BLIT_DESTINATION``: A blit destination, as given to surface_copy
and surface_fill.
* ``PIPE_BIND_TRANSFER_WRITE``: A transfer object which will be written to.
* ``PIPE_BIND_TRANSFER_READ``: A transfer object which will be read from.
* ``PIPE_BIND_CUSTOM``:
@@ -236,13 +233,15 @@ Determine if a resource in the given format can be used in a specific manner.
**target** one of the PIPE_TEXTURE_x flags
**sample_count** the number of samples. 0 and 1 mean no multisampling,
the maximum allowed legal value is 32.
**bindings** is a bitmask of :ref:`PIPE_BIND` flags.
**geom_flags** is a bitmask of PIPE_TEXTURE_GEOM_x flags.
Returns TRUE if all usages can be satisfied.
.. _resource_create:
resource_create