diff --git a/SDFMapCreator/Program.cs b/SDFMapCreator/Program.cs index 143a26a..da25e8d 100644 --- a/SDFMapCreator/Program.cs +++ b/SDFMapCreator/Program.cs @@ -94,8 +94,8 @@ public class Program { var stepIncrement = MAX / (Gradients.Count); for (int x = 0; x < width; x++) - for (int y = 0; y < height; y++) - finalImage[x, y] = new Vector3(Images[0].Pixels[x, y].X); + for (int y = 0; y < height; y++) + finalImage[x, y] = new Vector3(Images[0].Pixels[x, y].X); for (var i = 0; i < Gradients.Count; i++) { var mask = ImageMasks[i + 1]; @@ -141,7 +141,7 @@ public class Program { sw.Stop(); Console.WriteLine( - $"\nEdge pixels: {maskData.Edges.Count} | {maskData.Edges.Count / (sw.ElapsedMilliseconds + 1)} pixels/s\n Time: {sw.Elapsed.TotalSeconds:F4}s"); + $"\nEdge pixels: {maskData.Edges.Count} | {width*height / (sw.ElapsedMilliseconds + 1)} pixels/s\n Time: {sw.Elapsed.TotalSeconds:F4}s"); } static Vector3[,] Gradient(TransitionMaskData mask, SDFData sdfA, SDFData sdfB) { @@ -172,9 +172,7 @@ public class Program { });*/ kernels.Gradient(mask.Mask, sdfA.SDF, sdfB.SDF, out var temp); - Console.WriteLine( - $"Gradient Time: {sw.Elapsed.TotalSeconds:N4}s ({iterCount / (float)sw.Elapsed.TotalSeconds:N0} pixels/s)"); - //Console.WriteLine($"Min: {min} | Max: {max}"); + Console.WriteLine($"Gradient Time: {sw.Elapsed.TotalSeconds:N4}s ({width*height / (float)sw.Elapsed.TotalSeconds:N0} pixels/s)"); return temp; } @@ -185,7 +183,7 @@ public class Program { kernels.Sdf(mask.Edges.ToArray(), (int)width, (int)height, out var temp); - Console.WriteLine($"\nSDF Generation Time: {sw.Elapsed.TotalSeconds:N4}s ({iterCount / sw.Elapsed.TotalSeconds:N0} pixels/s)"); + Console.WriteLine($"\nSDF Generation Time: {sw.Elapsed.TotalSeconds:N4}s ({width*height / sw.Elapsed.TotalSeconds:N0} pixels/s)"); return new(temp); } @@ -224,7 +222,7 @@ public class Program { where T : INumber, IMultiplyOperators, IAdditionOperators => a * (1 - t) + b * t; - static T Remap(T value, T min, T max, T newMin, T newMax) + public static T Remap(T value, T min, T max, T newMin, T newMax) where T : INumber, ISubtractionOperators, IMultiplyOperators, IAdditionOperators => (value - min) / (max - min) * (newMax - newMin) + newMin; } \ No newline at end of file diff --git a/SDFMapCreator/SDFMapCreator.csproj b/SDFMapCreator/SDFMapCreator.csproj index 07802ba..3ce362e 100644 --- a/SDFMapCreator/SDFMapCreator.csproj +++ b/SDFMapCreator/SDFMapCreator.csproj @@ -9,6 +9,7 @@ + diff --git a/SDFMapCreator/SdfKernels.cs b/SDFMapCreator/SdfKernels.cs index 02b0b6f..6e98d47 100644 --- a/SDFMapCreator/SdfKernels.cs +++ b/SDFMapCreator/SdfKernels.cs @@ -160,7 +160,7 @@ public partial class SdfKernels { accelerator.Synchronize(); - gradient = bufferMask.GetAsArray2D(); + gradient = bufferGradient.GetAsArray2D(); public void DirectionalBlur(Vector3[,] image, Vector3[,] mask, out Vector3[,] output, float radius = 3f, float step = .5f, float sigma = 1f) { var dev = gpuContext.GetPreferredDevice(preferCPU:false); @@ -197,4 +197,4 @@ public partial class SdfKernels { a.PrintInformation(infoString); return infoString.ToString(); } -} \ No newline at end of file +}