# US 10,319,064 B2 · Graphics anti-aliasing resolve with stencil mask

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,319,064 B2
- Document ID: US10319064B2
- Status: Granted
- Kind: B2
- Application number: 15/482,906
- Filed: 2017-04-10
- Published: 2018-10-11
- Granted: 2019-06-11
- Earliest claimed: 2017-04-10
- Assignees: Intel Corporation
- Applicants: Intel Coporation
- Inventors: Hugues Labbe; Tomer Bar-On; Kai Xiao; Ankur N. Shah; John G. Gierach
- Web page: https://patentgrep.com/patent/US10319064B2

## CPC

- G06T 1/20: Processor architectures; Processor configuration, e.g. pipelining
- G06T 15/80: Shading
- G06T 2200/12: involving antialiasing
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL

## Abstract

An embodiment of a graphics apparatus may include a mask buffer to store a mask, a shader communicatively coupled to the mask buffer to apply the mask to a first shader pass, and a resolver communicatively coupled to the mask buffer to apply the mask to a resolve pass. The resolver may be configured to exclude a sample location not covered by the mask in the resolve pass. Other embodiments are disclosed and claimed.

## Claims

### Claim 1

An electronic processing system, comprising:
an application processor;
persistent storage media communicatively coupled to the application processor; and
a graphics subsystem communicatively coupled to the application processor, the graphics subsystem including:
a stencil buffer to store a stencil mask;
a shader communicatively coupled to the stencil buffer to apply the stencil mask to a first shader pass that is to include an anti-aliasing operation on a plurality of pixels, wherein the plurality of pixels is to include a first pixel having an inside portion, that is inside the stencil mask, and an outside portion that is outside the stencil mask, wherein the anti-aliasing operation is to generate one or more inside sample values for the inside portion and one or more outside sample values for the outside portion; and
a resolver communicatively coupled to the stencil buffer to apply the stencil mask to a resolve pass to:
determine that the one or more outside sample values are to be excluded from a final value of the first pixel based on the one or more outside sample values being outside the stencil mask, and
determine the final value for the first pixel based on the one or more inside sample values but not the one or more outside sample values.

### Claim 2 (depends on 1)

The system of claim 1, further comprising:
a compositor communicatively coupled to the shader to composite a first result of the first shader pass and a second result of a second shader pass into a render target.

### Claim 3 (depends on 1)

The system of claim 1, wherein:
the plurality of pixels is to include a second pixel that is completely inside the stencil mask;
the anti-aliasing operation is to generate one or more second sample values for the second pixel; and
the resolver is to determine a final value for the second pixel based on all of the one or more second sample values.

### Claim 4

A graphics apparatus, comprising:
a mask buffer to store a mask;
a shader communicatively coupled to the mask buffer to apply the mask to a first shader pass that is to include an anti-aliasing operation on a plurality of pixels, wherein the plurality of pixels is to include a first pixel having an inside portion, that is inside the mask, and an outside portion that is outside the mask, wherein the anti-aliasing operation is to generate one or more inside sample values for the inside portion and one or more outside sample values for the outside portion; and
a resolver communicatively coupled to the mask buffer to apply the mask to a resolve pass to:
determine that the one or more outside sample values are to be excluded from a final value of the first pixel based on the one or more outside sample values being outside the mask, and
determine the final value for the first pixel based on the one or more inside sample values but not the one or more outside sample values.

### Claim 5 (depends on 4)

The apparatus of claim 4, wherein the anti-aliasing operation is to include a multi-sample anti-aliasing operation.

### Claim 6 (depends on 4)

The apparatus of claim 4, wherein the shader is further to apply an inverse of the mask to a second shader pass.

### Claim 7 (depends on 6)

The apparatus of claim 6, further comprising:
a compositor communicatively coupled to the shader to composite a first result of the first shader pass and a second result of the second shader pass into a render target.

### Claim 8 (depends on 4)

The apparatus of claim 4, wherein the mask corresponds to a foveated render area.

### Claim 9 (depends on 4)

The apparatus of claim 4, wherein the mask comprises a stencil mask.

### Claim 10 (depends on 4)

The apparatus of claim 4, wherein:
the plurality of pixels is to include a second pixel that is completely inside the mask;
the anti-aliasing operation is to generate one or more second sample values for the second pixel; and
the resolver is to determine a final value for the second pixel based on all of the one or more second sample values.

### Claim 11

A method of processing graphics, comprising:
applying a mask to a first shader pass that includes anti-aliasing a plurality of pixels, wherein the plurality of pixels is to include a first pixel having an inside portion, that is inside the mask, and an outside portion that is outside the mask, wherein the anti-aliasing generates one or more inside sample values for the inside portion and one or more outside sample values for the outside portion; and
applying the mask to a resolve pass, wherein the applying includes:
determining that the one or more outside sample values are to be excluded from a final value of the first pixel based on the one or more outside sample values being outside the mask, and
determining the final value for the first pixel based on the one or more inside sample values but not the one or more outside sample values.

### Claim 12 (depends on 11)

The method of claim 11, wherein the anti-aliasing includes multi-sample anti-aliasing.

### Claim 13 (depends on 11)

The method of claim 11, further comprising:
applying an inverse of the mask to a second shader pass.

### Claim 14 (depends on 13)

The method of claim 13, further comprising:
compositing a first result of the first shader pass and a second result of the second shader pass into a render target.

### Claim 15 (depends on 11)

The method of claim 11, wherein the mask corresponds to a foveated render area.

### Claim 16 (depends on 11)

The method of claim 11, wherein the mask comprises a stencil mask.

### Claim 17 (depends on 11)

The method of claim 11, wherein:
the plurality of pixels is to include a second pixel that is completely inside the mask;
the anti-aliasing generates one or more second sample values for the second pixel; and
the method further comprises determining a final value for the second pixel based on all of the one or more second sample values.

### Claim 18

At least one non-transitory computer readable medium, comprising a set of instructions, which when executed by a computing device cause the computing device to:
apply a mask to a first shader pass that is to include an anti-aliasing operation on a plurality of pixels, wherein the plurality of pixels is to include a first pixel having an inside portion, that is inside the mask, and an outside portion that is outside the mask, wherein the anti-aliasing operation is to generate one or more inside sample values for the inside portion and one or more outside sample values for the outside portion; and
apply the mask to a resolve pass to:
determine that the one or more outside sample values are to be excluded from a final value of the first pixel based on the one or more outside sample values being outside the mask, and
determine the final value for the first pixel based on the one or more inside sample values but not the one or more outside sample values.

### Claim 19 (depends on 18)

The at least one non-transitory computer readable medium of claim 18, wherein the anti-aliasing operation is to include a multi-sample anti-aliasing operation.

### Claim 20 (depends on 18)

The at least one non-transitory computer readable medium of claim 18, comprising a further set of instructions, which when executed by a computing device cause the computing device to:
apply an inverse of the mask to a second shader pass.

### Claim 21 (depends on 20)

The at least one non-transitory computer readable medium of claim 20, comprising a further set of instructions, which when executed by a computing device cause the computing device to:
composite a first result of the first shader pass and a second result of the second shader pass into a render target.

### Claim 22 (depends on 18)

The at least one non-transitory computer readable medium of claim 18, wherein the mask corresponds to a foveated render area.

### Claim 23 (depends on 18)

The at least one non-transitory computer readable medium of claim 18, wherein the mask comprises a stencil mask.

### Claim 24 (depends on 18)

The at least one non-transitory computer readable medium of claim 18, wherein:
the plurality of pixels is to include a second pixel that is completely inside the mask;
the anti-aliasing operation is to generate one or more second sample values for the second pixel; and
the at least one non-transitory computer readable medium comprises a further set of instructions, which when executed by a computing device cause the computing device to determine a final value for the second pixel based on all of the one or more second sample values.
