2017-04-12 60 views
0

有没有什么办法摆脱使用Frac或FMod引起的插值接缝?从编写实际的片段着色器来了,我觉得很奇怪,这个缝甚至存在(为什么插值像素采样发生?)FMod和Frac材质函数在纹理中造成接缝

例如,假设我们有这个超级简单的纹理

Simple Texture

而且我们希望右上角代替整个纹理循环,这很容易用FMod完成。

Artifact

正如你所看到的,一个工件现在从当UV跳到0.25〜0现在,我不知道为什么。有没有办法可以禁用这种插值?随着MSPAINT的力量,这是我希望看到:

Artifact removed

+0

是否有任何理由说明为什么您只需要选择左上角并重复它而不是使用单个图像并使用UV平铺?如果您使用原始纹理作为spritesheet,为什么不正确使用它? (https://docs.unrealengine.com/latest/INT/Engine/Paper2D/Sprites/) –

+0

感谢您的链接,但您正在查看该示例有点过分。我通过这个例子来以最简单的形式展示我正在谈论的问题。我的实际使用情况远非平凡,但受到fmod和frac造成的伪影的阻碍 - 基本上任何导致两个附近碎片之间的uvs的硬缝的东西都会导致它在它们之间的边界上做出奇怪的插值伪影。 –

回答

0

我找到了一个不错的临时解决方案。如果禁用mip-mapping(通过纹理本身的属性),那么工件消失。希望能有另一个描述如何在维护mipmap时执行此操作的答案。

相关问题