float factor = (i.worldPosition.y % 2) / 2; // divides the world into chnks of y 2
...
//color tint on height
col.rgb = _Tint.rgb * clamp(factor + 1, 0, 2);
我使用着色器来制作草。草由一堆平面组成,它们的透明度根据它们的 worldPosition.y 进行切割。 现在,因为块是 2 的绝对 y 块,当法线不是直指向上时,可能会导致错误,新块开始得太早,导致这些部分的草丛变黑。
我的问题是,如何对 y 进行分块,同时尊重顶点 y 法线。