Iphone 使用深度缓冲区而不是模具缓冲区进行剪裁
在较旧的iOS设备上,模具缓冲区不可用。此外,剪刀只适用于简单的矩形。对于更一般的剪辑,我们可以使用深度缓冲区吗?为了使事情变得简单,让我们假设我们只在二维中绘制 另外,我的具体要求是能够旋转剪切矩形。是的,绝对可以。例如(编码为I型): 因此,主要特点是:Iphone 使用深度缓冲区而不是模具缓冲区进行剪裁,iphone,ios,opengl-es,Iphone,Ios,Opengl Es,在较旧的iOS设备上,模具缓冲区不可用。此外,剪刀只适用于简单的矩形。对于更一般的剪辑,我们可以使用深度缓冲区吗?为了使事情变得简单,让我们假设我们只在二维中绘制 另外,我的具体要求是能够旋转剪切矩形。是的,绝对可以。例如(编码为I型): 因此,主要特点是: 深度测试可以设置为始终通过 即使设置了其他缓冲区值,也可以禁用颜色打印 是的,绝对是。例如(编码为I型): 因此,主要特点是: 深度测试可以设置为始终通过 即使设置了其他缓冲区值,也可以禁用颜色打印 在执行glColorMask(GL\
- 深度测试可以设置为始终通过
- 即使设置了其他缓冲区值,也可以禁用颜色打印 是的,绝对是。例如(编码为I型): 因此,主要特点是:
- 深度测试可以设置为始终通过
- 即使设置了其他缓冲区值,也可以禁用颜色打印
glEnable(GL_DEPTH_TEST); // to enable writing to the depth buffer
glDepthFunc(GL_ALWAYS); // to ensure everything you draw passes
glDepthMask(GL_TRUE); // to allow writes to the depth buffer
glColorMask(GL_FALSE, GL_FALSE, GL_FALSE, GL_FALSE);
// so that whatever we draw isn't actually visible
glClear(GL_DEPTH_BUFFER_BIT); // for a fresh start
/* here: draw geometry to clip to the inside of, e.g. at z = -2 */
glDepthFunc(GL_GREATER); // so that the z test will actually be applied
glColorMask(GL_TRUE, GL_TRUE, GL_TRUE, GL_TRUE);
// so that pixels are painted again...
glDepthMask(GL_FALSE); // ... but don't change the clip area
/* here: draw the geometry to clip inside the old shape at a z further than -2 */