Я очень рекомендую использовать текстуры, как сказал Дейв. Это может быть чем-то вроде боли, но я думаю, что это обеспечит гораздо лучшую производительность.
Вы можете попробовать поискать алгоритмы обнаружения краев . Если вы создаете свои сетки, используя окрашивание вершин сплошными цветами и средними значениями альфа (для небольшой прозрачности), а затем используете шейдер обнаружения краев, это может выглядеть достаточно хорошо. Это было бы совсем не так, но вам это может понравиться еще больше; а может и нет.
В противном случае вы можете рассмотреть двухпроходное решение, рисуя полупрозрачные многоугольники (опять же, установите цвета вершин в сплошной цвет со средним альфа-значением), затем установите glPolygonMode (GL_LINE) и настройте glLineWidth по желанию (возможно, на основе объекта расстояние) и снова нарисуйте полигоны.
Уже немного поздно, и я с трудом читаю это, но обсуждение на форуме указывает на этот PDF: однопроходный рендеринг каркаса . Мои извинения, если это не актуально.