Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有一个 2D 纹理,比如这个,我现在只是直接放到地形上。
然后我在该纹理之上渲染树叶。
我想(使用片段着色器)获取草下方纹理的颜色,并将草设置为它下方纹理的颜色。
为此,我需要获取地形上每个草顶点相对于纹理的位置。
然后我需要获取与对象位置对应的纹理颜色,并将其与当前的草颜色混合(假设我有红色草用于演示目的)。
我目前不确定如何开始。我知道我需要通过着色器获取草在世界中的 X 和 Z 位置(我目前没有),但是我需要计算出相应的纹理像素,我目前不知道该怎么做。
任何有助于解决此问题的建议将不胜感激。
主要思想是将位置坐标作为纹理坐标传递。
希望我计算正确
您有一个放置高度图的矩形,让位置坐标相对于该矩形。在这种情况下,如果你的高度图是 NxM,纹理坐标是 1x1,你可以将位置归一化为 0..1,然后你就得到了一个纹理坐标。
现在有了这个纹理坐标,您可以让颜色通过纹理作为制服。
我希望它很清楚并满足您的问题,但我也愿意看到澄清。