OpenGL:使用退化三角形绘制线条
OpenGL : drawing line using degenerate triangle
在我的引擎中,我想避免使用线和单独的三角形类型。我想用三角形来画直线,其中两个角相等。但是在opengl中,这个三角形不会被显示,因为它的面积为零,因此不能覆盖一个像素。
在内部,在驱动级,opengl线使用退化三角形绘制,并且使用不同的光栅化规则,在每个扫描线至少绘制一个像素。
D3d有一些选项,你可以设置栅格化,总是在每条扫描线上画第一个像素——有效地完成了我在D3d中想要的。
但是我怎么用opengl做到这一点呢?我没有看到任何命令允许你改变光栅化规则。
我确实做到了这一点,在三个必要的顶点中,使用前两个作为线的起点,然后在线渲染对象的开始使用glPolygonMode(GL_FRONT_AND_BACK, GL_LINE)
,在结束使用glPolygonMode(GL_FRONT_AND_BACK, GL_FILL)
。
结合适当的启用和禁用面部剔除,你就得到了一个完美的线条渲染器,仍然使用三角形设置。
相关文章:
- 绘制旋转的三角形
- 绘制顺时针三角形,重新排序点
- 在顶点着色器中使用 OpenGl 的未声明标识符,我在顶点着色器中绘制三角形时遇到问题
- 是否可以使用 DirectX 3D 11 绘制由三角形组成的圆?
- OpenGL绘制三角形而不是正方形
- 在 OpenGL 中使用三角形绘制字母?
- 为什么这个在 opengl 中绘制三角形的着色器没有多次运行
- 使用 glDrawArray 函数绘制三角形
- 三角形未绘制.C++/GLEW/SDL.
- GLFW程序不绘制三角形
- OpenGL不会绘制三角形,遵循确切的格式
- 使用 C++ 库 GLEW 在 openGl 中绘制一个红色三角形
- 用OpenGL绘制三角形
- 绘制三角形时只有空白屏幕
- OpenGL绘制三角形只有白色
- 使用 OpenGL 绘制基本三角形
- 计算机图形:我自己绘制三角形
- 如何使用OSG API在Osgearth上绘制三角形
- 理解在OpenGL 3.3+内核中使用三角形绘制四边形的代码
- OpenGL:使用退化三角形绘制线条