System and method for simulation of brush-based painting in a color space that includes a fill channel
First Claim
1. A method, comprising:
- executing an image editing application on a processor of a computer to perform;
storing, in a data structure, a fill channel value that represents an amount of paint stored per pixel on a brush tool, the data structure configured to store one or more color channel values, an opacity channel value, and the fill channel value for a given color space;
storing the one or more color channel values that represent at least one color of a source pixel of the brush tool;
storing the opacity channel value for the source pixel;
receiving an input of an image editing operation to apply the paint from the source pixel to a destination pixel;
calculating a consequent color of the destination pixel based on the fill channel value of the source pixel as a result of the image editing operation; and
displaying the consequent color of the destination pixel.
2 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for performing brush behavior simulation in an image editing application may facilitate realistic paint simulation by the addition of a fill channel to a color space representation that includes a set of color channels and an alpha channel representing opacity of the paint. The fill channel value for each pixel of a brush model or canvas may represent the amount of paint stored at the pixel. The system may include logic to support paint compositing, mixing, and depletion operations that calculate a consequent color of a destination pixel resulting from the operations dependent on the fill channel values for the source and/or destination pixels. The resulting color channel, opacity channel, and fill channel values may be converted to a color space that does not include a fill channel or opacity channel for display. A source pixel may be a pixel of an atomic element of a texture.
18 Citations
20 Claims
-
1. A method, comprising:
executing an image editing application on a processor of a computer to perform; storing, in a data structure, a fill channel value that represents an amount of paint stored per pixel on a brush tool, the data structure configured to store one or more color channel values, an opacity channel value, and the fill channel value for a given color space; storing the one or more color channel values that represent at least one color of a source pixel of the brush tool; storing the opacity channel value for the source pixel; receiving an input of an image editing operation to apply the paint from the source pixel to a destination pixel; calculating a consequent color of the destination pixel based on the fill channel value of the source pixel as a result of the image editing operation; and displaying the consequent color of the destination pixel. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
10. A computer-readable storage memory comprising stored program instructions that are executable by one or more processors to perform:
-
storing, in a data structure, a fill channel value that represents an amount of paint stored per pixel on a brush tool, the data structure configured to store one or more color channel values, an opacity channel value, and the fill channel value for a given color space; storing the one or more color channel values that represent at least one color of a source pixel of the brush tool; storing the opacity channel value for the source pixel; receiving an input of an image editing operation to apply the paint from the source pixel to a destination pixel; calculating a consequent color of the destination pixel based on the fill channel value of the source pixel as a result of the image editing operation; and displaying the consequent color of the destination pixel. - View Dependent Claims (11, 12, 13, 14, 15)
-
-
16. A system, comprising:
-
a memory comprising a data structure configured to store one or more color channel values, an opacity channel value, and a fill channel value for a given color space; one or more processors to execute an image editing application that is configured to; store, in the data structure, the fill channel value that represents an amount of paint stored per pixel on a brush tool; store the one or more color channel values that represent at least one color of a source pixel of the brush tool; store the opacity channel value for the source pixel; receive an input of an image editing operation to apply the paint from the source pixel to a destination pixel; calculate a consequent color of the destination pixel based on the fill channel value of the source pixel as a result of the image editing operation; and display the consequent color of the destination pixel. - View Dependent Claims (17, 18, 19, 20)
-
Specification