glLineWidth没有生效?

时间:2011-10-17 01:36:43

标签: objective-c cocos2d-iphone

glColor4f(0.0, 1.0, 0.0, 0.8);
glLineWidth(100.0);
ccDrawCircle(ccp(240,160), 70, 0, 360, NO);

出于某种原因,正在绘制的圆的线条肯定没有100宽度。该代码在draw方法中,并且都是。有什么想法吗?

2 个答案:

答案 0 :(得分:4)

尝试查看设备支持的线宽范围:

GLint range[2];
glGetIntegerv(GL_ALIASED_LINE_WIDTH_RANGE, range);
glGetIntegerv(GL_SMOOTH_LINE_WIDTH_RANGE, range);

你只能保证1.0支持,但我知道iPhone也支持至少2.0(我知道一个着名的游戏使用2.0来渲染一个画线圈)。

答案 1 :(得分:2)

两个想法:首先,您的尺寸可能大于值的可能范围。我似乎记得读过Open GL ES实现实际上只需要支持值1.我认为iPhone可以支持1以外的值,但100可能超出其范围。

您可能还想检查是否启用了glLineSmooth,如果没有,则禁用它。但我认为这不是问题所在。