Webgl Web gl中的gl_PointSize零
我有一个顶点着色器,可以设置Webgl Web gl中的gl_PointSize零,webgl,fragment-shader,vertex-shader,glsles,Webgl,Fragment Shader,Vertex Shader,Glsles,我有一个顶点着色器,可以设置gl_PointSize=mix(0,5,step(foo,bar))。我的mac电脑配备Intel HD Graphics 5000,只渲染5点,而不是0点。另一台带有某种radeon的mac电脑将零渲染为一 我已经通读了gl_PointSize,但不了解gl_PointSize=0时所需的行为和不理解有关别名和舍入的位 如果我想“隐藏”某些点,我应该依赖gl\u PointSize=0甚至不光栅化点,还是应该使用其他方法 我想到两件事: //frag ... i
gl_PointSize=mix(0,5,step(foo,bar))代码>。我的mac电脑配备Intel HD Graphics 5000,只渲染5点,而不是0点。另一台带有某种radeon的mac电脑将零渲染为一
我已经通读了gl_PointSize,但不了解gl_PointSize=0时所需的行为代码>和不理解有关别名和舍入的位
如果我想“隐藏”某些点,我应该依赖gl\u PointSize=0代码>甚至不光栅化点,还是应该使用其他方法
我想到两件事:
//frag
...
if( vSomeVarying < 0.5 ) discard; //but why even rasterize, and this is still like rendering all the points regardless of the discard?
...
//vert
if( someValue < 0.5 ){
gl_Position.z = 2.; //should clip it?
}
//frag
...
如果(VsomeVariating<0.5),则丢弃//但为什么还要光栅化,而这仍然类似于渲染所有点,而不考虑丢弃?
...
//垂直
如果(某些值<0.5){
gl_Position.z=2;//是否应将其剪裁?
}
如果我想“隐藏”某些点,我应该依赖gl_PointSize=0。;甚至不光栅化点,或者我应该使用其他东西
使用其他方法,因为在第51页:
如果写入gl_PointSize
的值小于或等于零,则结果未定义
强制剪裁顶点是可行的
如果我想“隐藏”某些点,我应该依赖gl_PointSize=0。;甚至不光栅化点,或者我应该使用其他东西
使用其他方法,因为在第51页:
如果写入gl_PointSize
的值小于或等于零,则结果未定义
强制剪裁顶点有效。第二种解决方案似乎有效,将Z(或X或Y)设置在剪辑空间之外。第二种解决方案似乎有效,将Z(或X或Y)设置在剪辑空间之外。