-
公开(公告)号:US11232613B1
公开(公告)日:2022-01-25
申请号:US17068419
申请日:2020-10-12
Applicant: Adobe Inc.
Inventor: Harish Kumar , Anmol Sud
Abstract: Curve antialiasing based on curve-pixel intersection is leveraged in a digital medium environment. For instance, to apply antialiasing according to techniques described herein, curves of a visual object are mapped from an original pixel space to a virtual pixel space. Virtual pixels of the virtual pixel space that are intersected by the mapped curves are identified and aggregated as intersected virtual pixels. The intersected virtual pixels are then mapped back into the original pixel space to identify which intersected virtual pixels positionally coincide with respective original pixels of the original pixel space. Intersected virtual pixels are mapped to original pixels to generate pixel coverage for original pixels. The generated pixel coverage values for original pixels are applied to render antialiased curves as part of an antialiased version of the original visual object.
-
公开(公告)号:US20220139009A1
公开(公告)日:2022-05-05
申请号:US17572546
申请日:2022-01-10
Applicant: Adobe Inc.
Inventor: Harish Kumar , Anmol Sud
Abstract: Curve antialiasing based on curve-pixel intersection is leveraged in a digital medium environment. For instance, to apply antialiasing according to techniques described herein, curves of a visual object are mapped from an original pixel space to a virtual pixel space. Virtual pixels of the virtual pixel space that are intersected by the mapped curves are identified and aggregated as intersected virtual pixels. The intersected virtual pixels are then mapped back into the original pixel space to identify which intersected virtual pixels positionally coincide with respective original pixels of the original pixel space. Intersected virtual pixels are mapped to original pixels to generate pixel coverage for original pixels. The generated pixel coverage values for original pixels are applied to render antialiased curves as part of an antialiased version of the original visual object.
-
公开(公告)号:US20220366621A1
公开(公告)日:2022-11-17
申请号:US17307219
申请日:2021-05-04
Applicant: Adobe Inc.
Inventor: Harish Kumar , Anmol Sud
Abstract: In implementations of systems for generating anti-aliased vector objects, a computing device implements an anti-aliasing system to receive input data describing a Bezier curve of a vector object. The anti-aliasing system generates an aliased curve by rasterizing the Bezier curve in a pixel space having pixels including intersected pixels that are intersected by the aliased curve and non-intersected pixels that are not intersected by the aliased curve. The anti-aliasing system segments the pixels into segments in a virtual space, and the segments have a higher density than the pixels. An intersected segment is identified that is intersected by a portion of the aliased curve in the virtual space. The anti-aliasing system determines a winding number for the intersected segment and generates a portion of an anti-aliased curve for display in a user interface by applying a color value to a coverage mask for an intersected pixel of the pixels.
-
公开(公告)号:US11010939B2
公开(公告)日:2021-05-18
申请号:US16568907
申请日:2019-09-12
Applicant: Adobe Inc.
Inventor: Harish Kumar , Anmol Sud
Abstract: Techniques are disclosed for a graphics processing unit (GPU) to process cubic Bezier curves, and render the cubic Bezier curves. In an example, the GPU receives a cubic Bezier curve. For example, a graphics pipeline of the GPU receives a plurality of corner points of a control polygon in the form of a patch primitive, the control polygon representing the cubic Bezier curve. The graphics pipeline tessellates the cubic Bezier curve into multiple quadratic Bezier curves, such that the multiple quadratic Bezier curves approximate the cubic Bezier curve. The number of quadratic Bezier curves generated in such a manner is adaptively based on a zoom level at which the cubic Bezier curve is to be displayed. For example, as and when the zoom level changes, new number of such quadratic Bezier curves are tessellated from the cubic Bezier curve. The quadratic Bezier curves are then rendered for display.
-
公开(公告)号:US11417058B2
公开(公告)日:2022-08-16
申请号:US17019881
申请日:2020-09-14
Applicant: Adobe Inc.
Inventor: Harish Kumar , Anmol Sud
Abstract: Methods, systems, and non-transitory computer readable storage media are disclosed for utilizing a central processing unit to generate a compressed multi-vertex buffer to include rendering data from tessellated geometry of a two-dimensional vector graphic for rendering the two-dimensional vector graphic via a GPU rendering pipeline. For example, the disclosed system generates an expanded geometry for control triangles within the tessellated geometry based on an anti-aliasing direction. The disclosed system generates multi-vertex buffer entries including vertex locations and visual attributes (e.g., color, primitive type, anti-aliasing direction, stroke width) of the vector paths corresponding to each triangle in the tessellated geometry. Furthermore, the disclosed system renders the two-dimensional vector graphic by passing the rendering data stored in the compressed multi-vertex buffer to the graphics processing unit in a manner that the graphics processing unit is able to process.
-
公开(公告)号:US11348287B2
公开(公告)日:2022-05-31
申请号:US16036647
申请日:2018-07-16
Applicant: Adobe Inc.
Inventor: Harish Kumar , Anmol Sud
Abstract: A technique and computing device to render graphic objects associated with pattern paint in a digital medium environment are disclosed. The computing device comprises a graphics processing unit. The graphics processing unit associates a first surface to a framebuffer of the computing device, renders pattern cells at the first surface, and associates a second surface to the framebuffer of the computing device. The pattern cells correspond to pattern paints, and the pattern cells are rendered at the first surface independent of the sequential order of the pattern cells for rendering pattern paint. The graphics processing unit renders graphic objects associated with the pattern paints, and the graphic objects are rendered at the second surface in sequential order for rendering pattern paint.
-
公开(公告)号:US20210082165A1
公开(公告)日:2021-03-18
申请号:US16568907
申请日:2019-09-12
Applicant: Adobe Inc.
Inventor: Harish Kumar , Anmol Sud
Abstract: Techniques are disclosed for a graphics processing unit (GPU) to process cubic Bezier curves, and render the cubic Bezier curves. In an example, the GPU receives a cubic Bezier curve. For example, a graphics pipeline of the GPU receives a plurality of corner points of a control polygon in the form of a patch primitive, the control polygon representing the cubic Bezier curve. The graphics pipeline tessellates the cubic Bezier curve into multiple quadratic Bezier curves, such that the multiple quadratic Bezier curves approximate the cubic Bezier curve. The number of quadratic Bezier curves generated in such a manner is adaptively based on a zoom level at which the cubic Bezier curve is to be displayed. For example, as and when the zoom level changes, new number of such quadratic Bezier curves are tessellated from the cubic Bezier curve. The quadratic Bezier curves are then rendered for display.
-
公开(公告)号:US10403040B2
公开(公告)日:2019-09-03
申请号:US15651753
申请日:2017-07-17
Applicant: Adobe Inc.
Inventor: Harish Kumar , Anmol Sud
Abstract: Vector graphics rendering techniques are described. Graphics processing units (GPUs) can render vector graphics images according to graphic trees having graphic leafs, each representing a graphics object (e.g., a shape) depicted in a vector graphics image. The described techniques involve generating groups of graphics objects depicted in an image such that graphics objects of a group have a same object type, e.g., shape. Transformations are determined that describe how to transform a first graphics object of a group to obtain other graphics objects of the group. The first graphics object is tessellated and a metadata buffer generated for the group having information indicative of the transformations. The metadata buffer is attached to a graphic leaf representing the first graphics object and graphic leafs representing the other graphics objects are removed from the graphic tree. The GPU renders objects by group based on the tessellated object and the metadata buffer's information.
-
公开(公告)号:US12026809B2
公开(公告)日:2024-07-02
申请号:US17307219
申请日:2021-05-04
Applicant: Adobe Inc.
Inventor: Harish Kumar , Anmol Sud
CPC classification number: G06T11/203 , G06T11/40 , G06T11/60
Abstract: In implementations of systems for generating anti-aliased vector objects, a computing device implements an anti-aliasing system to receive input data describing a Bezier curve of a vector object. The anti-aliasing system generates an aliased curve by rasterizing the Bezier curve in a pixel space having pixels including intersected pixels that are intersected by the aliased curve and non-intersected pixels that are not intersected by the aliased curve. The anti-aliasing system segments the pixels into segments in a virtual space, and the segments have a higher density than the pixels. An intersected segment is identified that is intersected by a portion of the aliased curve in the virtual space. The anti-aliasing system determines a winding number for the intersected segment and generates a portion of an anti-aliased curve for display in a user interface by applying a color value to a coverage mask for an intersected pixel of the pixels.
-
公开(公告)号:US11645793B2
公开(公告)日:2023-05-09
申请号:US17572546
申请日:2022-01-10
Applicant: Adobe Inc.
Inventor: Harish Kumar , Anmol Sud
CPC classification number: G06T11/203 , G06T3/40 , G06T11/001 , G06T11/60 , G06T2200/12
Abstract: Curve antialiasing based on curve-pixel intersection is leveraged in a digital medium environment. For instance, to apply antialiasing according to techniques described herein, curves of a visual object are mapped from an original pixel space to a virtual pixel space. Virtual pixels of the virtual pixel space that are intersected by the mapped curves are identified and aggregated as intersected virtual pixels. The intersected virtual pixels are then mapped back into the original pixel space to identify which intersected virtual pixels positionally coincide with respective original pixels of the original pixel space. Intersected virtual pixels are mapped to original pixels to generate pixel coverage for original pixels. The generated pixel coverage values for original pixels are applied to render antialiased curves as part of an antialiased version of the original visual object.
-
-
-
-
-
-
-
-
-