gallium/st: add pipe_context::generate_mipmap()
This patch adds a new interface to support hardware mipmap generation. PIPE_CAP_GENERATE_MIPMAP is added to allow a driver to specify if this new interface is supported; if not supported, the state tracker will fallback to mipmap generation by rendering/texturing. v2: add PIPE_CAP_GENERATE_MIPMAP to the disabled section for all drivers v3: add format to the generate_mipmap interface to allow mipmap generation using a format other than the resource format v4: fix return type of trace_context_generate_mipmap() Reviewed-by: Brian Paul <brianp@vmware.com> Reviewed-by: Roland Scheidegger <sroland@vmware.com> Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
This commit is contained in:

committed by
Brian Paul

parent
b1e11f4d71
commit
3038e8984d
@@ -648,3 +648,14 @@ In addition, normal texture sampling is allowed from the compute
|
||||
program: ``bind_sampler_states`` may be used to set up texture
|
||||
samplers for the compute stage and ``set_sampler_views`` may
|
||||
be used to bind a number of sampler views to it.
|
||||
|
||||
Mipmap generation
|
||||
^^^^^^^^^^^^^^^^^
|
||||
|
||||
If PIPE_CAP_GENERATE_MIPMAP is true, ``generate_mipmap`` can be used
|
||||
to generate mipmaps for the specified texture resource.
|
||||
It replaces texel image levels base_level+1 through
|
||||
last_level for layers range from first_layer through last_layer.
|
||||
It returns TRUE if mipmap generation succeeds, otherwise it
|
||||
returns FALSE. Mipmap generation may fail when it is not supported
|
||||
for particular texture types or formats.
|
||||
|
@@ -303,6 +303,8 @@ The integer capabilities:
|
||||
shader buffers are not supported.
|
||||
* ``PIPE_CAP_INVALIDATE_BUFFER``: Whether the use of ``invalidate_resource``
|
||||
for buffers is supported.
|
||||
* ``PIPE_CAP_GENERATE_MIPMAP``: Indicates whether pipe_context::generate_mipmap
|
||||
is supported.
|
||||
|
||||
|
||||
.. _pipe_capf:
|
||||
|
Reference in New Issue
Block a user