c++ - 在特定坐标后停止在 OpenGL 上渲染纹理

标签 c++ opengl

我怎么能绕过创建纹理渲染位置的限制。有点像当另一半在窗口外时你只能看到一半的纹理。我一直无法用谷歌搜索这个,因为像“边界”或“限制”之类的任何东西都会把我引向其他主题。

例如,我有一个可以用键盘四处移动的正方形,我希望它不渲染正方形的任何越过红线的部分:

enter image description here

我该怎么做呢?

最佳答案

这通常通过以下方式实现:

  • 剪刀测试(矩形区域)
  • 模板测试(针对自由区域)
  • 裁剪平面(对于 3D 平面)
  • 着色器中的自定义代码(用于现代 OpenGL 和完全控制)

关于c++ - 在特定坐标后停止在 OpenGL 上渲染纹理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37244781/

相关文章:

c++ - 将结构与 std140 对齐,CPU 端

c++ - 仅保留重复值 - Vectors C++

open-source - 在哪里可以下载“OpenGL”的源代码?

c++ - 如何使用 Freetype 沿基线对齐字形?

opengl - 基于索引的纹理高度图(OpenGL/GLSL)

c++ - glutSpecialFunc 只捕获一些键

c++ - Qt 对于我的上限带宽来说太大了。我有什么选择?

c# - 带有 Arduino 的 Alt-Tab 踏板

c++ - 下面的代码是否将字符转换为其 ASCII 值?

Java - 描述正确的面(缠绕)