碎片丢弃留下奇怪的像素图案
Fragment discard leaves strange pixel pattern
我在 SCNShadable
片段入口点中使用了一个 OpenGL ES 片段来丢弃对象的一部分。我得到这个结果:
那是顶点颜色还是法线?一直试图摆脱他们,但没有成功。片段片段如下所示:
varying float clipFragment;
#pragma body
if (clipFragment == 1.0) {
discard;
}
似乎错误在于我在这个小测试中如何选择要丢弃的几何点,因为如果我说剪切所有内容,它是不可见的。
varying float clipFragment;
#pragma body
if (_geometry.position.z >= 0.0) {
clipFragment = 1.0;
} else {
clipFragment = 0.0;
}
有谁知道如何在 SceneKit 的上下文中去除这些像素?
舍入误差
通过更改片段中的测试,它起作用了
varying float clipFragment;
#pragma transparent
#pragma body
if (clipFragment > 0.0) {
discard;
}
我在 SCNShadable
片段入口点中使用了一个 OpenGL ES 片段来丢弃对象的一部分。我得到这个结果:
那是顶点颜色还是法线?一直试图摆脱他们,但没有成功。片段片段如下所示:
varying float clipFragment;
#pragma body
if (clipFragment == 1.0) {
discard;
}
似乎错误在于我在这个小测试中如何选择要丢弃的几何点,因为如果我说剪切所有内容,它是不可见的。
varying float clipFragment;
#pragma body
if (_geometry.position.z >= 0.0) {
clipFragment = 1.0;
} else {
clipFragment = 0.0;
}
有谁知道如何在 SceneKit 的上下文中去除这些像素?
舍入误差
通过更改片段中的测试,它起作用了
varying float clipFragment;
#pragma transparent
#pragma body
if (clipFragment > 0.0) {
discard;
}