glLineWidth(0.5);和glLineWidth(1);效果一样,最大好像也不超过10,也就是说glLineWidth(12);或者大于10的时候和10是一样的,获取了一下支持的增量为0.125,为什么不支持。反正很乱,是不是和硬件支持有关?请指教

解决方案 »

  1.   

    取了一下支持的线宽范围,居然是0.5-10。而且只有glEnable(GL_LINE_SMOOTH);开启反走样后,设置的小树值才起作用,否则四舍五入处理。那怎么才能修改线宽范围呢?0.5-10的范围太小了
      

  2.   

    不开启反走样,怎么显示0.5个像素?线宽范围可以用glGet(GL_LINE_WIDTH_RANGE);查询;线宽变化量(梯度)可以用glGet(GL_LINE_WIDTH_GRANULARITY);查询。
      

  3.   

    怎么查询我知道,就是不知道能不能设置这个范围,如果实在不能设置,那就没办法了,那只能说明这是OpenGl中的一个大缺陷了
      

  4.   

    就怕谁说这个。GDI函数都支持很宽的线宽啊,OpenGL为什么只支持到10?想不通啊