# US 10,121,222 B2 · Bandwidth efficient method for generating an alpha hint buffer

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

- Number: US 10,121,222 B2
- Document ID: US10121222B2
- Status: Granted
- Kind: B2
- Application number: 15/242,478
- Filed: 2016-08-19
- Published: 2017-07-27
- Granted: 2018-11-06
- Earliest claimed: 2016-01-22
- Assignees: Mediatek Inc.
- Applicants: MediaTek Inc.
- Inventors: Ying-Chieh Chen; I-Hsuan Lu; Shih-Chin Lin
- Web page: https://patentgrep.com/patent/US10121222B2

## CPC

- G06T 11/40: Filling planar surfaces by adding surface attributes, e.g. adding colours or textures
- G06T 1/60: Memory management
- G06T 11/60: Creating or editing images; Combining images with text
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL

## Abstract

A graphics processing unit (GPU) renders graphical objects into a group of pixels and stores the pixels in an on-chip buffer on the same chip as the GPU. Each pixel has an alpha value that indicates transparency of the pixel. The GPU reads the alpha value of each pixel from the on-chip buffer. According to alpha values of the group of pixels, the GPU generates an alpha hint in the system memory for the group of pixels. The alpha hint represents an aggregate of the alpha values of the group of pixels. The GPU then stores the group of pixels into a frame buffer in the system memory.

## Claims

### Claim 1

A method for generating an alpha hint in a system memory to reduce memory access, the method comprising:
rendering, by a graphical processing unit (GPU), graphical objects into a group of pixels stored in an on-chip buffer on a same chip as the GPU;
reading an alpha value of each pixel from the on-chip buffer, the alpha value indicating transparency of the pixel;
generating the alpha hint in the system memory for the group of pixels according to alpha values of the group of pixels, the alpha hint representing an aggregate of the alpha values; and
storing the group of pixels into a frame buffer in the system memory,
wherein generating the alpha hint further comprises concurrently setting different bits of the alpha hint according to the alpha values of two or more pixels in the group.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
executing, by a fragment shader, shader codes to read the alpha value and to generate the alpha hint.

### Claim 3 (depends on 2)

The method of claim 2, further comprising:
executing a list of commands including a number of draw calls and the draw hint command.

### Claim 4 (depends on 1)

The method of claim 1, wherein the alpha hint is a binary value that indicates at least whether the group of pixels are all fully-transparent and whether the group of pixels are all fully-opaque.

### Claim 5 (depends on 1)

The method of claim 1, wherein generating the alpha hint further comprises:
setting a first bit of the alpha hint when a pixel in the group is fully-transparent; and
keeping the first bit set for the group of pixels.

### Claim 6 (depends on 1)

The method of claim 1, wherein generating the alpha hint further comprises:
setting a second bit of the alpha hint when a pixel in the group is fully-opaque; and
keeping the second bit set for the group of pixels.

### Claim 7 (depends on 1)

The method of claim 1, wherein generating the alpha hint further comprises:
performing atomic OR operations to serialize write access to the alpha hint.

### Claim 8 (depends on 1)

The method of claim 1, wherein generating the alpha hint further comprises:
performing, for each pixel in the group, an atomic OR operation on a current value of the alpha hint and a binary mask determined from the alpha value of the pixel.

### Claim 9 (depends on 1)

The method of claim 1, further comprising:
rendering a next group of pixels concurrently with generating the alpha hint in the system memory.

### Claim 10

A graphics device for generating an alpha hint in a system memory to reduce memory access, the graphics device comprising:
an on-chip buffer; and
rendering hardware to render graphical objects into a group of pixels and store the group of pixels in the on-chip buffer,
wherein the rendering hardware is further operative to:
read an alpha value of each pixel from the on-chip buffer, the alpha value indicating transparency of the pixel,
generate the alpha hint in the system memory for the group of pixels according to alpha values of the group of pixels, the alpha hint representing an aggregate of the alpha values,
concurrently set different bits of the alpha hint according to the alpha values of two or more pixels in the group, and
store the group of pixels into a frame buffer in the system memory.

### Claim 11 (depends on 10)

The graphics device of claim 10, wherein the rendering hardware includes a fragment shader operative to execute shader codes to read the alpha value and to generate the alpha hint.

### Claim 12 (depends on 11)

The graphics device of claim 11, wherein the rendering hardware is further operative to execute a list of commands including a number of draw calls and the draw hint command.

### Claim 13 (depends on 10)

The graphics device of claim 10, wherein the alpha hint is a binary value that indicates at least whether the group of pixels are all fully-transparent and whether the group of pixels are all fully-opaque.

### Claim 14 (depends on 10)

The graphics device of claim 10, wherein the rendering hardware is further operative to set a first bit of the alpha hint when a pixel in the group is fully-transparent, and to keep the first bit set for the group of pixels.

### Claim 15 (depends on 10)

The graphics device of claim 10, wherein the rendering hardware is further operative to set a second bit of the alpha hint when a pixel in the group is fully-opaque, and to keep the second bit set for the group of pixels.

### Claim 16 (depends on 10)

The graphics device of claim 10, wherein the rendering hardware is further operative to perform atomic OR operations to serialize write access to the alpha hint.

### Claim 17 (depends on 10)

The graphics device of claim 10, wherein the rendering hardware is further operative to perform, for each pixel in the group, an atomic OR operation on a current value of the alpha hint and a binary mask determined from the alpha value of the pixel.

### Claim 18 (depends on 10)

The graphics device of claim 10, wherein the rendering hardware is further operative to render a next group of pixels concurrently with generation of the alpha hint in the system memory.
