| // SPDX-License-Identifier: Apache-2.0 OR MIT OR Unlicense |
| |
| // Common datatypes for path and tile intermediate info. |
| |
| struct Path { |
| // bounding box in tiles |
| bbox: vec4<u32>, |
| // offset (in u32's) to tile rectangle |
| tiles: u32, |
| } |
| |
| struct Tile { |
| backdrop: i32, |
| // This is used for the count of the number of segments in the |
| // tile up to coarse rasterization, and the index afterwards. |
| // In the latter variant, the bits are inverted so that tiling |
| // can detect whether the tile was allocated; it's best to |
| // consider this an enum packed into a u32. |
| segment_count_or_ix: u32, |
| } |