Added gradient kernel

This commit is contained in:
Samuele Lorefice
2025-04-03 17:55:11 +02:00
parent 6fd430a670
commit 86c0e97672

View File

@@ -69,5 +69,15 @@ public partial class SdfKernels {
sdf[index] = new(minDist);
}
}
private static void GradientKernel(Index2D index,
ArrayView2D<Vector3, Stride2D.DenseX> mask,
ArrayView2D<Vector3, Stride2D.DenseX> sdfa,
ArrayView2D<Vector3, Stride2D.DenseX> sdfb,
ArrayView2D<Vector3, Stride2D.DenseX> gradient
) { //early exit if not on mask
if(mask[index].X == 0f || mask[index].Y == 0f) return;
float a = sdfa[index].X; float b = sdfb[index].X;
gradient[index] = new (a / (a + b));
}
}