在我的Nvidia Shield平板电脑上对该应用程序进行测试期间,它仅显示线框,而不填充多边形。同一应用程序可以在LG G6手机上以及Windows中作为UWP应用程序正确呈现(填充的多边形)。我正在使用Visual Studio 2019社区通过opengl ES 2.0在c ++中进行编码。查看平板电脑上的调试设置,找不到“强制线框”之类的内容。我不知道我应该在这篇文章中包括代码的哪一部分。我正在使用android 7.0,这是该平板电脑的最新版本。是否有人在其他设备上也遇到过相同的问题?
找到了:那是像素阴影。舍入显然不能很好地在nvidia盾上实现:
gl_FragColor = vColor*smoothstep(0.0, length(fwidth(vTexcoord)), 1.0 - length(vTexcoord)); //doesn't work
gl_FragColor = vColor*smoothstep(0.0, length(fwidth(vTexcoord)), 0.9999 - length(vTexcoord)); //works