基于纹理像素而非屏幕的HLSL照明

时间:2018-06-21 18:02:30

标签: unity3d shader hlsl fragment-shader shaderlab

在HLSL中,我如何基于纹理的像素而不是构成对象的像素来计算照明?

换句话说,如果我在1024x768px的屏幕上渲染64x64px的纹理,我想计算光照,因为它会影响64x64px的空间,从而导致锯齿状像素而不是平滑线。

我已经研究了数十个答案,但是我不确定如何始终确定片段是否是应该完全点亮的像素的一部分。也许这是错误的方法?

当前实现使用漫反射纹理和法线贴图。结果是在输出中显示为伪像(对角线):

enter image description here

enter image description here

注意:几乎看起来正确的原因是由于法线贴图的缘故,这会导致一些相邻像素的法线的角度刚好足以点亮某些像素,而其他像素则没有。

0 个答案:

没有答案