glLineWidth не вступает в силу? - PullRequest
1 голос
/ 17 октября 2011
glColor4f(0.0, 1.0, 0.0, 0.8);
glLineWidth(100.0);
ccDrawCircle(ccp(240,160), 70, 0, 360, NO);

По какой-то причине нарисованная круговая линия определенно не имеет ширины 100.Этот код находится внутри метода draw и всего.Есть идеи?

Ответы [ 2 ]

4 голосов
/ 17 октября 2011

Попробуйте посмотреть, какой диапазон поддерживает устройство для ширины линии:

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

Вы гарантированно поддержите только 1.0, но я знаю, что iPhone поддерживает также как минимум 2.0 (я знаю,широко известная игра, использующая 2.0 для рендеринга нарисованной линии окружности).

2 голосов
/ 17 октября 2011

Две мысли: во-первых, ваш размер может быть больше, чем возможные диапазоны для значения. Кажется, я вспомнил, что читал, что реализация Open GL ES на самом деле должна поддерживать только значение 1. Я думаю, что iPhone может поддерживать значения, отличные от 1, но 100 может быть вне его диапазона.

Вы также можете проверить, включен ли glLineSmooth и, если нет, отключить его. Но я не думаю, что это проблема здесь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...