android - OpenGL ES 减去几何体

标签 android geometry opengl-es-2.0

起初,为了避免误解,opengl es 只适用于三角形。

我有一个矩形(三角形 strip ),是否可以在该矩形中切割一个圆孔(或更多孔)。 都是二维的。

最佳答案

opengl 不支持真正的几何减法,但它可以很容易地用深度缓冲区或模板缓冲区伪造。

  1. 遮住你的颜色,这样颜色缓冲区就不会被绘制:
    glColorMask(false, false, false, false)
  2. 将您的“洞”绘制到场景中,将值存入深度缓冲区(值小于三角形带)或模板缓冲区。

  3. 禁用颜色 mask ,然后在启用深度或模板测试的情况下渲染三角形带。您之前绘制的区域将被遮盖,因此您将留下一个中间有孔的矩形。

关于android - OpenGL ES 减去几何体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11568711/

相关文章:

android - 使用 Android Beam less API 级别 14

python - 找到给定点的最小面积矩形以计算长轴和短轴长度的算法

iphone - OPENGL ES 2.0 在屏幕上呈现文本

android - Andengine MotionStreak示例及截图

java - Android(Java)性能问题?

java - 使用 JNI 从 C++ 调用 JAVA 方法,无参数

java - 如何使用 Android Sdk 在 aws S3 存储桶中创建空文件夹?

java - 编译器错误说我不重写抽象方法 keyReleased

algorithm - 形成三角形

java - Android OpenGL ES 以纵横比全屏显示图像