【发布时间】:2016-10-06 21:56:44
【问题描述】:
在从 Geforce 切换到 Radeon 卡后,我遇到了一个奇怪的问题。
线宽是 6。问题是:如果线平行于视口的 x 或 y 轴,它的行为就好像它只有 1 个像素宽。如果这条线是一个角度,它工作正常。因此,例如,如果线从 (10, 12) 到 (110, 12) 它不起作用(平行于 x 轴),但如果它从 (10, 12) 到 (110, 13) 它正在工作很好。
正常渲染总是可以正常工作。
不同之处在于,对于颜色选择,我只渲染 1x1 视口。如果我为拾取渲染一个完整的视口,一切正常。所以我的猜测是剪辑不能正确处理这些极端情况。
将根据要求发布代码,但考虑到错误情况的具体程度,我怀疑它是否有用。有没有人遇到过这样的问题?
【问题讨论】:
-
投反对票并结束投票,但没有评论。有什么问题?
-
所以你基本上是在渲染一条线,实际的线中心在视口之外,但是由于线宽,你希望你的视口像素仍然受到它的影响吗?如果这在 Geforce 上有效,那么你就很幸运了,因为 OpenGL 的裁剪规则根本不需要它来工作。 OTOH,无论如何都不推荐使用宽线,您最好将它们绘制为矩形,这也适用于剪裁。
-
@derhass 好的。我只是觉得奇怪的是它大部分都在工作,除了在这个看似特定的情况下。谢谢。
标签: opengl