Add comments to help explain msaa logic

To say that the msaa logic is dense and hard to understand is an understatement. I've added some comments which will I hope will help the reader navigate the code, but ultimately it requires a real explanation.

While reviewing the code, I realized that horizontal pixel-aligned lines are already being discarded by separate robustness logic, so that case doesn't need to be handled in is_bump, so I took it out.
diff --git a/crates/encoding/src/path.rs b/crates/encoding/src/path.rs
index c1c521d..fb97f2d 100644
--- a/crates/encoding/src/path.rs
+++ b/crates/encoding/src/path.rs
@@ -207,6 +207,7 @@
 #[derive(Clone, Copy, Debug, Zeroable, Pod, Default)]
 #[repr(C)]
 pub struct PathSegment {
+    // Points are relative to tile origin
     pub point0: [f32; 2],
     pub point1: [f32; 2],
     pub y_edge: f32,
diff --git a/shader/fine.wgsl b/shader/fine.wgsl
index 8e3046f..80c3494 100644
--- a/shader/fine.wgsl
+++ b/shader/fine.wgsl
@@ -224,6 +224,8 @@
             let dy = xy1.y - xy0.y;
             let idxdy = 1.0 / (dx + dy);
             var a = dx * idxdy;
+            // is_positive_slope is true for \ and | slopes, false for /. For
+            // horizontal lines, it follows the original data.
             let is_positive_slope = xy1.x >= xy0.x;
             let x_sign = select(-1.0, 1.0, is_positive_slope);
             let xt0 = floor(xy0.x * x_sign);
@@ -244,15 +246,29 @@
             let z = floor(zf);
             let x = x0i + i32(x_sign * z);
             let y = i32(y0i) + i32(sub_ix) - i32(z);
+            // is_delta captures whether the line crosses the top edge of this
+            // pixel. If so, then a delta is added to `sh_winding`, followed by
+            // a prefix sum, so that a winding number delta is applied to all
+            // pixels to the right of this one.
             var is_delta: bool;
-            // We need to adjust winding number if slope is positive and there
-            // is a crossing at the left edge of the pixel.
+            // is_bump captures whether x0 crosses the left edge of this pixel.
             var is_bump = false;
             let zp = floor(a * f32(sub_ix - 1u) + b);
             if sub_ix == 0u {
-                is_delta = y0i == xy0.y && y0i != xy1.y;
+                // The first (top-most) pixel in the line. It is considered to be
+                // a line crossing when it touches the top of the pixel.
+                //
+                // Note: horizontal lines aligned to the pixel grid have already
+                // been discarded.
+                is_delta = y0i == xy0.y;
+                // The pixel is counted as a left edge crossing only at the left
+                // edge of the tile (and when it is not the top left corner,
+                // using logic analogous to tiling).
                 is_bump = xy0.x == 0.0 && y0i != xy0.y;
             } else {
+                // Pixels other than the first are a crossing at the top or on
+                // the side, based on the conservative line rasterization. When
+                // positive slope, the crossing is on the left.
                 is_delta = z == zp;
                 is_bump = is_positive_slope && !is_delta;
             }
@@ -584,12 +600,11 @@
             let x = x0i + i32(x_sign * z);
             let y = i32(y0i) + i32(sub_ix) - i32(z);
             var is_delta: bool;
-            // We need to adjust winding number if slope is positive and there
-            // is a crossing at the left edge of the pixel.
+            // See comments in nonzero case.
             var is_bump = false;
             let zp = floor(a * f32(sub_ix - 1u) + b);
             if sub_ix == 0u {
-                is_delta = y0i == xy0.y && y0i != xy1.y;
+                is_delta = y0i == xy0.y;
                 is_bump = xy0.x == 0.0;
             } else {
                 is_delta = z == zp;