iOS GLKit текстуры размыты на дисплее сетчатки

Я работаю с OpenGL ES 2.0 и GLKit для iOS.

Мое приложение должно работать только с разрешением 480 на 320, как в предыдущих версиях iPhone 4, так как оно использует графику в стиле ретро.

Графика текстуры выполняется в соответствии с этим разрешением и проекционной матрицей GLKit (0, 480, 0, 320).

На 3GS все это прекрасно выглядит, но на более поздних моделях OpenGL (понятно) делает какое-то изменение размера, чтобы растянуть сцену. Это изменение размера приводит к нежелательному размытию / сглаживанию графики - возможно, с использованием некоторой схемы интерполяции по умолчанию.

Можно ли повлиять на то, как это изменение размера выполняется OpenGL? Желательно установить его без интерполяции, где пиксели просто увеличиваются напрямую.

1 ответ

Решение

Вам необходимо установить фильтры масштабирования на виде, как это.

self.layer.magnificationFilter = kCAFilterNearest;
self.layer.minificationFilter = kCAFilterNearest;
Другие вопросы по тегам