// Copyright (c) 2023 Lachlan McDonald // This work is licensed under the MIT License (MIT) // https://github.com/lachlanmcdonald/magicavoxel-shaders // // xs knife_z // // xs_begin // author : '@lmcdx.bsky.social' // xs_end bool isSelectedPal(float p) { for (int i = 0; i < i_num_color_sels; i += 1) { if (p == color_sel(float(i))) { return true; } } return false; } float map(vec3 v) { float a[256]; int count = 0; for (float z = 0.0; z <= i_volume_size.z; z += 1.0) { float k = voxel(vec3(v.xy, z)); if (isSelectedPal(k) == false) { a[count] = k; count += 1; } } if (v.z >= float(count)) { return 0.0; } else { int n = int(v.z); return a[n]; } }