Hierarchical Z-culling (HiZ) optimization for texture-dependent discard operations
AssigneeIntel Corporation
InventorsMagnus Andersson, Robert M. Toth, Jon N Hasselgren, Tomas G. Akenine-Moller
Life of this patent
Estimating the term…
Abstract
Methods and apparatus relating to techniques for provision of hierarchical Z-Culling (HiZ) optimization for texture-dependent discard operations are described. In an embodiment, a processor performs one or more operations (such as HiZ or Hierarchical Stencil test) on depth data of an image tile in response to a determination that texture space bounds of the image tile is fully opaque. The processor performs the one or more operations regardless of whether a discard operation is enabled. Other embodiments are also disclosed and claimed.
Claims25
An apparatus comprising:
- a memory to store depth data corresponding to an image tile;
- and
- a processor, coupled to the memory, to perform one or more operations on the depth data in response to a determination that texture space bounds of the image tile is fully opaque or fully transparent,
- wherein the processor is to perform the one or more operations regardless of whether a discard operation is enabled, wherein the one or more operations comprise a hierarchical stencil test, wherein a fragment shader is to operate on the image tile, wherein the hierarchical stencil test is to be performed before an operation to be performed on the depth data and after the fragment shader operates on the image tile to generate a fragment, wherein the fragment is to be culled in response to failure of a test to be performed on a stencil value for the fragment against a stencil value in a current stencil buffer, wherein the discard operation to discard one or more fragments is to remain unexecuted in response to the discard operation being dependent on one or more alpha components of the one or more fragments being less than a first value and one or more textures bound to samplers having one or more alpha values equal to the first value.
A method comprising:
- storing depth data corresponding to an image tile in a memory;
- and
- performing one or more operations on the depth data in response to a determination that texture space bounds of the image tile is fully opaque or fully transparent,
- wherein the one or more operations are performed regardless of whether a discard operation is enabled, wherein the one or more operations comprise a hierarchical stencil test, wherein a fragment shader operates on the image tile, wherein the hierarchical stencil test is performed before an operation performed on the depth data and after the fragment shader operates on the image tile to generate a fragment, wherein the fragment is culled in response to failure of a test performed on a stencil value for the fragment against a stencil value in a current stencil buffer, wherein the discard operation to discard one or more fragments remains unexecuted in response to the discard operation being dependent on one or more alpha components of the one or more fragments being less than a first value and one or more textures bound to samplers having one or more alpha values equal to the first value.
One or more non-transitory computer-readable medium comprising one or more instructions that when executed on at least one processor configure the at least one processor to perform:
- store depth data corresponding to an image tile in a memory;
- and
- perform one or more operations on the depth data in response to a determination that texture space bounds of the image tile is fully opaque or fully transparent,
- wherein the processor is to perform the one or more operations regardless of whether a discard operation is enabled, wherein the one or more operations comprise a hierarchical stencil test, wherein a fragment shader is to operate on the image tile, wherein the hierarchical stencil test is to be performed before an operation to be performed on the depth data and after the fragment shader operates on the image tile to generate a fragment, wherein the fragment is to be culled in response to failure of a test to be performed on a stencil value for the fragment against a stencil value in a current stencil buffer, wherein the discard operation to discard one or more fragments is to remain unexecuted in response to the discard operation being dependent on one or more alpha components of the one or more fragments being less than a first value and one or more textures bound to samplers having one or more alpha values equal to the first value.
Dependencies are inferred from the claim text.