diff --git a/SDFMapCreator/SdfKernels.Kernels.cs b/SDFMapCreator/SdfKernels.Kernels.cs index 81d663e..db33700 100644 --- a/SDFMapCreator/SdfKernels.Kernels.cs +++ b/SDFMapCreator/SdfKernels.Kernels.cs @@ -5,12 +5,14 @@ using ILGPU.Runtime; namespace SDFMapCreator; public partial class SdfKernels { + + private const float LUMA_THRESHOLD = 0.0f; static void SelfMaskKernel(Index2D index, ArrayView2D input, ArrayView2D mask) { var x = index.X; var y = index.Y; var value = input[x, y]; - var lumaA = (value.X + value.Y + value.Z) / 3f; - var r = lumaA > 0.99f ? 1f : 0f; + var lumaA = value.X; + var r = lumaA > LUMA_THRESHOLD ? 1f : 0f; mask[x, y] = new(r, 0f, 0f); } @@ -23,9 +25,9 @@ public partial class SdfKernels { var y = index.Y; var valueA = A[x, y]; var valueB = B[x, y]; - var lumaA = (valueA.X + valueA.Y + valueA.Z) / 3f; - var lumaB = (valueB.X + valueB.Y + valueB.Z) / 3f; - var r = lumaA > 0.99f && lumaB > 0.99f ? 1f : 0f; + var lumaA = valueA.X; + var lumaB = valueB.X; + var r = lumaA > LUMA_THRESHOLD || lumaB > LUMA_THRESHOLD ? 1f : 0f; mask[x, y] = new(r, 0f, 0f); }