Почему моя шейдерная программа openGL для очков имеет артефакты группировки?

Для каждой точки моя программа шейдеров OpenGL берет его, создает красное кольцо, которое плавно переходит между непрозрачными и полностью прозрачными. Моя программа шейдеров работает, но имеет артефакты.

Фрагментный шейдер ниже.

#version 110 precision mediump float; void main() { float dist = distance(gl_PointCoord.xy, vec2(0.5, 0.5)); // Edge value is 0.5, it should be 1. // Inner most value is 0 it should stay 0. float inner_circle = 2.0 * dist; float circle = 1.0 - inner_circle; vec4 pixel = vec4(1.0, 0.0, 0.0, inner_circle * circle ); gl_FragColor = pixel; } 

Вот менее интересный шейдер вершин, который, как я думаю, не является причиной проблемы.

 #version 110 attribute vec2 aPosition; uniform float uSize; uniform vec2 uCamera; void main() { // Square the view and map the top of the screen to 1 and the bottom to -1. gl_Position = vec4(aPosition, 0.0, 1.0); gl_Position.x = gl_Position.x * uCamera.y / uCamera.x; // Set point size gl_PointSize = (uSize + 1.0) * 100.0; } 

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

PS Кстати, это для Android Acer Iconia планшета.

Android GLSurfaceView по умолчанию использует поверхность RGB565. Либо включите сглаживание ( glEnable(GL_DITHER) ), либо установите пользовательский EGLConfigChooser чтобы выбрать конфигурацию поверхности RGBA или RGBX с 8 бит на канал.

Intereting Posts
Как получить эту крест-кнопку / изображение на границе пользовательского диалогового окна? Изображения WebView не отображаются с помощью HTTPS Как оптимизировать рисование холста – drawBitmap на Android? Как отправить медиа с сервера на Android-приложение? Есть ли какой-либо эмитент частиц на Android, такой как iOS CAEmitterLayer для эмиттера окружности? Как программно заставить обнаружение услуг с низким энергопотреблением Bluetooth на Android без использования кеша Android -No найденный ресурс, который соответствует указанному имени 'android: TextAppearance.Material.Inverse' Методы работы: onCreate () и onDestroy () Тестирование проекта, который использует ActionBarSherlock Как Android обрабатывает фоновые потоки при выходе из Activity? Как добавить к моему андроидному приложению кнопку, чем понравиться на странице facebook? Изменение уникального поля таблицы Android UI Производительность значительно медленнее, чем iOS (почему?) Утечка памяти изображениями Android-приложение – как отобразить список элементов и сделать их интерактивными