0
A
回答
3
如果设置边缘渲染上,只需战平点1和3的三角形在相同的位置。 它效率不高,但它的工作原理。
0
如果可以,请使用几何着色器。通过两个顶点和一个线宽,通过移动顶点生成四个点,形成两个三角形,渲染并完成...但是,使用三角形绘制宽几何着色器也可以在OpenGL ES 2.0中完成(没有几何图形着色器)和仅使用顶点着色器的桌面OpenGL:
生成顶点数据,以便复制每行的顶点(每行4个顶点)。对于每个顶点,为上一行和下一行的顶点传递两个额外的vec2/vec3属性(用于计算正确的连线)或者只需传递vec2/vec3线方向。还要添加一个浮点顶点属性,该属性表示一个“正常”,即移动每个顶点的方向。对于一条线的一个端点(现在使用两个顶点),将“法线”设置为一个方向,并将重复的顶点设置为相反的方向。生成这些顶点的三角形(通过索引或其他)并使用GL_TRIANGLES进行渲染。
在顶点着色器中,使用顶点和上一个或下一个顶点来计算行方向和(在2D情况下简单)生成垂直于它的向量。乘以你作为顶点属性传递的“正常”。这会将您的线条“移到两边”,从而生成实际的三角形。生成具有正确像素尺寸的线条在2D中很简单(虽然具有均匀的缩放比例,但也可能是非均匀缩放比例) - 使用模型视图矩阵中的比例因子(例如modelView [0] [0]), )并在顶点着色器中将线宽除以它。在3D中,这涉及更多一点...
相关问题
- 1. 用Java swing绘制一条线绘制多条线
- 2. OpenGL:用VBO绘制线条
- 3. 用UIBezierPath绘制一条线
- 4. 用Dygraphs绘制无线条
- 5. 使用CGContext绘制线条
- 6. 使用asp.net绘制线条
- 7. 使用CGPath绘制线条
- 8. 用画布绘制线条
- 9. 使用UIPinchGeustureRecognizer绘制线条
- 10. 绘制直线的线条
- 11. 用多条线绘制折线图
- 12. 用曲线绘制一条线
- 13. 如何在不使用GLSL,FSAA和GL_LINE_SMOOTH的情况下绘制平滑线条?
- 14. OpenGL线条绘制工件
- 15. 绘制大量线条.net
- 16. 从UIViewController绘制一条线
- 17. 在OpenGL中绘制线条
- 18. UIBezierPath绘制线条表示
- 19. Python - 绘制大量线条
- 20. 在gtk.TextView上绘制线条
- 21. Richtextbox绘制一条rtf线
- 22. 线条绘制算法
- 23. 线条绘制效果
- 24. 绘制的线条文字
- 25. 绘制线条和GGPLOT2
- 26. Pyshp:PolyLineZ绘图在我的线条之间绘制线条
- 27. 如何用两条斜线绘制一条线使用python
- 28. 用matplotlib绘制线条(时间序列)
- 29. 使用坐标绘制一条线
- 30. Corona SDK绘制线条使用圆圈
在现代OpenGL和OpenGL ES 2.0 afaik中不可能。 – Bim 2017-06-01 08:31:21